1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package net.sf.michaelo.tomcat.realm;
17
18 import java.security.Principal;
19 import java.security.cert.X509Certificate;
20
21 import org.apache.catalina.realm.RealmBase;
22 import org.apache.juli.logging.Log;
23 import org.apache.juli.logging.LogFactory;
24 import org.apache.tomcat.util.res.StringManager;
25 import org.ietf.jgss.GSSContext;
26 import org.ietf.jgss.GSSName;
27
28
29
30
31
32 public abstract class ActiveDirectoryRealmBase extends RealmBase {
33
34 protected final Log logger = LogFactory.getLog(getClass());
35 protected final StringManager sm = StringManager.getManager(getClass());
36
37
38 @Override
39 protected String getPassword(String username) {
40
41 return null;
42 }
43
44
45 @Override
46 protected Principal getPrincipal(String username) {
47 throw new UnsupportedOperationException("getPrincipal(String) is not supported by this realm");
48 }
49
50 @Override
51 protected boolean hasRoleInternal(Principal principal, String role) {
52 if (!(principal instanceof ActiveDirectoryPrincipal)) return false;
53
54 ActiveDirectoryPrincipal adp = (ActiveDirectoryPrincipal) principal;
55 return adp.hasRole(role);
56 }
57 }