/** * Authenticate the user in the supplied request. * * @param request authentication request * * @return response containing the ldap entry of the user authenticated * * @throws LdapException if an LDAP error occurs */ public AuthenticationResponse authenticate(final AuthenticationRequest request) throws LdapException { return authenticate(resolveDn(request.getUser()), request); }
/** * Authenticate the user in the supplied request. * * @param request authentication request * * @return response containing the ldap entry of the user authenticated * * @throws LdapException if an LDAP error occurs */ public AuthenticationResponse authenticate(final AuthenticationRequest request) throws LdapException { return authenticate(resolveDn(request.getUser()), request); }
/** * Authenticate the user in the supplied request. * * @param request authentication request * * @return response containing the ldap entry of the user authenticated * * @throws LdapException if an LDAP error occurs */ public AuthenticationResponse authenticate(final AuthenticationRequest request) throws LdapException { return authenticate(resolveDn(request.getUser()), request); }
@Override public void handle(final String dn, final AuthenticationRequest request) throws LdapException { final RequestControl[] ctls = controlFactory.getControls(dn, request.getUser()); logger.trace("{} produced controls {}", controlFactory, Arrays.toString(ctls)); if (ctls != null && ctls.length > 0) { if (request.getControls() != null && request.getControls().length > 0) { request.setControls(LdapUtils.concatArrays(request.getControls(), ctls)); } else { request.setControls(ctls); } } }
/** * Initialize an authentication request with command line options. * * @param line parsed command line arguments * * @return authentication request that has been initialized */ protected AuthenticationRequest initAuthenticationRequest(final CommandLine line) { final AuthenticationRequest request = new AuthenticationRequest(); final AuthenticationRequestPropertySource arSource = new AuthenticationRequestPropertySource( request, getPropertiesFromOptions(PropertyDomain.AUTH.value(), line)); arSource.initialize(); if (request.getUser() == null) { // prompt for a user name final String user = System.console().readLine("[Enter user name]: "); request.setUser(user); } if (request.getCredential() == null) { // prompt the user to enter a password final char[] pass = System.console().readPassword("[Enter password for %s]: ", request.getUser()); request.setCredential(new Credential(pass)); } return request; }
/** * Initialize an authentication request with command line options. * * @param line parsed command line arguments * * @return authentication request that has been initialized */ protected AuthenticationRequest initAuthenticationRequest(final CommandLine line) { final AuthenticationRequest request = new AuthenticationRequest(); final AuthenticationRequestPropertySource arSource = new AuthenticationRequestPropertySource( request, getPropertiesFromOptions(PropertyDomain.AUTH.value(), line)); arSource.initialize(); if (request.getUser() == null) { // prompt for a user name final String user = System.console().readLine("[Enter user name]: "); request.setUser(new User(user)); } if (request.getCredential() == null) { // prompt the user to enter a password final char[] pass = System.console().readPassword("[Enter password for %s]: ", request.getUser()); request.setCredential(new Credential(pass)); } return request; }
@Override public void handle(final String dn, final AuthenticationRequest request) throws LdapException { final RequestControl[] ctls = controlFactory.getControls(dn, request.getUser()); logger.trace("{} produced controls {}", controlFactory, Arrays.toString(ctls)); if (ctls != null && ctls.length > 0) { if (request.getControls() != null && request.getControls().length > 0) { request.setControls(LdapUtils.concatArrays(request.getControls(), ctls)); } else { request.setControls(ctls); } } }
/** * Initialize an authentication request with command line options. * * @param line parsed command line arguments * * @return authentication request that has been initialized */ protected AuthenticationRequest initAuthenticationRequest(final CommandLine line) { final AuthenticationRequest request = new AuthenticationRequest(); final AuthenticationRequestPropertySource arSource = new AuthenticationRequestPropertySource( request, getPropertiesFromOptions(PropertyDomain.AUTH.value(), line)); arSource.initialize(); if (request.getUser() == null) { // prompt for a user name final String user = System.console().readLine("[Enter user name]: "); request.setUser(new User(user)); } if (request.getCredential() == null) { // prompt the user to enter a password final char[] pass = System.console().readPassword("[Enter password for %s]: ", request.getUser()); request.setCredential(new Credential(pass)); } return request; }
/** * Returns a search filter using {@link #userFilter} and {@link #userFilterParameters}. {@link * AuthenticationRequest#getUser()} is injected with a named parameter of 'user', {@link * AuthenticationCriteria#getDn()} is injected with a named parameter of 'dn'. * * @param ac authentication criteria * * @return search filter */ protected SearchFilter createSearchFilter(final AuthenticationCriteria ac) { final SearchFilter filter = new SearchFilter(); if (userFilter != null) { logger.debug("searching for entry using userFilter"); filter.setFilter(userFilter); if (userFilterParameters != null) { filter.setParameters(userFilterParameters); } // assign named parameters filter.setParameter("user", ac.getAuthenticationRequest().getUser()); filter.setParameter("dn", ac.getDn()); } else { logger.error("Invalid userFilter, cannot be null or empty."); } return filter; }
/** * Returns a search filter using {@link #userFilter} and {@link #userFilterParameters}. {@link * User#getIdentifier()} is injected with a named parameter of 'user', {@link User#getContext()} is injected with a * named parameter of 'context', and {@link AuthenticationCriteria#getDn()} is injected with a named parameter of * 'dn'. * * @param ac authentication criteria * * @return search filter */ protected SearchFilter createSearchFilter(final AuthenticationCriteria ac) { final SearchFilter filter = new SearchFilter(); if (userFilter != null) { logger.debug("searching for entry using userFilter"); filter.setFilter(userFilter); if (userFilterParameters != null) { filter.setParameters(userFilterParameters); } // assign named parameters filter.setParameter("user", ac.getAuthenticationRequest().getUser().getIdentifier()); filter.setParameter("context", ac.getAuthenticationRequest().getUser().getContext()); filter.setParameter("dn", ac.getDn()); } else { logger.error("Invalid userFilter, cannot be null or empty."); } return filter; }
/** * Returns a search filter using {@link #userFilter} and {@link #userFilterParameters}. {@link * User#getIdentifier()} is injected with a named parameter of 'user', {@link User#getContext()} is injected with a * named parameter of 'context', and {@link AuthenticationCriteria#getDn()} is injected with a named parameter of * 'dn'. * * @param ac authentication criteria * * @return search filter */ protected SearchFilter createSearchFilter(final AuthenticationCriteria ac) { final SearchFilter filter = new SearchFilter(); if (userFilter != null) { logger.debug("searching for entry using userFilter"); filter.setFilter(userFilter); if (userFilterParameters != null) { filter.setParameters(userFilterParameters); } // assign named parameters filter.setParameter("user", ac.getAuthenticationRequest().getUser().getIdentifier()); filter.setParameter("context", ac.getAuthenticationRequest().getUser().getContext()); filter.setParameter("dn", ac.getDn()); } else { logger.error("Invalid userFilter, cannot be null or empty."); } return filter; }
/** * Returns an authentication request initialized with the supplied request. * * @param request authentication request to read properties from * * @return authentication request */ public static AuthenticationRequest newAuthenticationRequest(final AuthenticationRequest request) { final AuthenticationRequest r = new AuthenticationRequest(); r.setUser(request.getUser()); r.setCredential(request.getCredential()); r.setReturnAttributes(request.getReturnAttributes()); r.setControls(request.getControls()); return r; }
/** * Returns an authentication request initialized with the supplied request. * * @param request authentication request to read properties from * * @return authentication request */ public static AuthenticationRequest newAuthenticationRequest(final AuthenticationRequest request) { final AuthenticationRequest r = new AuthenticationRequest(); r.setUser(request.getUser()); r.setCredential(request.getCredential()); r.setReturnAttributes(request.getReturnAttributes()); r.setControls(request.getControls()); return r; }