When an authorization code is used more than once, all the tokens issued for that authorization code must be revoked.
546 List<ResponseType> responseTypes = Arrays.asList(
552 StringUtils.spaceSeparatedToList(redirectUris));
561 assertEquals(registerResponse.getStatus(), 200,
"Unexpected response code: " + registerResponse.getEntity());
581 assertEquals(readClientResponse.getStatus(), 200,
"Unexpected response code: " + readClientResponse.getEntity());
587 assertNotNull(readClientResponse.
getClaims().get(RESPONSE_TYPES.toString()));
588 assertNotNull(readClientResponse.
getClaims().get(REDIRECT_URIS.toString()));
589 assertNotNull(readClientResponse.
getClaims().get(APPLICATION_TYPE.toString()));
590 assertNotNull(readClientResponse.
getClaims().get(CLIENT_NAME.toString()));
591 assertNotNull(readClientResponse.
getClaims().get(ID_TOKEN_SIGNED_RESPONSE_ALG.toString()));
592 assertNotNull(readClientResponse.
getClaims().get(SCOPE.toString()));
595 List<String> scopes = Arrays.asList(
"openid",
"profile",
"address",
"email");
596 String state = UUID.randomUUID().toString();
597 String nonce = UUID.randomUUID().toString();
600 authorizationRequest.
setState(state);
605 assertNotNull(authorizationResponse.
getLocation(),
"The location is null");
606 assertNotNull(authorizationResponse.
getCode(),
"The authorization code is null");
607 assertNotNull(authorizationResponse.
getState(),
"The state is null");
608 assertNotNull(authorizationResponse.
getScope(),
"The scope is null");
609 assertNotNull(authorizationResponse.
getIdToken(),
"The id token is null");
611 String scope = authorizationResponse.
getScope();
612 String authorizationCode = authorizationResponse.
getCode();
613 String idToken = authorizationResponse.
getIdToken();
632 assertTrue(rsaSigner.validate(jwt));
636 TokenResponse response2 = tokenClient1.execAuthorizationCode(authorizationCode, redirectUri,
637 clientId, clientSecret);
640 assertEquals(response2.getStatus(), 200,
"Unexpected response code: " + response2.getStatus());
641 assertNotNull(response2.getEntity(),
"The entity is null");
642 assertNotNull(response2.
getAccessToken(),
"The access token is null");
643 assertNotNull(response2.
getTokenType(),
"The token type is null");
644 assertNotNull(response2.
getRefreshToken(),
"The refresh token is null");
652 clientId, clientSecret);
655 assertEquals(response4.getStatus(), 400,
"Unexpected response code: " + response4.getStatus());
656 assertNotNull(response4.getEntity(),
"The entity is null");
657 assertNotNull(response4.
getErrorType(),
"The error type is null");
662 TokenResponse response5 = tokenClient3.execRefreshToken(scope, refreshToken, clientId, clientSecret);
665 assertEquals(response5.getStatus(), 401,
"Unexpected response code: " + response5.getStatus());
666 assertNotNull(response5.getEntity(),
"The entity is null");
667 assertNotNull(response5.
getErrorType(),
"The error type is null");
675 assertEquals(response7.
getStatus(), 400,
"Unexpected response code: " + response7.
getStatus());
676 assertNotNull(response7.
getErrorType(),
"Unexpected result: errorType not found");
677 assertNotNull(response7.
getErrorDescription(),
"Unexpected result: errorDescription not found");
ID_TOKEN
Definition: ResponseType.java:47
String registrationEndpoint
Definition: BaseTest.java:81
Definition: RegisterClient.java:34
String getIdToken()
Definition: AuthorizationResponse.java:295
CODE
Definition: ResponseType.java:39
String getClaimAsString(String key)
Definition: JwtClaimSet.java:55
String getRegistrationClientUri()
Definition: RegisterResponse.java:181
String jwksUri
Definition: BaseTest.java:80
String getCode()
Definition: AuthorizationResponse.java:167
Definition: TokenClient.java:24
Definition: RegisterResponse.java:34
String getState()
Definition: AuthorizationResponse.java:314
T getErrorType()
Definition: BaseResponseWithErrors.java:48
TokenType getTokenType()
Definition: TokenResponse.java:107
void setSectorIdentifierUri(String sectorIdentifierUri)
Definition: RegisterRequest.java:504
RegisterResponse registerClient(final String redirectUris, List< ResponseType > responseTypes, List< String > scopes, String sectorIdentifierUri)
Definition: AuthorizationCodeFlowHttpTest.java:804
Map< String, String > getClaims()
Definition: RegisterResponse.java:237
Definition: SignatureAlgorithm.java:20
UserInfoErrorResponseType getErrorType()
Definition: UserInfoResponse.java:51
static void showClient(BaseClient client)
Definition: BaseTest.java:775
TokenResponse execAuthorizationCode(String code, String redirectUri, String clientId, String clientSecret)
Definition: TokenClient.java:77
JwtClaims getClaims()
Definition: JsonWebResponse.java:41
String tokenEndpoint
Definition: BaseTest.java:75
Date getClientSecretExpiresAt()
Definition: RegisterResponse.java:205
RegisterResponse exec()
Definition: RegisterClient.java:76
String getErrorDescription()
Definition: UserInfoResponse.java:72
String getAccessToken()
Definition: TokenResponse.java:89
String getClientSecret()
Definition: RegisterResponse.java:160
WEB
Definition: ApplicationType.java:28
Definition: RSAPublicKey.java:25
RS256
Definition: SignatureAlgorithm.java:26
Definition: TokenResponse.java:22
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
Definition: AuthorizationResponse.java:32
void setResponseTypes(List< ResponseType > responseTypes)
Definition: RegisterRequest.java:272
Definition: RegisterRequest.java:37
String getScope()
Definition: AuthorizationResponse.java:277
static RSAPublicKey getRSAPublicKey(String jwkSetUri, String keyId)
Definition: JwkClient.java:94
JwtHeader getHeader()
Definition: JsonWebResponse.java:33
Definition: UserInfoClient.java:34
String userInfoEndpoint
Definition: BaseTest.java:76
String getLocation()
Definition: BaseResponse.java:58
int getStatus()
Definition: BaseResponse.java:49
Definition: AuthorizationRequest.java:33
Definition: ApplicationType.java:12
Definition: ResponseType.java:34
void setState(String state)
Definition: AuthorizationRequest.java:217
Date getClientIdIssuedAt()
Definition: RegisterResponse.java:189
String authorizationEndpoint
Definition: BaseTest.java:72
static Jwt parse(String encodedJwt)
Definition: Jwt.java:54
Definition: UserInfoResponse.java:20
AuthorizationResponse authenticateResourceOwnerAndGrantAccess(String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:252
String getRefreshToken()
Definition: TokenResponse.java:144
String getErrorDescription()
Definition: BaseResponseWithErrors.java:40
String getRegistrationAccessToken()
Definition: RegisterResponse.java:173