Test Name | fapi-ciba-id1-refresh-token |
---|---|
Variant | client_auth_type=private_key_jwt, ciba_mode=poll, fapi_profile=plain_fapi, client_registration=static_client |
Test ID | aaHtcqn7Mq3Smn7 https://www.certification.openid.net/log-detail.html?public=true&log=aaHtcqn7Mq3Smn7 |
Created | 2022-01-07T10:36:48.943462Z |
Description | [Manual]FAPI-CIBA-ID1 Poll: Keycloak test with private_key_jwt client authentication (RequestObject:PS256/IDToken:PS256) |
Test Version | 4.1.38 |
Test Owner | 115310558227229560855 https://accounts.google.com |
Plan ID | ztfmbY619M8yQ https://www.certification.openid.net/plan-detail.html?public=true&plan=ztfmbY619M8yQ |
Exported From | https://www.certification.openid.net |
Exported By | 115310558227229560855 https://accounts.google.com |
Suite Version | 4.1.38 |
Exported | 2022-01-07 10:48:50 (UTC) |
Status: FINISHED Result: PASSED |
SUCCESS 299 FAILURE 0 WARNING 0 REVIEW 0 INFO 13 |
2022-01-07 10:36:49 |
INFO
|
TEST-RUNNER
Test instance aaHtcqn7Mq3Smn7 created
|
||||||||||||||
|
2022-01-07 10:36:49 |
SUCCESS
|
CreateCIBANotificationEndpointUri
Created ciba notification endpoint URI
|
||
|
2022-01-07 10:36:49 |
|
GetDynamicServerConfiguration
HTTP request
|
||||||||
|
2022-01-07 10:36:49 |
RESPONSE
|
GetDynamicServerConfiguration
HTTP response
|
||||||||
|
2022-01-07 10:36:49 |
|
GetDynamicServerConfiguration
Downloaded server configuration
|
||
|
2022-01-07 10:36:49 |
SUCCESS
|
GetDynamicServerConfiguration
Successfully parsed server configuration
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
2022-01-07 10:36:49 | SUCCESS |
AddMTLSEndpointAliasesToEnvironment
Added mtls_endpoint_aliases to environment
|
|
2022-01-07 10:36:49 |
SUCCESS
|
CheckCIBAServerConfiguration
Found required server configuration keys
|
||
|
2022-01-07 10:36:49 |
|
FetchServerKeys
Fetching server key
|
||
|
2022-01-07 10:36:49 |
|
FetchServerKeys
HTTP request
|
||||||||
|
2022-01-07 10:36:50 |
RESPONSE
|
FetchServerKeys
HTTP response
|
||||||||
|
2022-01-07 10:36:50 |
|
FetchServerKeys
Found JWK set string
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
FetchServerKeys
Found server JWK set
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
CheckServerKeysIsValid
Server JWKs is valid
|
||
|
2022-01-07 10:36:50 | SUCCESS |
ValidateServerJWKs
Valid server JWKs: keys are valid JSON, contain the required fields and are correctly encoded using unpadded base64url
|
|
2022-01-07 10:36:50 | SUCCESS |
CheckForKeyIdInServerJWKs
All keys contain kids
|
|
2022-01-07 10:36:50 | SUCCESS |
EnsureServerJwksDoesNotContainPrivateOrSymmetricKeys
Jwks does not contain any private or symmetric keys
|
|
2022-01-07 10:36:50 | SUCCESS |
FAPIEnsureMinimumServerKeyLength
Validated minimum key lengths for server_jwks
|
||
|
Verify First client: static client configuration |
2022-01-07 10:36:50 |
SUCCESS
|
GetStaticClientConfiguration
Found a static client object
|
||||||||||
|
2022-01-07 10:36:50 | SUCCESS |
ValidateClientJWKsPrivatePart
Valid client JWKs: keys are valid JSON, contain the required fields, the private/public exponents match and are correctly encoded using unpadded base64url
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
2022-01-07 10:36:50 |
|
ValidateMTLSCertificatesHeader
No certificate authority found for MTLS
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ValidateMTLSCertificatesHeader
MTLS certificates header is valid
|
|
2022-01-07 10:36:50 |
|
ExtractMTLSCertificatesFromConfiguration
No certificate authority found for MTLS
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractMTLSCertificatesFromConfiguration
Mutual TLS authentication credentials loaded
|
||||
|
2022-01-07 10:36:50 | SUCCESS |
CheckForKeyIdInClientJWKs
All keys contain kids
|
|
2022-01-07 10:36:50 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
2022-01-07 10:36:50 | SUCCESS |
FAPICheckKeyAlgInClientJWKs
Keys in client JWKS all have permitted 'alg'
|
||
|
2022-01-07 10:36:50 | SUCCESS |
FAPIEnsureMinimumClientKeyLength
Validated minimum key lengths for client_jwks
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
ValidateMTLSCertificatesAsX509
Mutual TLS authentication cert validated as X.509
|
|
Verify Second client: static client configuration |
2022-01-07 10:36:50 |
SUCCESS
|
GetStaticClient2Configuration
Found a static second client object
|
||||||||
|
2022-01-07 10:36:50 | SUCCESS |
ValidateClientJWKsPrivatePart
Valid client JWKs: keys are valid JSON, contain the required fields, the private/public exponents match and are correctly encoded using unpadded base64url
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
2022-01-07 10:36:50 |
|
ValidateMTLSCertificates2Header
No certificate authority found for MTLS
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ValidateMTLSCertificates2Header
MTLS certificates header is valid
|
|
2022-01-07 10:36:50 |
|
ExtractMTLSCertificates2FromConfiguration
No certificate authority found for MTLS
|
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractMTLSCertificates2FromConfiguration
Mutual TLS authentication credentials loaded
|
||||
|
2022-01-07 10:36:50 | SUCCESS |
CheckForKeyIdInClientJWKs
All keys contain kids
|
|
2022-01-07 10:36:50 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
2022-01-07 10:36:50 | SUCCESS |
FAPICheckKeyAlgInClientJWKs
Keys in client JWKS all have permitted 'alg'
|
||
|
2022-01-07 10:36:50 | SUCCESS |
FAPIEnsureMinimumClientKeyLength
Validated minimum key lengths for client_jwks
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
ValidateMTLSCertificatesAsX509
Mutual TLS authentication cert validated as X.509
|
|
2022-01-07 10:36:50 |
SUCCESS
|
GetResourceEndpointConfiguration
Found a resource endpoint object
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
SetProtectedResourceUrlToSingleResourceEndpoint
Set protected resource URL
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractTLSTestValuesFromResourceConfiguration
Extracted TLS information from resource endpoint
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
ExtractTLSTestValuesFromOBResourceConfiguration
Extracted TLS information from resource endpoint
|
||||
|
2022-01-07 10:36:50 |
|
fapi-ciba-id1-refresh-token
Setup Done
|
|
Call backchannel authentication endpoint |
2022-01-07 10:36:50 |
SUCCESS
|
CreateEmptyAuthorizationEndpointRequest
Created empty authorization endpoint request
|
|
2022-01-07 10:36:50 | SUCCESS |
AddScopeToAuthorizationEndpointRequest
Added scope of 'openid email' to authorization endpoint request
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddHintToAuthorizationEndpointRequest
Added hint to authorization endpoint request
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddBindingMessageToAuthorizationEndpointRequest
Added binding message to authorization endpoint request
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
ConvertAuthorizationEndpointRequestToRequestObject
Created request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddIatToRequestObject
Added iat to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddExpToRequestObject
Added exp to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddNbfToRequestObject
Added nbf to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddJtiToRequestObject
Added jti to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddAudToRequestObject
Added aud to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
AddIssToRequestObject
Added iss to request object claims
|
||
|
2022-01-07 10:36:50 | SUCCESS |
SignRequestObject
Signed the request object
|
||||||||
|
2022-01-07 10:36:50 | SUCCESS |
CreateBackchannelAuthenticationEndpointRequest
Created backchannel authentication endpoint request
|
|
2022-01-07 10:36:50 |
|
AddRequestToBackchannelAuthenticationEndpointRequest
|
||
|
2022-01-07 10:36:50 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:36:50 | SUCCESS |
SetClientAuthenticationAudIssuerIdentifierToBackchannelAuthenticationEndpoint
Add Issuer Identifier as aud value to client_assertion_claims
|
||||||||||||
|
2022-01-07 10:36:50 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:36:50 |
|
AddClientAssertionToBackchannelAuthenticationEndpoint
Added client assertion
|
||||||
|
2022-01-07 10:36:50 |
|
CallBackchannelAuthenticationEndpoint
HTTP request
|
||||||||||
|
2022-01-07 10:36:51 |
RESPONSE
|
CallBackchannelAuthenticationEndpoint
HTTP response
|
||||||||
|
2022-01-07 10:36:51 |
|
CallBackchannelAuthenticationEndpoint
Backchannel Authentication endpoint response
|
||
|
2022-01-07 10:36:51 |
SUCCESS
|
CallBackchannelAuthenticationEndpoint
Parsed backchannel authentication endpoint response
|
||||||
|
2022-01-07 10:36:51 | SUCCESS |
CheckBackchannelAuthenticationEndpointHttpStatus200
Backchannel authentication endpoint http status code was 200
|
|
2022-01-07 10:36:51 | SUCCESS |
CheckBackchannelAuthenticationEndpointContentType
Backchannel authentication endpoint Content-Type: header is application/json
|
|
2022-01-07 10:36:51 |
SUCCESS
|
CheckIfBackchannelAuthenticationEndpointResponseError
No error from Backchannel authentication endpoint
|
|
2022-01-07 10:36:51 | SUCCESS |
ValidateAuthenticationRequestId
auth_req_id passed all validation checks
|
|
2022-01-07 10:36:51 | SUCCESS |
EnsureMinimumAuthenticationRequestIdLength
auth_req_id is of sufficient length
|
||||
|
2022-01-07 10:36:51 | SUCCESS |
EnsureMinimumAuthenticationRequestIdEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:36:51 | SUCCESS |
EnsureRecommendedAuthenticationRequestIdEntropy
Calculated entropy
|
||||||
|
2022-01-07 10:36:51 | SUCCESS |
ValidateAuthenticationRequestIdExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:36:51 | SUCCESS |
ValidateAuthenticationRequestIdInterval
interval passed all validation checks
|
||
|
Call token endpoint expecting pending |
2022-01-07 10:36:51 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:36:51 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:36:51 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:36:51 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:36:51 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:36:51 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:36:51 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:36:51 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:36:51 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Verify token endpoint response is pending or slow_down |
2022-01-07 10:36:51 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:36:51 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:36:51 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:36:51 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:36:51 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:36:51 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Call token endpoint expecting pending (second time) |
2022-01-07 10:36:56 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:36:56 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:36:56 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:36:56 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:36:56 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:36:56 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:36:57 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:36:57 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:36:57 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Verify token endpoint response is pending or slow_down |
2022-01-07 10:36:57 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:36:57 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:36:57 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:36:57 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:36:57 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:36:57 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
2022-01-07 10:36:57 |
|
CallAutomatedCibaApprovalEndpoint
If your server supports automated testing, you can set 'automated_ciba_approval_url' in your configuration to a url like https://cibasim.example.com/action?token={auth_req_id}&type={action} (auth_req_id will be automatically substituted for the current auth_req_id by the conformance suite, action will be allow or deny depending on the test)
|
|
Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:02 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:02 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:02 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:02 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:02 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:02 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:03 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:03 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:03 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:03 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:03 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:03 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:03 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:03 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:03 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:10 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:10 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:10 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:10 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:10 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:10 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:11 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:11 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:11 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:11 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:11 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:11 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:11 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:11 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:11 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:21 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:21 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:21 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:21 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:21 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:21 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:22 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:22 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||||||||||||||||
|
2022-01-07 10:37:22 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Verify token endpoint response |
2022-01-07 10:37:22 | SUCCESS |
CheckTokenEndpointHttpStatus200
Token endpoint http status code was 200
|
|
2022-01-07 10:37:22 | SUCCESS |
CheckTokenEndpointCacheHeaders
'pragma' and 'cache-control' headers in token endpoint response contain expected values.
|
||||
|
2022-01-07 10:37:22 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-01-07 10:37:22 | SUCCESS |
CheckForAccessTokenValue
Found an access token
|
||
|
2022-01-07 10:37:22 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-01-07 10:37:22 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-01-07 10:37:22 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:37:22 |
SUCCESS
|
CheckForRefreshTokenValue
Found a refresh token
|
||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureMinimumRefreshTokenLength
Refresh token is of sufficient length
|
||||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureMinimumRefreshTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureMinimumAccessTokenLength
Access token is of sufficient length
|
||||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureMinimumAccessTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:22 | SUCCESS |
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
|
||||||
|
2022-01-07 10:37:22 | SUCCESS |
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
|
|
2022-01-07 10:37:22 | SUCCESS |
EnsureIdTokenContainsKid
kid was found in the ID token header
|
||
|
2022-01-07 10:37:22 | SUCCESS |
ValidateIdTokenSignature
id_token signature validated
|
||
|
2022-01-07 10:37:22 | SUCCESS |
ValidateIdTokenSignatureUsingKid
id_token signature validated
|
||
|
2022-01-07 10:37:22 | SUCCESS |
CheckForSubjectInIdToken
Found 'sub' in id_token
|
||
|
2022-01-07 10:37:22 | SUCCESS |
FAPIValidateIdTokenSigningAlg
id_token was signed with a permitted algorithm
|
||||
|
2022-01-07 10:37:22 | INFO |
FAPIValidateIdTokenEncryptionAlg
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-01-07 10:37:22 | INFO |
FAPIValidateEncryptedIdTokenHasKid
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-01-07 10:37:22 | INFO |
FAPICIBAValidateIdTokenAuthRequestIdClaims
Skipped evaluation due to missing required element: id_token claims.urn:openid:params:jwt:claim:auth_req_id
|
||||||
|
2022-01-07 10:37:22 |
SUCCESS
|
ValidateIdTokenNotIncludeCHashAndSHash
id_token claims correctly does not contain 'c_hash' and 's_hash'
|
||
|
2022-01-07 10:37:22 | SUCCESS |
ExtractAtHash
Extracted at_hash from ID Token
|
||||
|
2022-01-07 10:37:22 |
INFO
|
ExtractRtHash
Couldn't find urn:openid:params:jwt:claim:rt_hash claim in the ID token
|
|
2022-01-07 10:37:22 | INFO |
FAPICIBAValidateRtHash
Skipped evaluation due to missing required object: rt_hash
|
||||
|
2022-01-07 10:37:22 | SUCCESS |
ValidateAtHash
at_hash validated successfully
|
||||||
|
Check for refresh token |
2022-01-07 10:37:22 |
SUCCESS
|
ExtractRefreshTokenFromTokenResponse
Extracted refresh token from response
|
||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureServerConfigurationSupportsRefreshToken
The server configuration indicates support for refresh tokens
|
||
|
2022-01-07 10:37:22 | SUCCESS |
EnsureRefreshTokenContainsAllowedCharactersOnly
Refresh token does not contain any illegal characters
|
|
Refresh Token Request |
2022-01-07 10:37:22 |
SUCCESS
|
CreateRefreshTokenRequest
Created token endpoint request parameters
|
||||
|
2022-01-07 10:37:22 | SUCCESS |
AddScopeToTokenEndpointRequest
Added scope of 'openid email' to token endpoint request
|
||||||
|
2022-01-07 10:37:22 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:22 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:22 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||||
|
2022-01-07 10:37:22 |
SUCCESS
|
WaitForOneSecond
Pausing for 1 seconds
|
|
2022-01-07 10:37:23 |
SUCCESS
|
WaitForOneSecond
Woke up after 1 seconds sleep
|
|
2022-01-07 10:37:23 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:23 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:23 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||||||||||||||||
|
2022-01-07 10:37:23 | SUCCESS |
CheckTokenEndpointHttpStatus200
Token endpoint http status code was 200
|
|
2022-01-07 10:37:23 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
2022-01-07 10:37:23 | SUCCESS |
CheckTokenEndpointCacheHeaders
'pragma' and 'cache-control' headers in token endpoint response contain expected values.
|
||||
|
2022-01-07 10:37:23 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-01-07 10:37:23 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-01-07 10:37:23 | SUCCESS |
CheckTokenTypeIsBearer
Token type is bearer
|
|
2022-01-07 10:37:23 | SUCCESS |
EnsureMinimumAccessTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:23 | SUCCESS |
EnsureAccessTokenContainsAllowedCharactersOnly
Access token does not contain any illegal characters
|
|
2022-01-07 10:37:23 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-01-07 10:37:23 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:37:23 |
SUCCESS
|
EnsureAccessTokenValuesAreDifferent
Access token values are not the same
|
||||
|
2022-01-07 10:37:23 |
SUCCESS
|
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
|
||||||
|
2022-01-07 10:37:23 |
SUCCESS
|
ExtractRefreshTokenFromTokenResponse
Extracted refresh token from response
|
||
|
2022-01-07 10:37:23 | SUCCESS |
EnsureMinimumRefreshTokenLength
Refresh token is of sufficient length
|
||||
|
2022-01-07 10:37:23 | SUCCESS |
EnsureMinimumRefreshTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:23 | SUCCESS |
CompareIdTokenClaims
Validated id token claims successfully
|
||||||||||||
|
Resource server endpoint tests |
2022-01-07 10:37:23 |
|
CreateEmptyResourceEndpointRequestHeaders
Created empty headers
|
||
|
2022-01-07 10:37:23 |
SUCCESS
|
AddFAPIAuthDateToResourceEndpointRequest
Added x-fapi-auth-date to resource endpoint request headers
|
||
|
2022-01-07 10:37:23 |
|
CreateRandomFAPIInteractionId
Created interaction ID
|
||
|
2022-01-07 10:37:23 |
SUCCESS
|
AddFAPIInteractionIdToResourceEndpointRequest
Added x-fapi-interaction-id to resource endpoint request headers
|
||
|
2022-01-07 10:37:23 |
|
CallProtectedResourceWithBearerTokenAndCustomHeaders
HTTP request
|
||||||||||
|
2022-01-07 10:37:24 |
RESPONSE
|
CallProtectedResourceWithBearerTokenAndCustomHeaders
HTTP response
|
||||||||
|
2022-01-07 10:37:24 | SUCCESS |
CallProtectedResourceWithBearerTokenAndCustomHeaders
Got a response from the resource endpoint
|
||||||||
|
2022-01-07 10:37:24 | SUCCESS |
CheckForDateHeaderInResourceResponse
Date header present and validated
|
||||
|
2022-01-07 10:37:24 | SUCCESS |
CheckForFAPIInteractionIdInResourceResponse
Found x-fapi-interaction-id
|
||
|
2022-01-07 10:37:24 | SUCCESS |
EnsureMatchingFAPIInteractionId
Interaction ID matched
|
||
|
2022-01-07 10:37:24 | SUCCESS |
EnsureResourceResponseReturnedJsonContentType
Response content type is json
|
||
|
Second client: Call backchannel authentication endpoint |
2022-01-07 10:37:24 |
SUCCESS
|
CreateEmptyAuthorizationEndpointRequest
Created empty authorization endpoint request
|
|
2022-01-07 10:37:24 | SUCCESS |
AddScopeToAuthorizationEndpointRequest
Added scope of 'openid email' to authorization endpoint request
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddHintToAuthorizationEndpointRequest
Added hint to authorization endpoint request
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddBindingMessageToAuthorizationEndpointRequest
Added binding message to authorization endpoint request
|
||
|
2022-01-07 10:37:24 |
SUCCESS
|
ConvertAuthorizationEndpointRequestToRequestObject
Created request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddIatToRequestObject
Added iat to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddExpToRequestObject
Added exp to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddNbfToRequestObject
Added nbf to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddJtiToRequestObject
Added jti to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddAudToRequestObject
Added aud to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
AddIssToRequestObject
Added iss to request object claims
|
||
|
2022-01-07 10:37:24 | SUCCESS |
SignRequestObject
Signed the request object
|
||||||||
|
2022-01-07 10:37:24 | SUCCESS |
CreateBackchannelAuthenticationEndpointRequest
Created backchannel authentication endpoint request
|
|
2022-01-07 10:37:24 |
|
AddRequestToBackchannelAuthenticationEndpointRequest
|
||
|
2022-01-07 10:37:24 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:24 | SUCCESS |
SetClientAuthenticationAudTokenEndpointToBackchannelAuthenticationEndpoint
Add token_endpoint as aud value to client_assertion_claims - as per section 7.1 of CIBA, 'the OP MUST accept its Issuer Identifier, Token Endpoint URL, or Backchannel Authentication Endpoint URL as values that identify it as an intended audience'
|
||||||||||||
|
2022-01-07 10:37:24 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:24 |
|
AddClientAssertionToBackchannelAuthenticationEndpoint
Added client assertion
|
||||||
|
2022-01-07 10:37:24 |
|
CallBackchannelAuthenticationEndpoint
HTTP request
|
||||||||||
|
2022-01-07 10:37:25 |
RESPONSE
|
CallBackchannelAuthenticationEndpoint
HTTP response
|
||||||||
|
2022-01-07 10:37:25 |
|
CallBackchannelAuthenticationEndpoint
Backchannel Authentication endpoint response
|
||
|
2022-01-07 10:37:25 |
SUCCESS
|
CallBackchannelAuthenticationEndpoint
Parsed backchannel authentication endpoint response
|
||||||
|
2022-01-07 10:37:25 | SUCCESS |
CheckBackchannelAuthenticationEndpointHttpStatus200
Backchannel authentication endpoint http status code was 200
|
|
2022-01-07 10:37:25 | SUCCESS |
CheckBackchannelAuthenticationEndpointContentType
Backchannel authentication endpoint Content-Type: header is application/json
|
|
2022-01-07 10:37:25 |
SUCCESS
|
CheckIfBackchannelAuthenticationEndpointResponseError
No error from Backchannel authentication endpoint
|
|
2022-01-07 10:37:25 | SUCCESS |
ValidateAuthenticationRequestId
auth_req_id passed all validation checks
|
|
2022-01-07 10:37:25 | SUCCESS |
EnsureMinimumAuthenticationRequestIdLength
auth_req_id is of sufficient length
|
||||
|
2022-01-07 10:37:25 | SUCCESS |
EnsureMinimumAuthenticationRequestIdEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:25 | SUCCESS |
EnsureRecommendedAuthenticationRequestIdEntropy
Calculated entropy
|
||||||
|
2022-01-07 10:37:25 | SUCCESS |
ValidateAuthenticationRequestIdExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:37:25 | SUCCESS |
ValidateAuthenticationRequestIdInterval
interval passed all validation checks
|
||
|
Second client: Call token endpoint expecting pending |
2022-01-07 10:37:25 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:25 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:25 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:25 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:25 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:25 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:25 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:25 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:25 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Second client: Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:25 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:25 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:25 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:25 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:25 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:25 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Second client: Call token endpoint expecting pending (second time) |
2022-01-07 10:37:30 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:30 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:30 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:30 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:30 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:30 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:32 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:32 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:32 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Second client: Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:32 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:32 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:32 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:32 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:32 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:32 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
2022-01-07 10:37:32 |
|
CallAutomatedCibaApprovalEndpoint
If your server supports automated testing, you can set 'automated_ciba_approval_url' in your configuration to a url like https://cibasim.example.com/action?token={auth_req_id}&type={action} (auth_req_id will be automatically substituted for the current auth_req_id by the conformance suite, action will be allow or deny depending on the test)
|
|
Second client: Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:37 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:37 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:37 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:37 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:37 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:37 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:37 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:37 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:37 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Second client: Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:37 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:37 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:37 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:37 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:37 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:37 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Second client: Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:44 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:44 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:44 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:44 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:44 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:44 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:45 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
2022-01-07 10:37:45 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:45 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Second client: Verify token endpoint response is pending or slow_down |
2022-01-07 10:37:45 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:45 | SUCCESS |
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:45 | SUCCESS |
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
|
||
|
2022-01-07 10:37:45 | SUCCESS |
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
|
||
|
2022-01-07 10:37:45 | SUCCESS |
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
|
|
2022-01-07 10:37:45 |
SUCCESS
|
EnsureErrorTokenEndpointSlowdownOrAuthorizationPending
error met 'slow_down' or 'authorization_pending'
|
||
|
Second client: Polling token endpoint waiting for user to authenticate |
2022-01-07 10:37:55 |
SUCCESS
|
CreateTokenEndpointRequestForCIBAGrant
|
||
|
2022-01-07 10:37:55 |
|
AddAuthReqIdToTokenEndpointRequest
|
||||
|
2022-01-07 10:37:55 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:55 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:55 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:55 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:56 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:56 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||||||||||||||||
|
2022-01-07 10:37:56 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
Second client: Verify token endpoint response |
2022-01-07 10:37:56 | SUCCESS |
CheckTokenEndpointHttpStatus200
Token endpoint http status code was 200
|
|
2022-01-07 10:37:56 | SUCCESS |
CheckTokenEndpointCacheHeaders
'pragma' and 'cache-control' headers in token endpoint response contain expected values.
|
||||
|
2022-01-07 10:37:56 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-01-07 10:37:56 | SUCCESS |
CheckForAccessTokenValue
Found an access token
|
||
|
2022-01-07 10:37:56 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-01-07 10:37:56 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-01-07 10:37:56 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:37:56 |
SUCCESS
|
CheckForRefreshTokenValue
Found a refresh token
|
||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureMinimumRefreshTokenLength
Refresh token is of sufficient length
|
||||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureMinimumRefreshTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureMinimumAccessTokenLength
Access token is of sufficient length
|
||||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureMinimumAccessTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:56 | SUCCESS |
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
|
||||||
|
2022-01-07 10:37:56 | SUCCESS |
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
|
|
2022-01-07 10:37:56 | SUCCESS |
EnsureIdTokenContainsKid
kid was found in the ID token header
|
||
|
2022-01-07 10:37:56 | SUCCESS |
ValidateIdTokenSignature
id_token signature validated
|
||
|
2022-01-07 10:37:56 | SUCCESS |
ValidateIdTokenSignatureUsingKid
id_token signature validated
|
||
|
2022-01-07 10:37:56 | SUCCESS |
CheckForSubjectInIdToken
Found 'sub' in id_token
|
||
|
2022-01-07 10:37:56 | SUCCESS |
FAPIValidateIdTokenSigningAlg
id_token was signed with a permitted algorithm
|
||||
|
2022-01-07 10:37:56 | INFO |
FAPIValidateIdTokenEncryptionAlg
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-01-07 10:37:56 | INFO |
FAPIValidateEncryptedIdTokenHasKid
Skipped evaluation due to missing required element: id_token jwe_header
|
||||||
|
2022-01-07 10:37:56 | INFO |
FAPICIBAValidateIdTokenAuthRequestIdClaims
Skipped evaluation due to missing required element: id_token claims.urn:openid:params:jwt:claim:auth_req_id
|
||||||
|
2022-01-07 10:37:56 |
SUCCESS
|
ValidateIdTokenNotIncludeCHashAndSHash
id_token claims correctly does not contain 'c_hash' and 's_hash'
|
||
|
2022-01-07 10:37:56 | SUCCESS |
ExtractAtHash
Extracted at_hash from ID Token
|
||||
|
2022-01-07 10:37:56 |
INFO
|
ExtractRtHash
Couldn't find urn:openid:params:jwt:claim:rt_hash claim in the ID token
|
|
2022-01-07 10:37:56 | INFO |
FAPICIBAValidateRtHash
Skipped evaluation due to missing required object: rt_hash
|
||||
|
2022-01-07 10:37:56 | SUCCESS |
ValidateAtHash
at_hash validated successfully
|
||||||
|
Second client: Check for refresh token |
2022-01-07 10:37:56 |
SUCCESS
|
ExtractRefreshTokenFromTokenResponse
Extracted refresh token from response
|
||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureServerConfigurationSupportsRefreshToken
The server configuration indicates support for refresh tokens
|
||
|
2022-01-07 10:37:56 | SUCCESS |
EnsureRefreshTokenContainsAllowedCharactersOnly
Refresh token does not contain any illegal characters
|
|
Second client: Refresh Token Request |
2022-01-07 10:37:56 |
SUCCESS
|
CreateRefreshTokenRequest
Created token endpoint request parameters
|
||||
|
2022-01-07 10:37:56 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:56 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:56 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||
|
2022-01-07 10:37:56 |
SUCCESS
|
WaitForOneSecond
Pausing for 1 seconds
|
|
2022-01-07 10:37:57 |
SUCCESS
|
WaitForOneSecond
Woke up after 1 seconds sleep
|
|
2022-01-07 10:37:57 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:58 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:58 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||||||||||||||||
|
2022-01-07 10:37:58 | SUCCESS |
CheckTokenEndpointHttpStatus200
Token endpoint http status code was 200
|
|
2022-01-07 10:37:58 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
2022-01-07 10:37:58 | SUCCESS |
CheckTokenEndpointCacheHeaders
'pragma' and 'cache-control' headers in token endpoint response contain expected values.
|
||||
|
2022-01-07 10:37:58 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-01-07 10:37:58 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-01-07 10:37:58 | SUCCESS |
CheckTokenTypeIsBearer
Token type is bearer
|
|
2022-01-07 10:37:58 | SUCCESS |
EnsureMinimumAccessTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:58 | SUCCESS |
EnsureAccessTokenContainsAllowedCharactersOnly
Access token does not contain any illegal characters
|
|
2022-01-07 10:37:58 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-01-07 10:37:58 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-01-07 10:37:58 |
SUCCESS
|
EnsureAccessTokenValuesAreDifferent
Access token values are not the same
|
||||
|
2022-01-07 10:37:58 |
SUCCESS
|
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
|
||||||
|
2022-01-07 10:37:58 |
SUCCESS
|
ExtractRefreshTokenFromTokenResponse
Extracted refresh token from response
|
||
|
2022-01-07 10:37:58 | SUCCESS |
EnsureMinimumRefreshTokenLength
Refresh token is of sufficient length
|
||||
|
2022-01-07 10:37:58 | SUCCESS |
EnsureMinimumRefreshTokenEntropy
Calculated shannon entropy seems sufficient
|
||||||
|
2022-01-07 10:37:58 | SUCCESS |
CompareIdTokenClaims
Validated id token claims successfully
|
||||||||||||
|
Second client: Resource server endpoint tests |
2022-01-07 10:37:58 |
|
CreateEmptyResourceEndpointRequestHeaders
Created empty headers
|
||
|
2022-01-07 10:37:58 |
|
CallProtectedResourceWithBearerTokenAndCustomHeaders
HTTP request
|
||||||||||
|
2022-01-07 10:37:58 |
RESPONSE
|
CallProtectedResourceWithBearerTokenAndCustomHeaders
HTTP response
|
||||||||
|
2022-01-07 10:37:58 | SUCCESS |
CallProtectedResourceWithBearerTokenAndCustomHeaders
Got a response from the resource endpoint
|
||||||||
|
2022-01-07 10:37:58 | SUCCESS |
CheckForDateHeaderInResourceResponse
Date header present and validated
|
||||
|
2022-01-07 10:37:58 | SUCCESS |
CheckForFAPIInteractionIdInResourceResponse
Found x-fapi-interaction-id
|
||
|
2022-01-07 10:37:58 | SUCCESS |
EnsureResourceResponseReturnedJsonContentType
Response content type is json
|
||
|
Attempting to use refresh_token issued to client 2 with client 1 |
2022-01-07 10:37:58 |
SUCCESS
|
CreateRefreshTokenRequest
Created token endpoint request parameters
|
||||
|
2022-01-07 10:37:58 | SUCCESS |
AddScopeToTokenEndpointRequest
Added scope of 'openid email' to token endpoint request
|
||||||
|
2022-01-07 10:37:58 |
SUCCESS
|
CreateClientAuthenticationAssertionClaims
Created client assertion claims
|
||||||||||||
|
2022-01-07 10:37:58 |
SUCCESS
|
SignClientAuthenticationAssertion
Signed the client assertion
|
||
|
2022-01-07 10:37:58 |
|
AddClientAssertionToTokenEndpointRequest
Added client assertion
|
||||||||||
|
2022-01-07 10:37:58 |
|
CallTokenEndpointAndReturnFullResponse
HTTP request
|
||||||||||
|
2022-01-07 10:37:59 |
RESPONSE
|
CallTokenEndpointAndReturnFullResponse
HTTP response
|
||||||||
|
2022-01-07 10:37:59 |
SUCCESS
|
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
|
||||
|
2022-01-07 10:37:59 |
SUCCESS
|
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
|
||
|
2022-01-07 10:37:59 | SUCCESS |
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
|
|
2022-01-07 10:37:59 | SUCCESS |
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
|
|
2022-01-07 10:37:59 | SUCCESS |
CheckErrorFromTokenEndpointResponseErrorInvalidGrant
Token Endpoint response error returned expected 'error' of 'invalid_grant'
|
||
|
2022-01-07 10:37:59 |
FINISHED
|
fapi-ciba-id1-refresh-token
Test has run to completion
|
||
|
Unregister dynamically registered client |
2022-01-07 10:37:59 |
INFO
|
UnregisterDynamicallyRegisteredClient
Skipped evaluation due to missing required string: registration_client_uri
|
||
|
Unregister dynamically registered client2 |
2022-01-07 10:37:59 |
INFO
|
UnregisterDynamicallyRegisteredClient
Skipped evaluation due to missing required string: registration_client_uri
|
||
|