use of org.wso2.carbon.identity.application.authentication.framework.LocalApplicationAuthenticator in project identity-outbound-auth-sms-otp by wso2-extensions.
the class SMSOTPAuthenticator method processFirstStepOnly.
/**
* In SMSOTP optional case proceed with first step only.It can be basic or federated.
*
* @param authenticatedUser the name of authenticatedUser
* @param context the AuthenticationContext
*/
private void processFirstStepOnly(AuthenticatedUser authenticatedUser, AuthenticationContext context) {
if (log.isDebugEnabled()) {
log.debug("Processing First step only. Skipping SMSOTP");
}
// the authentication flow happens with basic authentication.
StepConfig stepConfig = context.getSequenceConfig().getStepMap().get(context.getCurrentStep() - 1);
if (stepConfig.getAuthenticatedAutenticator().getApplicationAuthenticator() instanceof LocalApplicationAuthenticator) {
if (log.isDebugEnabled()) {
log.debug("Found local authenticator in previous step. Hence setting a local user");
}
FederatedAuthenticatorUtil.updateLocalAuthenticatedUserInStepConfig(context, authenticatedUser);
context.setProperty(SMSOTPConstants.AUTHENTICATION, SMSOTPConstants.BASIC);
} else {
if (log.isDebugEnabled()) {
log.debug("Found federated authenticator in previous step. Hence setting a local user");
}
FederatedAuthenticatorUtil.updateAuthenticatedUserInStepConfig(context, authenticatedUser);
context.setProperty(SMSOTPConstants.AUTHENTICATION, SMSOTPConstants.FEDERETOR);
}
}
Aggregations