Java源码示例:com.unboundid.ldap.sdk.BindResult

示例1
boolean authenticate(final LDAPConnection ldap, final String userDN, final String password) throws LDAPException {
    final BindResult bindResult = ldap.bind(userDN, password);
    if (bindResult.getResultCode().equals(ResultCode.SUCCESS)) {
        LOG.debug("Login successful: " + userDN); // don't expose user names at successful login as this is a security issue
        return true;
    } else {
        LOG.warn("Access denied: " + userDN);
        return false;
    }
}
 
示例2
private LDAPConnection someLdapConnectionReturning(final ResultCode resultCode) throws LDAPException {
    final LDAPConnection ldap = mock(LDAPConnection.class);
    final BindResult mockBindResult = mock(BindResult.class);
    when(mockBindResult.getResultCode()).thenReturn(resultCode);
    when(ldap.bind(anyString(), anyString())).thenReturn(mockBindResult);
    return ldap;
}
 
示例3
private LDAPConnection someLdapConnectionReturningSuccessOrThrowingBindException(final String bindDnSuccess, final String bindDnException) throws LDAPException {
    final LDAPConnection ldap = mock(LDAPConnection.class);

    final BindResult mockBindResultSuccess = mock(BindResult.class);
    when(mockBindResultSuccess.getResultCode()).thenReturn(ResultCode.SUCCESS);
    when(ldap.bind(contains(bindDnSuccess), anyString())).thenReturn(mockBindResultSuccess);

    final BindResult mockBindResultInvalid = mock(BindResult.class);
    when(mockBindResultInvalid.getResultCode()).thenReturn(ResultCode.INVALID_CREDENTIALS);
    final LDAPBindException mockBindException = mock(LDAPBindException.class);
    when(mockBindException.getBindResult()).thenReturn(mockBindResultInvalid);
    when(ldap.bind(contains(bindDnException), anyString())).thenThrow(mockBindException);
    return ldap;
}
 
示例4
@Test
public void testInMemBind() throws Exception {
	String user = "cn=test,dc=staticsecurity,dc=geomajas,dc=org";
	LDAPConnection connection = new LDAPConnection("localhost", PORT);

	BindResult auth = connection.bind(user, "cred");
	System.out.println("auth " + auth);
	System.out.println("  rc " + auth.getResultCode());
	System.out.println("  cu " + auth.getResultCode().isConnectionUsable());
	System.out.println("  dn " + auth.getMatchedDN());
	System.out.println("  dm " + auth.getDiagnosticMessage());

	SearchRequest request = new SearchRequest(user,
			SearchScope.ONE, Filter.createEqualityFilter("objectclass", "person"),
			"cn", "groupMembership", "givenName", "sn", "ou");
	SearchResult search = connection.search(request);
	System.out.println(search);
	System.out.println("count " + search.getEntryCount());
	System.out.println("count " + search.getSearchEntries());
	for (SearchResultEntry se : search.getSearchEntries()) {
		System.out.println("-- cn " + se.getAttributeValue("cn"));
		System.out.println("   givenName " + se.getAttributeValue("givenName"));
		System.out.println("   sn " + se.getAttributeValue("sn"));
		System.out.println("   ou " + se.getAttributeValue("ou"));
		System.out.println("   groupMembership ");
		if (null != se.getAttributeValues("groupMembership")) {
			for (String val : se.getAttributeValues("groupMembership")) {
				System.out.println("      " + val);
			}
		}
	}
}