1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24#ifndef __com_sun_star_auth_XSSOManager_idl__
25#define __com_sun_star_auth_XSSOManager_idl__
26
27#ifndef __com_sun_star_uno_XInterface_idl__
28#include <com/sun/star/uno/XInterface.idl>
29#endif
30
31#ifndef __com_sun_star_auth_InvalidArgumentException_idl__
32#include <com/sun/star/auth/InvalidArgumentException.idl>
33#endif
34
35#ifndef __com_sun_star_auth_SSOExceptions_idl__
36#include <com/sun/star/auth/SSOExceptions.idl>
37#endif
38
39#ifndef __com_sun_star_auth_XSSOAcceptorContext_idl__
40#include <com/sun/star/auth/XSSOAcceptorContext.idl>
41#endif
42
43#ifndef __com_sun_star_auth_XSSOInitiatorContext_idl__
44#include <com/sun/star/auth/XSSOInitiatorContext.idl>
45#endif
46
47module com { module sun { module star { module auth {
48
49/** supports the creation of security contexts for both
50	the initiator/source side and the acceptor/target side.
51
52    @since OpenOffice 1.1.2
53 */
54published interface XSSOManager : ::com::sun::star::uno::XInterface
55{
56	/** retrieves the mechanism name of all security contexts created using
57        this manager.
58
59        @returns
60        the mechanism name ( e.g. "KERBEROS" )
61	 */
62	string					getMechanism();
63
64
65	/** creates an initiator side security context.
66
67		@param SourcePrincipal
68		the name of the initiator side principal for which the context
69		will be created.
70
71		@param TargetPrincipal
72		the name of the target/acceptor side principal to which the source
73		principal intends to authenticate.
74
75		@param TargetHost
76		the host name associated with the target principal.
77
78		@returns
79		the newly created initiator context.
80	 */
81	XSSOInitiatorContext	createInitiatorContext(
82								[in] string	SourcePrincipal,
83								[in] string	TargetPrincipal,
84								[in] string	TargetHost )
85									raises( InvalidArgumentException,
86											InvalidCredentialException,
87											InvalidPrincipalException,
88											UnsupportedException );
89
90
91	/** creates an acceptor side security context.
92
93		@param TargetPrincipal
94		the name of the acceptor side principal.
95
96		@returns
97		the newly created acceptor side context.
98	 */
99	XSSOAcceptorContext		createAcceptorContext(
100								[in] string	TargetPrincipal )
101									raises( InvalidArgumentException,
102											InvalidCredentialException,
103											InvalidPrincipalException,
104											UnsupportedException );
105};
106
107}; }; }; };
108
109#endif
110