/** Creates a new compare validator. */ public CompareValidator() { compareRequest = new CompareRequest(); compareRequest.setDn(""); compareRequest.setAttribute(new LdapAttribute("objectClass", "top")); }
/** Creates a new compare validator. */ public CompareValidator() { compareRequest = new CompareRequest(); compareRequest.setDn(""); compareRequest.setAttribute(new LdapAttribute("objectClass", "top")); }
/** Creates a new compare validator. */ public CompareValidator() { compareRequest = new CompareRequest(); compareRequest.setDn(""); compareRequest.setAttribute(new LdapAttribute("objectClass", "top")); }
/** * Request test data. * * @return test data */ @DataProvider(name = "requests") public Object[][] createRequests() { return new Object[][] { new Object[] { new CompareRequest(null, null), "attribute=null", }, new Object[] { new CompareRequest(null, new LdapAttribute()), "attribute=[null[]]", }, new Object[] { new CompareRequest(null, new LdapAttribute("name", "value")), "attribute=[name[value]]", }, new Object[] { new CompareRequest(null, new LdapAttribute("userPassword", "password")), "attribute=<suppressed>", }, }; }
/** * Executes the ldap compare operation. * * @param cf connection factory * @param dn to compare attribute on * @param attr attribute to compare * * @return status code * * @throws Exception on any LDAP search error */ protected int compare(final ConnectionFactory cf, final String dn, final LdapAttribute attr) throws Exception { final Connection conn = cf.getConnection(); conn.open(); final CompareOperation op = new CompareOperation(conn); final Response<Boolean> response = op.execute(new CompareRequest(dn, attr)); System.out.println(response.getResult()); conn.close(); return response.getResultCode().value(); }
/** * Executes the ldap compare operation. * * @param cf connection factory * @param dn to compare attribute on * @param attr attribute to compare * * @return status code * * @throws Exception on any LDAP search error */ protected int compare(final ConnectionFactory cf, final String dn, final LdapAttribute attr) throws Exception { final Connection conn = cf.getConnection(); conn.open(); final CompareOperation op = new CompareOperation(conn); final Response<Boolean> response = op.execute(new CompareRequest(dn, attr)); System.out.println(response.getResult()); conn.close(); return response.getResultCode().value(); }
/** * Executes the ldap compare operation. * * @param cf connection factory * @param dn to compare attribute on * @param attr attribute to compare * * @return status code * * @throws Exception on any LDAP search error */ protected int compare(final ConnectionFactory cf, final String dn, final LdapAttribute attr) throws Exception { final Connection conn = cf.getConnection(); conn.open(); final CompareOperation op = new CompareOperation(conn); final Response<Boolean> response = op.execute(new CompareRequest(dn, attr)); System.out.println(response.getResult()); conn.close(); return response.getResultCode().value(); }
@Override protected AuthenticationHandlerResponse authenticateInternal( final Connection c, final AuthenticationCriteria criteria) throws LdapException { byte[] hash; try { final MessageDigest md = MessageDigest.getInstance(passwordScheme); md.update(criteria.getCredential().getBytes()); hash = md.digest(); } catch (NoSuchAlgorithmException e) { throw new LdapException(e); } final LdapAttribute la = new LdapAttribute( "userPassword", String.format("{%s}%s", passwordScheme, LdapUtils.base64Encode(hash)).getBytes()); final CompareOperation compare = new CompareOperation(c); final CompareRequest request = new CompareRequest(criteria.getDn(), la); request.setControls(getAuthenticationControls()); final Response<Boolean> compareResponse = compare.execute(request); return new AuthenticationHandlerResponse( compareResponse.getResult(), compareResponse.getResultCode(), c, compareResponse.getMessage(), compareResponse.getControls(), compareResponse.getMessageId()); }
@Override protected AuthenticationHandlerResponse authenticateInternal( final Connection c, final AuthenticationCriteria criteria) throws LdapException { final byte[] hash = digestCredential(criteria.getCredential(), passwordScheme.getAlgorithm()); final LdapAttribute la = new LdapAttribute( passwordAttribute, String.format("{%s}%s", passwordScheme.getLabel(), LdapUtils.base64Encode(hash)).getBytes()); final CompareOperation compare = new CompareOperation(c); final CompareRequest request = new CompareRequest(criteria.getDn(), la); request.setControls(processRequestControls(criteria)); final Response<Boolean> compareResponse = compare.execute(request); return new AuthenticationHandlerResponse( compareResponse.getResult(), compareResponse.getResultCode(), c, compareResponse.getMessage(), compareResponse.getControls(), compareResponse.getMessageId()); }
@Override protected AuthenticationHandlerResponse authenticateInternal( final Connection c, final AuthenticationCriteria criteria) throws LdapException { final byte[] hash = digestCredential(criteria.getCredential(), passwordScheme.getAlgorithm()); final LdapAttribute la = new LdapAttribute( passwordAttribute, String.format("{%s}%s", passwordScheme.getLabel(), LdapUtils.base64Encode(hash)).getBytes()); final CompareOperation compare = new CompareOperation(c); final CompareRequest request = new CompareRequest(criteria.getDn(), la); request.setControls(processRequestControls(criteria)); final Response<Boolean> compareResponse = compare.execute(request); return new AuthenticationHandlerResponse( compareResponse.getResult(), compareResponse.getResultCode(), c, compareResponse.getMessage(), compareResponse.getControls(), compareResponse.getMessageId()); }
@Override protected CompareRequest createReferralRequest(final CompareRequest request, final LdapURL url) { final CompareRequest referralRequest = new CompareRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new CompareReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } referralRequest.setAttribute(request.getAttribute()); return referralRequest; }
@Override protected CompareRequest createReferralRequest(final CompareRequest request, final LdapURL url) { final CompareRequest referralRequest = new CompareRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new CompareReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } referralRequest.setAttribute(request.getAttribute()); return referralRequest; }
@Override protected CompareRequest createReferralRequest(final CompareRequest request, final LdapURL url) { final CompareRequest referralRequest = new CompareRequest(); referralRequest.setControls(request.getControls()); referralRequest.setIntermediateResponseHandlers(request.getIntermediateResponseHandlers()); referralRequest.setReferralHandler( new CompareReferralHandler(getReferralLimit(), getReferralDepth() + 1, getReferralConnectionFactory())); if (!url.getEntry().isDefaultBaseDn()) { referralRequest.setDn(url.getEntry().getBaseDn()); } else { referralRequest.setDn(request.getDn()); } referralRequest.setAttribute(request.getAttribute()); return referralRequest; }