Test Name | oidcc-rp-initiated-logout-no-state |
---|---|
Variant | client_auth_type=client_secret_basic, server_metadata=discovery, response_type=code id_token, response_mode=default, client_registration=static_client |
Test ID | 1wvbulYeN5klLMT https://www.certification.openid.net/log-detail.html?public=true&log=1wvbulYeN5klLMT |
Created | 2022-05-16T12:31:06.866795Z |
Description | Keycloak, OpenID Connect Core: Rp Initiated Logout Certification Profile (client_registration:static_client) |
Test Version | 4.1.42 |
Test Owner | 115310558227229560855 https://accounts.google.com |
Plan ID | ZnqmfMPvVcl8r https://www.certification.openid.net/plan-detail.html?public=true&plan=ZnqmfMPvVcl8r |
Exported From | https://www.certification.openid.net |
Exported By | 115310558227229560855 https://accounts.google.com |
Suite Version | 4.1.42 |
Exported | 2022-05-16 18:00:40 (UTC) |
Status: FINISHED Result: PASSED |
SUCCESS 76 FAILURE 0 WARNING 0 REVIEW 0 INFO 6 |
2022-05-16 12:31:06 |
INFO
|
TEST-RUNNER
Test instance 1wvbulYeN5klLMT created
|
||||||||||||||
|
2022-05-16 12:31:06 |
SUCCESS
|
CreateRedirectUri
Created redirect URI
|
||
|
2022-05-16 12:31:06 |
|
GetDynamicServerConfiguration
HTTP request
|
||||||||
|
2022-05-16 12:31:07 |
RESPONSE
|
GetDynamicServerConfiguration
HTTP response
|
||||||||
|
2022-05-16 12:31:07 |
SUCCESS
|
GetDynamicServerConfiguration
Successfully parsed server configuration
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
2022-05-16 12:31:07 |
SUCCESS
|
CheckServerConfiguration
Found required server configuration keys
|
||
|
2022-05-16 12:31:07 |
SUCCESS
|
ExtractTLSTestValuesFromServerConfiguration
Extracted TLS information from authorization server configuration
|
||||||||
|
2022-05-16 12:31:07 |
|
FetchServerKeys
Fetching server key
|
||
|
2022-05-16 12:31:07 |
|
FetchServerKeys
HTTP request
|
||||||||
|
2022-05-16 12:31:08 |
RESPONSE
|
FetchServerKeys
HTTP response
|
||||||||
|
2022-05-16 12:31:08 |
|
FetchServerKeys
Found JWK set string
|
||
|
2022-05-16 12:31:08 |
SUCCESS
|
FetchServerKeys
Found server JWK set
|
||
|
2022-05-16 12:31:08 |
SUCCESS
|
CheckServerKeysIsValid
Server JWKs is valid
|
||
|
2022-05-16 12:31:08 | SUCCESS |
ValidateServerJWKs
Valid server JWKs: keys are valid JSON, contain the required fields and are correctly encoded using unpadded base64url
|
|
2022-05-16 12:31:08 | SUCCESS |
CheckForKeyIdInServerJWKs
All keys contain kids
|
|
2022-05-16 12:31:08 | SUCCESS |
CheckDistinctKeyIdValueInServerJWKs
Distinct 'kid' value in all keys of server_jwks
|
||
|
2022-05-16 12:31:08 | SUCCESS |
EnsureServerJwksDoesNotContainPrivateOrSymmetricKeys
Jwks does not contain any private or symmetric keys
|
|
2022-05-16 12:31:08 | SUCCESS |
CreatePostLogoutRedirectUri
Created post_logout_redirect_uri URI
|
||
|
2022-05-16 12:31:08 |
SUCCESS
|
GetStaticClientConfiguration
Found a static client object
|
||||
|
2022-05-16 12:31:08 | INFO |
ValidateClientJWKsPrivatePart
Skipped evaluation due to missing required element: client jwks
|
||||||
|
2022-05-16 12:31:08 |
INFO
|
ExtractJWKsFromStaticClientConfiguration
Skipped evaluation due to missing required element: client jwks
|
||||||
|
2022-05-16 12:31:08 | INFO |
CheckDistinctKeyIdValueInClientJWKs
Skipped evaluation due to missing required element: client jwks
|
||||||
|
2022-05-16 12:31:08 |
|
SetScopeInClientConfigurationToOpenId
Set scope in client configuration to "openid"
|
||
|
2022-05-16 12:31:08 |
SUCCESS
|
EnsureServerConfigurationSupportsClientSecretBasic
Contents of 'token_endpoint_auth_methods_supported' in discovery document matches expectations.
|
||||||
|
2022-05-16 12:31:08 |
SUCCESS
|
SetProtectedResourceUrlToUserInfoEndpoint
userinfo_endpoint will be used to test access token. The user info is not a mandatory to implement feature in the OpenID Connect specification, but is mandatory for certification.
|
||
|
2022-05-16 12:31:08 |
|
oidcc-rp-initiated-logout-no-state
Setup Done
|
|
Make request to authorization endpoint |
2022-05-16 12:31:08 |
SUCCESS
|
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
|
||||||
|
2022-05-16 12:31:08 |
|
CreateRandomStateValue
Created state value
|
||||
|
2022-05-16 12:31:08 |
SUCCESS
|
AddStateToAuthorizationEndpointRequest
Added state parameter to request
|
||||||||
|
2022-05-16 12:31:08 |
|
CreateRandomNonceValue
Created nonce value
|
||||
|
2022-05-16 12:31:08 |
SUCCESS
|
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
|
||||||||||
|
2022-05-16 12:31:08 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseTypeFromEnvironment
Added response_type parameter to request
|
||||||||||||
|
2022-05-16 12:31:08 |
SUCCESS
|
BuildPlainRedirectToAuthorizationEndpoint
Sending to authorization endpoint
|
||||
|
2022-05-16 12:31:08 |
REDIRECT
|
oidcc-rp-initiated-logout-no-state
Redirecting to authorization endpoint
|
||
|
2022-05-16 12:31:16 |
INCOMING
|
oidcc-rp-initiated-logout-no-state
Incoming HTTP request to /test/a/keycloak/callback
|
||||||||||||||||||||
|
2022-05-16 12:31:16 |
SUCCESS
|
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
|
||
|
2022-05-16 12:31:16 |
OUTGOING
|
oidcc-rp-initiated-logout-no-state
Response to HTTP request to test instance 1wvbulYeN5klLMT
|
||||
|
2022-05-16 12:31:16 |
INCOMING
|
oidcc-rp-initiated-logout-no-state
Incoming HTTP request to /test/a/keycloak/implicit/j0GsGTAGFqlbEB29K73d
|
||||||||||||||||||||
|
2022-05-16 12:31:16 |
OUTGOING
|
oidcc-rp-initiated-logout-no-state
Response to HTTP request to test instance 1wvbulYeN5klLMT
|
||||||||
|
2022-05-16 12:31:16 |
|
ExtractImplicitHashToCallbackResponse
Extracted response from URL fragment
|
||
|
2022-05-16 12:31:16 |
SUCCESS
|
ExtractImplicitHashToCallbackResponse
Extracted the hash values
|
||||||||
|
2022-05-16 12:31:16 |
REDIRECT-IN
|
oidcc-rp-initiated-logout-no-state
Authorization endpoint response captured
|
||||||||||
|
Verify authorization endpoint response |
2022-05-16 12:31:16 | SUCCESS |
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
|
|
2022-05-16 12:31:16 | SUCCESS |
RejectErrorInUrlQuery
'error' is not present in URL query returned from authorization endpoint
|
|
2022-05-16 12:31:16 |
SUCCESS
|
CheckMatchingCallbackParameters
Callback parameters successfully verified
|
|
2022-05-16 12:31:16 |
|
ValidateIssInAuthorizationResponse
No 'iss' value in authorization response.
|
|
2022-05-16 12:31:16 |
SUCCESS
|
CheckIfAuthorizationEndpointError
No error from authorization endpoint
|
|
2022-05-16 12:31:16 |
SUCCESS
|
CheckStateInAuthorizationResponse
State in response correctly returned
|
||
|
2022-05-16 12:31:16 |
SUCCESS
|
ExtractAuthorizationCodeFromAuthorizationResponse
Found authorization code
|
||
|
2022-05-16 12:31:16 |
SUCCESS
|
ExtractIdTokenFromAuthorizationResponse
Found and parsed the id_token from authorization_endpoint_response
|
||||||
|
2022-05-16 12:31:16 |
SUCCESS
|
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
|
|
2022-05-16 12:31:16 | SUCCESS |
ValidateIdTokenNonce
Nonce values match
|
||
|
2022-05-16 12:31:16 | SUCCESS |
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
|
|
2022-05-16 12:31:16 |
SUCCESS
|
ValidateIdTokenSignature
id_token signature validated
|
||
|
2022-05-16 12:31:16 |
SUCCESS
|
ValidateIdTokenSignatureUsingKid
id_token signature validated
|
||
|
2022-05-16 12:31:16 | SUCCESS |
CheckForSubjectInIdToken
Found 'sub' in id_token
|
||
|
2022-05-16 12:31:16 | INFO |
FAPIValidateEncryptedIdTokenHasKid
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-05-16 12:31:16 |
SUCCESS
|
CreateTokenEndpointRequestForAuthorizationCodeGrant
Created token endpoint request
|
||||||
|
2022-05-16 12:31:16 |
SUCCESS
|
AddBasicAuthClientSecretAuthenticationParameters
Added basic authorization header
|
||
|
2022-05-16 12:31:16 |
|
CallTokenEndpoint
HTTP request
|
||||||||
|
2022-05-16 12:31:17 |
RESPONSE
|
CallTokenEndpoint
HTTP response
|
||||||||
|
2022-05-16 12:31:17 |
SUCCESS
|
CallTokenEndpoint
Parsed token endpoint response
|
||||||||||||||||||
|
2022-05-16 12:31:17 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-05-16 12:31:17 |
SUCCESS
|
CheckForAccessTokenValue
Found an access token
|
||
|
2022-05-16 12:31:17 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-05-16 12:31:17 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-05-16 12:31:17 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-05-16 12:31:17 |
SUCCESS
|
CheckForRefreshTokenValue
Found a refresh token
|
||
|
2022-05-16 12:31:17 | SUCCESS |
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
|
||||||
|
2022-05-16 12:31:17 |
SUCCESS
|
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
|
|
2022-05-16 12:31:17 | SUCCESS |
ValidateIdTokenNonce
Nonce values match
|
||
|
2022-05-16 12:31:17 | SUCCESS |
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
|
|
2022-05-16 12:31:17 |
SUCCESS
|
ValidateIdTokenSignature
id_token signature validated
|
||
|
2022-05-16 12:31:17 |
SUCCESS
|
ValidateIdTokenSignatureUsingKid
id_token signature validated
|
||
|
2022-05-16 12:31:17 | SUCCESS |
CheckForSubjectInIdToken
Found 'sub' in id_token
|
||
|
2022-05-16 12:31:17 | INFO |
FAPIValidateEncryptedIdTokenHasKid
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-05-16 12:31:17 | SUCCESS |
VerifyIdTokenSubConsistentHybridFlow
authorization endpoint and token endpoint id_token have same sub
|
||||
|
Second authorization: Userinfo endpoint tests |
2022-05-16 12:31:17 |
|
CallProtectedResource
HTTP request
|
||||||||
|
2022-05-16 12:31:18 |
RESPONSE
|
CallProtectedResource
HTTP response
|
||||||||
|
2022-05-16 12:31:18 |
SUCCESS
|
CallProtectedResource
Got a response from the resource endpoint
|
||||||||
|
2022-05-16 12:31:18 |
SUCCESS
|
EnsureHttpStatusCodeIs200
resource endpoint returned the expected http status
|
||||
|
Redirect to end session endpoint & wait for response |
2022-05-16 12:31:18 |
|
CreateRandomEndSessionState
Created end_session_state value
|
||
|
2022-05-16 12:31:18 | SUCCESS |
CreateEndSessionEndpointRequest
Created end session endpoint request
|
||||||
|
2022-05-16 12:31:18 |
SUCCESS
|
RemoveStateFromEndSessionEndpointRequest
Removed state from end session endpoint request
|
||||
|
2022-05-16 12:31:18 | SUCCESS |
BuildRedirectToEndSessionEndpoint
Sending to end_session endpoint
|
||
|
2022-05-16 12:31:18 |
REDIRECT
|
oidcc-rp-initiated-logout-no-state
Redirecting to end session endpoint
|
||
|
2022-05-16 12:31:23 |
INCOMING
|
oidcc-rp-initiated-logout-no-state
Incoming HTTP request to /test/a/keycloak/post_logout_redirect
|
||||||||||||||||||||
|
2022-05-16 12:31:23 |
OUTGOING
|
oidcc-rp-initiated-logout-no-state
Response to HTTP request to test instance 1wvbulYeN5klLMT
|
||||
|
Verify frontchannel post logout redirect |
2022-05-16 12:31:23 | SUCCESS |
CheckNoPostLogoutState
state not passed to post logout redirect uri.
|
|
2022-05-16 12:31:23 | SUCCESS |
CheckForUnexpectedParametersInPostLogoutRedirect
post_logout_redirect includes only expected parameters
|
|
Second authorization: Make request to authorization endpoint |
2022-05-16 12:31:23 |
SUCCESS
|
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
|
||||||
|
2022-05-16 12:31:23 |
|
CreateRandomStateValue
Created state value
|
||||
|
2022-05-16 12:31:23 |
SUCCESS
|
AddStateToAuthorizationEndpointRequest
Added state parameter to request
|
||||||||
|
2022-05-16 12:31:23 |
|
CreateRandomNonceValue
Created nonce value
|
||||
|
2022-05-16 12:31:23 |
SUCCESS
|
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
|
||||||||||
|
2022-05-16 12:31:23 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseTypeFromEnvironment
Added response_type parameter to request
|
||||||||||||
|
2022-05-16 12:31:23 | SUCCESS |
AddPromptNoneToAuthorizationEndpointRequest
Added prompt=none to authorization endpoint request
|
||||||||||||||
|
2022-05-16 12:31:23 |
SUCCESS
|
BuildPlainRedirectToAuthorizationEndpoint
Sending to authorization endpoint
|
||||
|
2022-05-16 12:31:23 |
REDIRECT
|
oidcc-rp-initiated-logout-no-state
Redirecting to authorization endpoint
|
||
|
2022-05-16 12:31:29 |
INCOMING
|
oidcc-rp-initiated-logout-no-state
Incoming HTTP request to /test/a/keycloak/callback
|
||||||||||||||||||||
|
2022-05-16 12:31:29 |
SUCCESS
|
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
|
||
|
2022-05-16 12:31:29 |
OUTGOING
|
oidcc-rp-initiated-logout-no-state
Response to HTTP request to test instance 1wvbulYeN5klLMT
|
||||
|
2022-05-16 12:31:29 |
INCOMING
|
oidcc-rp-initiated-logout-no-state
Incoming HTTP request to /test/a/keycloak/implicit/i5LjTB0dn86w2vq7ODvg
|
||||||||||||||||||||
|
2022-05-16 12:31:29 |
OUTGOING
|
oidcc-rp-initiated-logout-no-state
Response to HTTP request to test instance 1wvbulYeN5klLMT
|
||||||||
|
2022-05-16 12:31:29 |
|
ExtractImplicitHashToCallbackResponse
Extracted response from URL fragment
|
||
|
2022-05-16 12:31:29 |
SUCCESS
|
ExtractImplicitHashToCallbackResponse
Extracted the hash values
|
||||
|
2022-05-16 12:31:29 |
REDIRECT-IN
|
oidcc-rp-initiated-logout-no-state
Authorization endpoint response captured
|
||||||||||
|
Second authorization: Verify authorization endpoint response |
2022-05-16 12:31:29 | SUCCESS |
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
|
|
2022-05-16 12:31:29 | SUCCESS |
RejectErrorInUrlQuery
'error' is not present in URL query returned from authorization endpoint
|
|
2022-05-16 12:31:29 |
SUCCESS
|
CheckStateInAuthorizationResponse
State in response correctly returned
|
||
|
2022-05-16 12:31:29 |
|
ValidateIssInAuthorizationResponse
No 'iss' value in authorization response.
|
|
2022-05-16 12:31:29 | SUCCESS |
EnsureErrorFromAuthorizationEndpointResponse
Authorization endpoint returned an error
|
||||
|
2022-05-16 12:31:29 | SUCCESS |
RejectAuthCodeInAuthorizationEndpointResponse
Authorization code is not present in authorization endpoint response
|
|
2022-05-16 12:31:29 | SUCCESS |
CheckForUnexpectedParametersInErrorResponseFromAuthorizationEndpoint
error response includes only expected parameters
|
||||
|
2022-05-16 12:31:29 | SUCCESS |
CheckErrorDescriptionFromAuthorizationEndpointResponseErrorContainsCRLFTAB
authorization_endpoint_response did not include optional 'error_description' field
|
|
2022-05-16 12:31:29 | SUCCESS |
ValidateErrorDescriptionFromAuthorizationEndpointResponseError
authorization_endpoint_response did not include optional 'error_description' field
|
|
2022-05-16 12:31:29 | SUCCESS |
ValidateErrorUriFromAuthorizationEndpointResponseError
authorization_endpoint_response did not include optional 'error_uri' field
|
|
2022-05-16 12:31:29 | SUCCESS |
CheckErrorFromAuthorizationEndpointIsOneThatRequiredAUserInterface
Authorization endpoint returned one of the permitted errors
|
||||
|
2022-05-16 12:31:29 |
FINISHED
|
oidcc-rp-initiated-logout-no-state
Test has run to completion
|
||
|
Unregister dynamically registered client |
2022-05-16 12:31:29 |
|
UnregisterDynamicallyRegisteredClient
Couldn't find registration_access_token.
|
|
2022-05-16 12:31:35 |
|
TEST-RUNNER
Alias has now been claimed by another test
|
||||
|