]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
d635916efb3e70a43521081e56153d62008ca3b5
[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  * To change this template, choose Tools | Templates
26  * and open the template in the editor.
27  */
28
29 package org.collectionspace.authentication.realm;
30
31 import java.security.acl.Group;
32 import java.util.Collection;
33 import javax.security.auth.login.LoginException;
34
35 /**
36  * CSpaceRealm defines interface for CollectionSpace Realm
37  */
38 public interface CSpaceRealm {
39
40         /**
41      * Obtain password for the given user
42      * @param username
43      * @return
44      * @throws LoginException
45      */
46     public String getUsersPassword(String username) throws LoginException;
47
48     /**
49      * Obtain the roles for the authenticated user.
50      * @return collection containing the roles
51      */
52     public Collection<Group> getRoles(String username, String principalClassName, String groupClassName) throws LoginException;
53
54     /**
55      * Obtain the tenants for the authenticated user.
56      * @return collection containing the roles
57      */
58     public Collection<Group> getTenants(String username, String groupClassName) throws LoginException;
59
60 }