2254 showTitle(
"requestClaimsIndividuallyRequestObjectEncryptionAlgRSA_OAEPEncA256GCMUserInfoEncryptedResponseAlgRSA_OAEPEncA256GCM");
2256 List<ResponseType> responseTypes = Arrays.asList(
2262 StringUtils.spaceSeparatedToList(redirectUris));
2272 registerRequest.
setClaims(Arrays.asList(
2274 JwtClaimName.NICKNAME,
2275 JwtClaimName.GIVEN_NAME,
2276 JwtClaimName.FAMILY_NAME,
2277 JwtClaimName.PICTURE,
2278 JwtClaimName.ZONEINFO,
2279 JwtClaimName.LOCALE,
2280 JwtClaimName.ADDRESS_STREET_ADDRESS,
2281 JwtClaimName.ADDRESS_LOCALITY,
2282 JwtClaimName.ADDRESS_REGION,
2283 JwtClaimName.ADDRESS_POSTAL_CODE,
2284 JwtClaimName.ADDRESS_COUNTRY));
2291 assertEquals(registerResponse.getStatus(), 200,
"Unexpected response code: " + registerResponse.getEntity());
2305 assertNotNull(serverKeyId);
2311 List<String> scopes = Arrays.asList(
"openid",
"clientinfo");
2312 String nonce = UUID.randomUUID().toString();
2313 String state = UUID.randomUUID().toString();
2316 authorizationRequest.
setState(state);
2318 JwtAuthorizationRequest jwtAuthorizationRequest =
new JwtAuthorizationRequest(authorizationRequest,
2320 jwtAuthorizationRequest.setKeyId(serverKeyId);
2321 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
2322 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(
false)));
2323 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.GIVEN_NAME, ClaimValue.createEssential(
false)));
2324 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.FAMILY_NAME, ClaimValue.createEssential(
false)));
2325 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
2326 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
2327 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(
false)));
2328 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ZONEINFO, ClaimValue.createNull()));
2329 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.LOCALE, ClaimValue.createNull()));
2330 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ADDRESS_STREET_ADDRESS, ClaimValue.createNull()));
2331 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ADDRESS_LOCALITY, ClaimValue.createNull()));
2332 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ADDRESS_REGION, ClaimValue.createNull()));
2333 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ADDRESS_POSTAL_CODE, ClaimValue.createNull()));
2334 jwtAuthorizationRequest.addUserInfoClaim(
new Claim(JwtClaimName.ADDRESS_COUNTRY, ClaimValue.createNull()));
2335 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
2336 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE, ClaimValue.createValueList(
new String[]{
"2"})));
2337 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.NAME, ClaimValue.createEssential(
true)));
2338 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(
false)));
2339 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.GIVEN_NAME, ClaimValue.createEssential(
false)));
2340 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.FAMILY_NAME, ClaimValue.createEssential(
false)));
2341 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
2342 jwtAuthorizationRequest.addIdTokenClaim(
new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
2343 jwtAuthorizationRequest.getIdTokenMember().setMaxAge(86400);
2344 String authJwt = jwtAuthorizationRequest.getEncodedJwt(jwks);
2350 assertNotNull(authorizationResponse.
getLocation(),
"The location is null");
2351 assertNotNull(authorizationResponse.
getAccessToken(),
"The accessToken is null");
2352 assertNotNull(authorizationResponse.
getTokenType(),
"The tokenType is null");
2353 assertNotNull(authorizationResponse.
getIdToken(),
"The idToken is null");
2354 assertNotNull(authorizationResponse.
getState(),
"The state is null");
2356 String idToken = authorizationResponse.
getIdToken();
2360 PrivateKey privateKey = cryptoProvider.
getPrivateKey(clientKeyId);
2381 userInfoClient.setPrivateKey(privateKey);
2382 UserInfoResponse userInfoResponse = userInfoClient.execUserInfo(accessToken);
2385 assertEquals(userInfoResponse.
getStatus(), 200,
"Unexpected response code: " + userInfoResponse.
getStatus());
2386 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.SUBJECT_IDENTIFIER));
2387 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.NAME));
2388 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.NICKNAME));
2389 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.GIVEN_NAME));
2390 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.FAMILY_NAME));
2391 assertNull(userInfoResponse.
getClaim(JwtClaimName.EMAIL));
2392 assertNull(userInfoResponse.
getClaim(JwtClaimName.EMAIL_VERIFIED));
2393 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.PICTURE));
2394 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.ZONEINFO));
2395 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.LOCALE));
2396 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.ADDRESS_STREET_ADDRESS));
2397 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.ADDRESS_LOCALITY));
2398 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.ADDRESS_REGION));
2399 assertNotNull(userInfoResponse.
getClaim(JwtClaimName.ADDRESS_COUNTRY));
ID_TOKEN
Definition: ResponseType.java:47
String registrationEndpoint
Definition: BaseTest.java:81
Definition: RegisterClient.java:34
String getIdToken()
Definition: AuthorizationResponse.java:295
String getClaimAsString(String key)
Definition: JwtClaimSet.java:55
void setClaims(List< String > claims)
Definition: RegisterRequest.java:903
String jwksUri
Definition: BaseTest.java:80
Definition: RegisterResponse.java:34
A256GCM
Definition: BlockEncryptionAlgorithm.java:17
void setIdTokenEncryptedResponseEnc(BlockEncryptionAlgorithm idTokenEncryptedResponseEnc)
Definition: RegisterRequest.java:592
String getState()
Definition: AuthorizationResponse.java:314
JwkResponse exec()
Definition: JwkClient.java:54
static Jwe parse(String encodedJwe, PrivateKey privateKey, byte[] sharedSymmetricKey)
Definition: Jwe.java:83
void setSectorIdentifierUri(String sectorIdentifierUri)
Definition: RegisterRequest.java:504
Definition: SignatureAlgorithm.java:20
static void showClient(BaseClient client)
Definition: BaseTest.java:775
void setRequestObjectEncryptionEnc(BlockEncryptionAlgorithm requestObjectEncryptionEnc)
Definition: RegisterRequest.java:704
Definition: JwtUtil.java:38
PrivateKey getPrivateKey(String alias)
Definition: OxAuthCryptoProvider.java:264
JwtClaims getClaims()
Definition: JsonWebResponse.java:41
void setJwksUri(String jwksUri)
Definition: RegisterRequest.java:454
Date getClientSecretExpiresAt()
Definition: RegisterResponse.java:205
RegisterResponse exec()
Definition: RegisterClient.java:76
Definition: KeyEncryptionAlgorithm.java:12
void setUserInfoEncryptedResponseEnc(BlockEncryptionAlgorithm userInfoEncryptedResponseEnc)
Definition: RegisterRequest.java:646
RSA_OAEP
Definition: KeyEncryptionAlgorithm.java:15
void setRequestObjectEncryptionAlg(KeyEncryptionAlgorithm requestObjectEncryptionAlg)
Definition: RegisterRequest.java:684
String getClientSecret()
Definition: RegisterResponse.java:160
WEB
Definition: ApplicationType.java:28
RS256
Definition: SignatureAlgorithm.java:26
TokenType getTokenType()
Definition: AuthorizationResponse.java:237
List< String > getClaim(String claimName)
Definition: UserInfoResponse.java:109
Definition: JwkClient.java:29
String getClientId()
Definition: RegisterResponse.java:142
void showTitle(String title)
Definition: BaseTest.java:761
void setRequest(T request)
Definition: BaseClient.java:68
void setUserInfoEncryptedResponseAlg(KeyEncryptionAlgorithm userInfoEncryptedResponseAlg)
Definition: RegisterRequest.java:628
void setIdTokenEncryptedResponseAlg(KeyEncryptionAlgorithm idTokenEncryptedResponseAlg)
Definition: RegisterRequest.java:574
Definition: AuthorizationResponse.java:32
void setResponseTypes(List< ResponseType > responseTypes)
Definition: RegisterRequest.java:272
Definition: RegisterRequest.java:37
Definition: JwkResponse.java:27
Definition: BlockEncryptionAlgorithm.java:12
JwtHeader getHeader()
Definition: JsonWebResponse.java:33
Definition: UserInfoClient.java:34
String userInfoEndpoint
Definition: BaseTest.java:76
void setRequest(String request)
Definition: AuthorizationRequest.java:361
TOKEN
Definition: ResponseType.java:43
String getLocation()
Definition: BaseResponse.java:58
int getStatus()
Definition: BaseResponse.java:49
Definition: AuthorizationRequest.java:33
Definition: ApplicationType.java:12
static JSONObject getJSONWebKeys(String jwksUri)
Definition: JwtUtil.java:203
Definition: ResponseType.java:34
void setState(String state)
Definition: AuthorizationRequest.java:217
Date getClientIdIssuedAt()
Definition: RegisterResponse.java:189
String authorizationEndpoint
Definition: BaseTest.java:72
Definition: UserInfoResponse.java:20
AuthorizationResponse authenticateResourceOwnerAndGrantAccess(String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:252
String getAccessToken()
Definition: AuthorizationResponse.java:185
String getKeyId(SignatureAlgorithm signatureAlgorithm)
Definition: JwkResponse.java:112
Definition: OxAuthCryptoProvider.java:62
String getRegistrationAccessToken()
Definition: RegisterResponse.java:173