1 package com.atlassian.user.impl.ldap.repository;
2
3 import com.atlassian.user.impl.RepositoryException;
4
5 import javax.naming.directory.DirContext;
6 import javax.naming.directory.InitialDirContext;
7 import java.util.Hashtable;
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public interface LdapContextFactory
23 {
24
25
26 public static final String HOST = "host";
27 public static final String PORT = "port";
28 public static final String SECURITY_PRINCIPAL = "securityPrincipal";
29 public static final String SECURITY_CREDENTIAL = "securityCredential";
30 public static final String SECURITY_AUTHENTICATION = "securityAuthentication";
31 public static final String PROVIDER_URL = "providerURL";
32 public static final String JNDI_INITIAL_CONTEXT_FACTORY = "initialContextFactory";
33 public static final String BATCH_SIZE = "batchSize";
34 public static final String SECURITY_PROTOCOL = "securityProtocol";
35 public static final String TIME_TO_LIVE = "timeToLive";
36
37
38 public static final String BASE_USER_NAMESPACE = "baseUserNamespace";
39 public static final String BASE_GROUP_NAMESPACE = "baseGroupNamespace";
40 public static final String USERNAME_ATTRIBUTE = "usernameAttribute";
41 public static final String GROUPNAME_ATTRIBUTE = "groupnameAttribute";
42 public static final String FIRSTNAME_ATTRIBUTE = "firstnameAttribute";
43 public static final String PASSWORD_ATTRIBUTE = "passwordAttribute";
44 public static final String SURNAME_ATTRIBUTE = "surnameAttribute";
45 public static final String EMAIL_ATTRIBUTE = "emailAttribute";
46 public static final String MEMBERSHIP_ATTRIBUTE = "membershipAttribute";
47 public static final String USER_SEARCH_ALL_DEPTHS = "userSearchAllDepths";
48 public static final String GROUP_SEARCH_ALL_DEPTHS = "groupSearchAllDepths";
49 public static final String GROUP_SEARCH_FILTER = "groupSearchFilter";
50 public static final String USER_SEARCH_FILTER = "userSearchFilter";
51 public static final String USE_UNQUALIFIED_USER_NAME_FOR_MEMBERSHIP_COMPARISON = "useUnqualifiedUsernameForMembershipComparison";
52
53
54
55
56
57
58 Hashtable getJNDIEnv();
59
60
61
62
63
64 Hashtable getAuthenticationJndiEnvironment(String userDN, String password);
65
66
67
68
69
70
71
72 DirContext getLDAPContext() throws RepositoryException;
73 }