]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
2dc88742acb72bc303358de00300abcd9e6bf9e5
[tmp/jakarta-migration.git] /
1 /**
2  *  This document is a part of the source code and related artifacts
3  *  for CollectionSpace, an open source collections management system
4  *  for museums and related institutions:
5
6  *  http://www.collectionspace.org
7  *  http://wiki.collectionspace.org
8
9  *  Copyright 2009 University of California at Berkeley
10
11  *  Licensed under the Educational Community License (ECL), Version 2.0.
12  *  You may not use this file except in compliance with this License.
13
14  *  You may obtain a copy of the ECL 2.0 License at
15
16  *  https://source.collectionspace.org/collection-space/LICENSE.txt
17
18  *  Unless required by applicable law or agreed to in writing, software
19  *  distributed under the License is distributed on an "AS IS" BASIS,
20  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  *  See the License for the specific language governing permissions and
22  *  limitations under the License.
23 .
24  */
25 package org.collectionspace.authentication.spi;
26
27 import javax.security.auth.Subject;
28 import org.collectionspace.authentication.CSpaceTenant;
29
30 /**
31  * Utilities to be used by Services runtime to interface with authentication service
32  * @author 
33  */
34 public abstract class AuthNContext {
35
36     /**
37      * getUserId returns authenticated user id
38      * @return
39      */
40     public abstract String getUserId();
41
42     /**
43      * getTenantIds get tenant ids from the tenant context associated with the
44      * security context
45      * @return
46      */
47     public abstract String[] getTenantIds();
48
49     /**
50      * getCurrentTenantId get id of the tenant associated with the authenticated user
51      * @return
52      */
53     public abstract String getCurrentTenantId();
54
55     /**
56      * getCurrentTenantName get name of the tenant associated with the authenticated user
57      * @return
58      */
59     public abstract String getCurrentTenantName();
60
61     /**
62      * getTenants get tenant context associated with the security context
63      * @see CSpaceTenant
64      * @return
65      */
66     public abstract CSpaceTenant[] getTenants();
67
68     /**
69      * getSubject retrieves security context as Subject
70      * @see javax.security.auth.Subject
71      */
72     public abstract Subject getSubject();
73 }