use of org.apereo.cas.authentication.support.password.DefaultPasswordPolicyHandlingStrategy in project cas by apereo.
the class LdapUtils method createLdapPasswordPolicyHandlingStrategy.
/**
* Create ldap password policy handling strategy.
*
* @param l the lDAP properties
* @param applicationContext the application context
* @return the authentication password policy handling strategy
*/
public static AuthenticationPasswordPolicyHandlingStrategy<AuthenticationResponse, PasswordPolicyContext> createLdapPasswordPolicyHandlingStrategy(final LdapAuthenticationProperties l, final ApplicationContext applicationContext) {
if (l.getPasswordPolicy().getStrategy() == LdapPasswordPolicyProperties.PasswordPolicyHandlingOptions.REJECT_RESULT_CODE) {
LOGGER.debug("Created LDAP password policy handling strategy based on blocked authentication result codes");
return new RejectResultCodeLdapPasswordPolicyHandlingStrategy();
}
val location = l.getPasswordPolicy().getGroovy().getLocation();
if (l.getPasswordPolicy().getStrategy() == LdapPasswordPolicyProperties.PasswordPolicyHandlingOptions.GROOVY && location != null) {
LOGGER.debug("Created LDAP password policy handling strategy based on Groovy script [{}]", location);
return new GroovyPasswordPolicyHandlingStrategy(location, applicationContext);
}
LOGGER.debug("Created default LDAP password policy handling strategy");
return new DefaultPasswordPolicyHandlingStrategy();
}
use of org.apereo.cas.authentication.support.password.DefaultPasswordPolicyHandlingStrategy in project cas by apereo.
the class CoreAuthenticationUtils method newPasswordPolicyHandlingStrategy.
/**
* New password policy handling strategy.
*
* @param properties the properties
* @param applicationContext the application context
* @return the authentication password policy handling strategy
*/
public static AuthenticationPasswordPolicyHandlingStrategy newPasswordPolicyHandlingStrategy(final PasswordPolicyProperties properties, final ApplicationContext applicationContext) {
if (properties.getStrategy() == PasswordPolicyProperties.PasswordPolicyHandlingOptions.REJECT_RESULT_CODE) {
LOGGER.debug("Created password policy handling strategy based on blocked authentication result codes");
return new RejectResultCodePasswordPolicyHandlingStrategy<>();
}
val location = properties.getGroovy().getLocation();
if (properties.getStrategy() == PasswordPolicyProperties.PasswordPolicyHandlingOptions.GROOVY && location != null) {
LOGGER.debug("Created password policy handling strategy based on Groovy script [{}]", location);
return new GroovyPasswordPolicyHandlingStrategy<>(location, applicationContext);
}
LOGGER.trace("Created default password policy handling strategy");
return new DefaultPasswordPolicyHandlingStrategy<>();
}
Aggregations