assertEquals(response.getStatus(), 200, "Unexpected response code"); assertNotNull(response.getIssuer(), "The issuer is null"); assertNotNull(response.getAuthorizationEndpoint(), "The authorizationEndpoint is null"); assertNotNull(response.getTokenEndpoint(), "The tokenEndpoint is null"); assertNotNull(response.getTokenRevocationEndpoint(), "The tokenRevocationEndpoint is null"); assertNotNull(response.getUserInfoEndpoint(), "The userInfoEndPoint is null"); assertNotNull(response.getClientInfoEndpoint(), "The clientInfoEndPoint is null"); assertNotNull(response.getCheckSessionIFrame(), "The checkSessionIFrame is null"); assertNotNull(response.getEndSessionEndpoint(), "The endSessionEndpoint is null"); assertNotNull(response.getJwksUri(), "The jwksUri is null"); assertNotNull(response.getRegistrationEndpoint(), "The registrationEndpoint is null"); assertNotNull(response.getIntrospectionEndpoint(), "The introspectionEndpoint is null"); assertNotNull(response.getIdGenerationEndpoint(), "The idGenerationEndpoint is null"); assertTrue(response.getScopesSupported().size() > 0, "The scopesSupported is empty"); assertTrue(response.getScopeToClaimsMapping().size() > 0, "The scope to claims mapping is empty"); assertTrue(response.getResponseTypesSupported().size() > 0, "The responseTypesSupported is empty"); assertTrue(response.getGrantTypesSupported().size() > 0, "The grantTypesSupported is empty"); assertTrue(response.getAcrValuesSupported().size() >= 0, "The acrValuesSupported is empty"); assertTrue(response.getSubjectTypesSupported().size() > 0, "The subjectTypesSupported is empty"); assertTrue(response.getUserInfoSigningAlgValuesSupported().size() > 0, "The userInfoSigningAlgValuesSupported is empty"); assertTrue(response.getUserInfoEncryptionAlgValuesSupported().size() > 0, "The userInfoEncryptionAlgValuesSupported is empty"); assertTrue(response.getUserInfoEncryptionEncValuesSupported().size() > 0, "The userInfoEncryptionEncValuesSupported is empty"); assertTrue(response.getIdTokenSigningAlgValuesSupported().size() > 0, "The idTokenSigningAlgValuesSupported is empty"); assertTrue(response.getIdTokenEncryptionAlgValuesSupported().size() > 0, "The idTokenEncryptionAlgValuesSupported is empty"); assertTrue(response.getIdTokenEncryptionEncValuesSupported().size() > 0, "The idTokenEncryptionEncValuesSupported is empty"); assertTrue(response.getRequestObjectSigningAlgValuesSupported().size() > 0, "The requestObjectSigningAlgValuesSupported is empty"); assertTrue(response.getRequestObjectEncryptionAlgValuesSupported().size() > 0, "The requestObjectEncryptionAlgValuesSupported is empty"); assertTrue(response.getRequestObjectEncryptionEncValuesSupported().size() > 0, "The requestObjectEncryptionEncValuesSupported is empty");
public String getPropertyValue(String propertyName) { if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_AUTHORIZE_URL, propertyName)) { return openIdConfiguration.getAuthorizationEndpoint(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_TOKEN_URL, propertyName)) { return openIdConfiguration.getTokenEndpoint(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_USERINFO_URL, propertyName)) { return openIdConfiguration.getUserInfoEndpoint(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_LOGOUT_URL, propertyName)) { return openIdConfiguration.getEndSessionEndpoint(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_LOGOUT_REDIRECT_URL, propertyName)) { return appConfiguration.getOpenIdPostLogoutRedirectUri(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_CLIENT_ID, propertyName)) { return appConfiguration.getOpenIdClientId(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_CLIENT_PASSWORD, propertyName)) { return appConfiguration.getOpenIdClientPassword(); } else if (StringHelper.equalsIgnoreCase(Configuration.OAUTH_PROPERTY_CLIENT_SCOPE, propertyName)) { return Util.listAsString(appConfiguration.getOpenIdScopes()); } return null; }
responseString2 = openIdConfigurationClient.getResponseAsString(); registrationAction.setRegistrationEndpoint(openIdConfigurationResponse.getRegistrationEndpoint()); authorizationAction.setAuthorizationEndpoint(openIdConfigurationResponse.getAuthorizationEndpoint()); authorizationAction.setJwksUri(openIdConfigurationResponse.getJwksUri()); tokenAction.setTokenEndpoint(openIdConfigurationResponse.getTokenEndpoint()); userInfoAction.setUserInfoEndpoint(openIdConfigurationResponse.getUserInfoEndpoint()); checkSessionAction.setCheckSessionEndpoint(openIdConfigurationResponse.getCheckSessionIFrame()); endSessionAction.setEndSessionEndpoint(openIdConfigurationResponse.getEndSessionEndpoint());
setResponse(new OpenIdConfigurationResponse(status)); getResponse().setEntity(entity); getResponse().setHeaders(clientResponse.getMetadata()); if (StringUtils.isNotBlank(entity)) { JSONObject jsonObj = new JSONObject(entity); getResponse().setIssuer(jsonObj.getString(ISSUER)); getResponse().setAuthorizationEndpoint(jsonObj.getString(AUTHORIZATION_ENDPOINT)); getResponse().setTokenEndpoint(jsonObj.getString(TOKEN_ENDPOINT)); getResponse().setTokenRevocationEndpoint(jsonObj.getString(TOKEN_REVOCATION_ENDPOINT)); getResponse().setUserInfoEndpoint(jsonObj.getString(USER_INFO_ENDPOINT)); getResponse().setClientInfoEndpoint(jsonObj.getString(CLIENT_INFO_ENDPOINT)); getResponse().setCheckSessionIFrame(jsonObj.getString(CHECK_SESSION_IFRAME)); getResponse().setEndSessionEndpoint(jsonObj.getString(END_SESSION_ENDPOINT)); getResponse().setJwksUri(jsonObj.getString(JWKS_URI)); getResponse().setRegistrationEndpoint(jsonObj.getString(REGISTRATION_ENDPOINT)); getResponse().setIdGenerationEndpoint(jsonObj.getString(ID_GENERATION_ENDPOINT));
assertEquals(response.getStatus(), 200, "Unexpected response code"); assertNotNull(response.getIssuer(), "The issuer is null"); assertNotNull(response.getAuthorizationEndpoint(), "The authorizationEndpoint is null"); assertNotNull(response.getTokenEndpoint(), "The tokenEndpoint is null"); assertNotNull(response.getTokenRevocationEndpoint(), "The tokenRevocationEndpoint is null"); assertNotNull(response.getUserInfoEndpoint(), "The userInfoEndPoint is null"); assertNotNull(response.getJwksUri(), "The jwksUri is null"); assertNotNull(response.getRegistrationEndpoint(), "The registrationEndpoint is null"); assertTrue(response.getScopesSupported().size() > 0, "The scopesSupported is empty"); assertTrue(response.getScopeToClaimsMapping().size() > 0, "The scope to claims mapping is empty"); assertTrue(response.getResponseTypesSupported().size() > 0, "The responseTypesSupported is empty"); assertTrue(response.getGrantTypesSupported().size() > 0, "The grantTypesSupported is empty"); assertTrue(response.getAcrValuesSupported().size() >= 0, "The acrValuesSupported is empty"); assertTrue(response.getSubjectTypesSupported().size() > 0, "The subjectTypesSupported is empty"); assertTrue(response.getIdTokenSigningAlgValuesSupported().size() > 0, "The idTokenSigningAlgValuesSupported is empty"); assertTrue(response.getRequestObjectSigningAlgValuesSupported().size() > 0, "The requestObjectSigningAlgValuesSupported is empty"); assertTrue(response.getTokenEndpointAuthMethodsSupported().size() > 0, "The tokenEndpointAuthMethodsSupported is empty"); assertTrue(response.getClaimsSupported().size() > 0, "The claimsSupported is empty"); authorizationEndpoint = response.getAuthorizationEndpoint(); tokenEndpoint = response.getTokenEndpoint(); tokenRevocationEndpoint = response.getTokenRevocationEndpoint(); userInfoEndpoint = response.getUserInfoEndpoint(); clientInfoEndpoint = response.getClientInfoEndpoint(); checkSessionIFrame = response.getCheckSessionIFrame(); endSessionEndpoint = response.getEndSessionEndpoint(); jwksUri = response.getJwksUri(); registrationEndpoint = response.getRegistrationEndpoint();
private UserInfoResponse getUserInfo(final String accessToken) { logger.debug("Session validation successful. Getting user information"); final UserInfoClient userInfoClient = new UserInfoClient(this.openIdConfiguration.getUserInfoEndpoint()); final UserInfoResponse userInfoResponse = userInfoClient.execUserInfo(accessToken); logger.trace("userInfoResponse.getStatus(): '{}'", userInfoResponse.getStatus()); logger.trace("userInfoResponse.getErrorType(): '{}'", userInfoResponse.getErrorType()); logger.debug("userInfoResponse.getClaims(): '{}'", userInfoResponse.getClaims()); return userInfoResponse; }
@Override public String getLogoutRedirectionUrl(WebContext context) { init(); final String state = RandomStringUtils.randomAlphanumeric(10); final String postLogoutRedirectUri = this.appConfiguration.getOpenIdPostLogoutRedirectUri(); String idToken = (String) context.getSessionAttribute(getName() + SESSION_ID_TOKEN_PARAMETER); // Allow to send logout request if session is expired if (idToken == null) { idToken = ""; } final EndSessionRequest endSessionRequest = new EndSessionRequest(idToken, postLogoutRedirectUri, state); final String redirectionUrl = this.openIdConfiguration.getEndSessionEndpoint() + "?" + endSessionRequest.getQueryString(); logger.debug("oxAuth redirection Url: '{}'", redirectionUrl); return redirectionUrl; }
final TokenClient tokenClient = new TokenClient(this.openIdConfiguration.getTokenEndpoint());
final String redirectionUrl = this.openIdConfiguration.getAuthorizationEndpoint() + "?" + authorizationRequest.getQueryString(); logger.debug("oxAuth redirection Url: '{}'", redirectionUrl);
private RegisterResponse registerOpenIdClient() { logger.info("Registering OpenId client"); String clientName = this.appConfiguration.getApplicationName() + " client"; RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, clientName, Arrays.asList(this.appConfiguration.getOpenIdRedirectUrl())); registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.RS256); registerRequest.setTokenEndpointAuthMethod(AuthenticationMethod.CLIENT_SECRET_BASIC); RegisterClient registerClient = new RegisterClient(openIdConfiguration.getRegistrationEndpoint()); registerClient.setRequest(registerRequest); RegisterResponse response = registerClient.exec(); if ((response == null) || (response.getStatus() != 200)) { throw new ConfigurationException("Failed to register new client"); } return response; }