Search in sources :

Example 1 with FactorProvider

use of com.okta.authn.sdk.resource.FactorProvider in project cerberus by Nike-Inc.

the class InitialLoginStateHandlerTest method handleMfaEnroll.

@Test
public void handleMfaEnroll() throws Exception {
    String email = "email";
    String id = "id";
    AuthStatus expectedStatus = AuthStatus.MFA_REQUIRED;
    FactorProvider provider = FactorProvider.OKTA;
    FactorType type = FactorType.TOKEN_SOFTWARE_TOTP;
    String deviceId = "device id";
    String status = "status";
    AuthenticationResponse expectedResponse = mock(AuthenticationResponse.class);
    User user = mock(User.class);
    when(user.getId()).thenReturn(id);
    when(user.getLogin()).thenReturn(email);
    when(expectedResponse.getUser()).thenReturn(user);
    DefaultFactor factor = mock(DefaultFactor.class);
    when(factor.getType()).thenReturn(type);
    when(factor.getProvider()).thenReturn(provider);
    when(factor.getStatus()).thenReturn(status);
    when(factor.getId()).thenReturn(deviceId);
    when(expectedResponse.getFactors()).thenReturn(Lists.newArrayList(factor));
    // do the call
    initialLoginStateHandler.handleMfaEnroll(expectedResponse);
    AuthResponse actualResponse = authenticationResponseFuture.get(1, TimeUnit.SECONDS);
    // verify results
    assertEquals(id, actualResponse.getData().getUserId());
    assertEquals(email, actualResponse.getData().getUsername());
    assertEquals(expectedStatus, actualResponse.getStatus());
}
Also used : User(com.okta.authn.sdk.resource.User) AuthStatus(com.nike.cerberus.auth.connector.AuthStatus) DefaultFactor(com.okta.authn.sdk.impl.resource.DefaultFactor) FactorType(com.okta.authn.sdk.resource.FactorType) AuthenticationResponse(com.okta.authn.sdk.resource.AuthenticationResponse) FactorProvider(com.okta.authn.sdk.resource.FactorProvider) AuthResponse(com.nike.cerberus.auth.connector.AuthResponse) Test(org.junit.Test)

Example 2 with FactorProvider

use of com.okta.authn.sdk.resource.FactorProvider in project cerberus by Nike-Inc.

the class AbstractOktaStateHandler method isPush.

/**
 * Determines whether a trigger is required for a provided MFA factor
 *
 * @param factor Okta MFA factor
 * @return boolean trigger required
 */
public boolean isPush(Factor factor) {
    final FactorType type = factor.getType();
    final FactorProvider provider = factor.getProvider();
    return (provider.equals(FactorProvider.OKTA) && type == FactorType.PUSH);
}
Also used : FactorType(com.okta.authn.sdk.resource.FactorType) FactorProvider(com.okta.authn.sdk.resource.FactorProvider)

Example 3 with FactorProvider

use of com.okta.authn.sdk.resource.FactorProvider in project cerberus by Nike-Inc.

the class AbstractOktaStateHandlerTest method getDeviceNameOktaSms.

@Test
public void getDeviceNameOktaSms() {
    FactorProvider provider = FactorProvider.OKTA;
    FactorType type = FactorType.SMS;
    DefaultFactor factor = mock(DefaultFactor.class);
    when(factor.getType()).thenReturn(type);
    when(factor.getProvider()).thenReturn(provider);
    String result = this.abstractOktaStateHandler.getDeviceName(factor);
    assertEquals("Okta Text Message Code", result);
}
Also used : DefaultFactor(com.okta.authn.sdk.impl.resource.DefaultFactor) FactorType(com.okta.authn.sdk.resource.FactorType) FactorProvider(com.okta.authn.sdk.resource.FactorProvider) Test(org.junit.Test)

Example 4 with FactorProvider

use of com.okta.authn.sdk.resource.FactorProvider in project cerberus by Nike-Inc.

the class AbstractOktaStateHandlerTest method getDeviceNameGoogleTotp.

@Test
public void getDeviceNameGoogleTotp() {
    FactorProvider provider = FactorProvider.GOOGLE;
    FactorType type = FactorType.TOKEN_SOFTWARE_TOTP;
    DefaultFactor factor = mock(DefaultFactor.class);
    when(factor.getType()).thenReturn(type);
    when(factor.getProvider()).thenReturn(provider);
    String result = this.abstractOktaStateHandler.getDeviceName(factor);
    assertEquals("Google Authenticator", result);
}
Also used : DefaultFactor(com.okta.authn.sdk.impl.resource.DefaultFactor) FactorType(com.okta.authn.sdk.resource.FactorType) FactorProvider(com.okta.authn.sdk.resource.FactorProvider) Test(org.junit.Test)

Example 5 with FactorProvider

use of com.okta.authn.sdk.resource.FactorProvider in project cerberus by Nike-Inc.

the class AbstractOktaStateHandlerTest method getDeviceNameOktaPush.

@Test
public void getDeviceNameOktaPush() {
    FactorProvider provider = FactorProvider.OKTA;
    FactorType type = FactorType.PUSH;
    DefaultFactor factor = mock(DefaultFactor.class);
    when(factor.getType()).thenReturn(type);
    when(factor.getProvider()).thenReturn(provider);
    String result = this.abstractOktaStateHandler.getDeviceName(factor);
    assertEquals("Okta Verify Push", result);
}
Also used : DefaultFactor(com.okta.authn.sdk.impl.resource.DefaultFactor) FactorType(com.okta.authn.sdk.resource.FactorType) FactorProvider(com.okta.authn.sdk.resource.FactorProvider) Test(org.junit.Test)

Aggregations

FactorProvider (com.okta.authn.sdk.resource.FactorProvider)8 FactorType (com.okta.authn.sdk.resource.FactorType)8 DefaultFactor (com.okta.authn.sdk.impl.resource.DefaultFactor)7 Test (org.junit.Test)7 AuthResponse (com.nike.cerberus.auth.connector.AuthResponse)2 AuthStatus (com.nike.cerberus.auth.connector.AuthStatus)2 AuthenticationResponse (com.okta.authn.sdk.resource.AuthenticationResponse)2 User (com.okta.authn.sdk.resource.User)2