Test Name | fapi1-advanced-final-ensure-matching-key-in-authorization-request |
---|---|
Variant | client_auth_type=mtls, fapi_auth_request_method=by_value, fapi_profile=openbanking_brazil, fapi_response_mode=jarm |
Test ID | fdMWcflbqEVW5ps https://www.certification.openid.net/log-detail.html?public=true&log=fdMWcflbqEVW5ps |
Created | 2022-04-06T10:09:15.433913Z |
Description | az.openitio.com testing |
Test Version | 4.1.42 |
Test Owner | 5019191 https://gitlab.com |
Plan ID | bght8ChfYjUM0 https://www.certification.openid.net/plan-detail.html?public=true&plan=bght8ChfYjUM0 |
Exported From | https://www.certification.openid.net |
Exported By | 5019191 https://gitlab.com |
Suite Version | 4.1.42 |
Exported | 2022-04-20 12:26:44 (UTC) |
Status: FINISHED Result: PASSED |
SUCCESS 79 FAILURE 0 WARNING 0 REVIEW 1 INFO 1 |
2022-04-06 10:09:15 |
INFO
|
TEST-RUNNER
Test instance fdMWcflbqEVW5ps created
|
||||||||||||||
|
2022-04-06 10:09:15 |
SUCCESS
|
CreateRedirectUri
Created redirect URI
|
||
|
2022-04-06 10:09:15 |
|
GetDynamicServerConfiguration
HTTP request
|
||||||||
|
2022-04-06 10:09:16 |
RESPONSE
|
GetDynamicServerConfiguration
HTTP response
|
||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
GetDynamicServerConfiguration
Successfully parsed server configuration
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
2022-04-06 10:09:16 | SUCCESS |
AddMTLSEndpointAliasesToEnvironment
Added mtls_endpoint_aliases to environment
|
|
2022-04-06 10:09:16 |
SUCCESS
|
CheckServerConfiguration
Found required server configuration keys
|
||
|
2022-04-06 10:09:16 |
|
FetchServerKeys
Fetching server key
|
||
|
2022-04-06 10:09:16 |
|
FetchServerKeys
HTTP request
|
||||||||
|
2022-04-06 10:09:16 |
RESPONSE
|
FetchServerKeys
HTTP response
|
||||||||
|
2022-04-06 10:09:16 |
|
FetchServerKeys
Found JWK set string
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
FetchServerKeys
Found server JWK set
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
CheckServerKeysIsValid
Server JWKs is valid
|
||
|
2022-04-06 10:09:16 | SUCCESS |
ValidateServerJWKs
Valid server JWKs: keys are valid JSON, contain the required fields and are correctly encoded using unpadded base64url
|
|
2022-04-06 10:09:16 | SUCCESS |
CheckForKeyIdInServerJWKs
All keys contain kids
|
|
2022-04-06 10:09:16 | SUCCESS |
EnsureServerJwksDoesNotContainPrivateOrSymmetricKeys
Jwks does not contain any private or symmetric keys
|
|
2022-04-06 10:09:16 | SUCCESS |
FAPIEnsureMinimumServerKeyLength
Validated minimum key lengths for server_jwks
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
GetStaticClientConfiguration
Found a static client object
|
||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
ValidateMTLSCertificatesHeader
MTLS certificates header is valid
|
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractMTLSCertificatesFromConfiguration
Mutual TLS authentication credentials loaded
|
||||||
|
2022-04-06 10:09:16 | 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-04-06 10:09:16 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
2022-04-06 10:09:16 | SUCCESS |
CheckForKeyIdInClientJWKs
All keys contain kids
|
|
2022-04-06 10:09:16 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
2022-04-06 10:09:16 | SUCCESS |
FAPIBrazilCheckKeyAlgInClientJWKs
Keys in client JWKS all have permitted 'alg'
|
||
|
2022-04-06 10:09:16 | SUCCESS |
FAPIEnsureMinimumClientKeyLength
Validated minimum key lengths for client_jwks
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
ValidateMTLSCertificatesAsX509
Mutual TLS authentication cert validated as X.509
|
|
Verify configuration of second client |
2022-04-06 10:09:16 |
SUCCESS
|
GetStaticClient2Configuration
Found a static second client object
|
||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
ValidateMTLSCertificates2Header
MTLS certificates header is valid
|
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractMTLSCertificates2FromConfiguration
Mutual TLS authentication credentials loaded
|
||||||
|
2022-04-06 10:09:16 | 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-04-06 10:09:16 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
2022-04-06 10:09:16 | SUCCESS |
CheckForKeyIdInClientJWKs
All keys contain kids
|
|
2022-04-06 10:09:16 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
2022-04-06 10:09:16 | SUCCESS |
FAPIBrazilCheckKeyAlgInClientJWKs
Keys in client JWKS all have permitted 'alg'
|
||
|
2022-04-06 10:09:16 | SUCCESS |
FAPIEnsureMinimumClientKeyLength
Validated minimum key lengths for client_jwks
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
ValidateMTLSCertificatesAsX509
Mutual TLS authentication cert validated as X.509
|
|
2022-04-06 10:09:16 |
SUCCESS
|
ValidateClientPrivateKeysAreDifferent
Client signing JWKs have different thumbprints
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
GetResourceEndpointConfiguration
Found a resource endpoint object
|
||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
SetProtectedResourceUrlToSingleResourceEndpoint
Set protected resource URL
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractTLSTestValuesFromResourceConfiguration
Extracted TLS information from resource endpoint
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractTLSTestValuesFromOBResourceConfiguration
Extracted TLS information from resource endpoint
|
||||
|
2022-04-06 10:09:16 |
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Setup Done
|
|
Use client_credentials grant to obtain Brazil consent |
2022-04-06 10:09:16 |
SUCCESS
|
CreateTokenEndpointRequestForClientCredentialsGrant
Created token endpoint request
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
SetConsentsScopeOnTokenEndpointRequest
Set scope parameter to 'consents'
|
||||
|
2022-04-06 10:09:16 |
|
AddClientIdToTokenEndpointRequest
|
||||||
|
2022-04-06 10:09:16 |
|
CallTokenEndpoint
HTTP request
|
||||||||||
|
2022-04-06 10:09:16 |
RESPONSE
|
CallTokenEndpoint
HTTP response
|
||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
CallTokenEndpoint
Parsed token endpoint response
|
||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
CheckIfTokenEndpointResponseError
No error from token endpoint
|
|
2022-04-06 10:09:16 |
SUCCESS
|
CheckForAccessTokenValue
Found an access token
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractAccessTokenFromTokenResponse
Extracted the access token
|
||||
|
2022-04-06 10:09:16 | SUCCESS |
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
|
||
|
2022-04-06 10:09:16 | SUCCESS |
ValidateExpiresIn
expires_in passed all validation checks
|
||
|
2022-04-06 10:09:16 |
|
CreateEmptyResourceEndpointRequestHeaders
Created empty headers
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
AddFAPIAuthDateToResourceEndpointRequest
Added x-fapi-auth-date to resource endpoint request headers
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
FAPIBrazilCreateConsentRequest
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
FAPIBrazilAddExpirationToConsentRequest
Added expiration time to consent request
|
||
|
2022-04-06 10:09:16 |
|
CallConsentEndpointWithBearerToken
HTTP request
|
||||||||||
|
2022-04-06 10:09:16 |
RESPONSE
|
CallConsentEndpointWithBearerToken
HTTP response
|
||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
CallConsentEndpointWithBearerToken
Got a response from the consent endpoint
|
||||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
EnsureHttpStatusCodeIs201
resource endpoint returned the expected http status
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
EnsureContentTypeJson
endpoint_response Content-Type: header is application/json
|
|
2022-04-06 10:09:16 |
SUCCESS
|
FAPIBrazilConsentEndpointResponseValidatePermissions
Consent endpoint response contains expected permissions
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
ExtractConsentIdFromConsentEndpointResponse
Extracted the consent id
|
||
|
2022-04-06 10:09:16 | SUCCESS |
CheckForFAPIInteractionIdInResourceResponse
Found x-fapi-interaction-id
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
FAPIBrazilAddConsentIdToClientScope
Added scope of 'openid accounts consent:2fde4289-8891-46d9-abc3-9f069265a9ce:17b8b82e-b3ec-42a2-bd90-4097028a37f3' to client's scope
|
||||||
|
Make request to authorization endpoint |
2022-04-06 10:09:16 |
SUCCESS
|
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
|
||||||
|
2022-04-06 10:09:16 |
|
CreateRandomStateValue
Created state value
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
AddStateToAuthorizationEndpointRequest
Added state parameter to request
|
||||||||
|
2022-04-06 10:09:16 |
|
CreateRandomNonceValue
Created nonce value
|
||||
|
2022-04-06 10:09:16 |
SUCCESS
|
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
|
||||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseTypeToCode
Added response_type parameter to request
|
||||||||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseModeToJWT
Added response_mode parameter to request
|
||||||||||||||
|
Sign request object containing client_id for client 1 using JWK for client 2 |
2022-04-06 10:09:16 |
SUCCESS
|
ConvertAuthorizationEndpointRequestToRequestObject
Created request object claims
|
||
|
2022-04-06 10:09:16 | SUCCESS |
AddNbfToRequestObject
Added nbf to request object claims
|
||
|
2022-04-06 10:09:16 | SUCCESS |
AddExpToRequestObject
Added exp to request object claims
|
||
|
2022-04-06 10:09:16 | SUCCESS |
AddAudToRequestObject
Added aud to request object claims
|
||
|
2022-04-06 10:09:16 | SUCCESS |
AddIssToRequestObject
Added iss to request object claims
|
||
|
2022-04-06 10:09:16 | SUCCESS |
AddClientIdToRequestObject
Added client_id to request object claims
|
||
|
2022-04-06 10:09:16 |
SUCCESS
|
SignRequestObject
Signed the request object
|
||||||||
|
2022-04-06 10:09:16 |
|
FAPIBrazilEncryptRequestObject
Encrypted the request object
|
||||||
|
2022-04-06 10:09:16 |
SUCCESS
|
BuildRequestObjectByValueRedirectToAuthorizationEndpoint
Sending to authorization endpoint
|
||
|
2022-04-06 10:09:16 |
REDIRECT
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Redirecting to authorization endpoint
|
||
|
2022-04-06 10:09:16 | REVIEW |
ExpectRequestObjectUnverifiableErrorPage
Show request error page
|
||
|
2022-04-06 10:09:24 |
INCOMING
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Incoming HTTP request to /test/a/az-openitio/callback
|
||||||||||||||||||||
|
2022-04-06 10:09:24 |
SUCCESS
|
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
|
||
|
2022-04-06 10:09:24 |
OUTGOING
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Response to HTTP request to test instance fdMWcflbqEVW5ps
|
||||
|
2022-04-06 10:09:25 |
INCOMING
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Incoming HTTP request to /test/a/az-openitio/implicit/KpGSaBXKFsfq7nPvTPKZ
|
||||||||||||||||||||
|
2022-04-06 10:09:25 |
OUTGOING
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Response to HTTP request to test instance fdMWcflbqEVW5ps
|
||||||||
|
2022-04-06 10:09:25 |
SUCCESS
|
ExtractImplicitHashToCallbackResponse
implicit_hash is empty
|
|
2022-04-06 10:09:25 |
REDIRECT-IN
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Authorization endpoint response captured
|
||||||||||
|
Verify authorization endpoint response |
2022-04-06 10:09:25 | SUCCESS |
ExtractJARMFromURLQuery
Found and parsed the jarm_response from callback_query_params
|
||||||
|
2022-04-06 10:09:25 | SUCCESS |
RejectNonJarmResponsesInUrlQuery
Authorization endpoint response only includes the JARM JWT.
|
|
2022-04-06 10:09:25 |
SUCCESS
|
ExtractAuthorizationEndpointResponseFromJARMResponse
Extracted the authorization response
|
||||||||
|
2022-04-06 10:09:26 | SUCCESS |
ValidateJARMResponse
JARM response standard JWT claims are valid
|
|
2022-04-06 10:09:26 | SUCCESS |
ValidateJARMExpRecommendations
JARM response 'exp' is less than 10 minutes
|
||||
|
2022-04-06 10:09:26 | SUCCESS |
ValidateJARMSignatureUsingKid
jarm_response signature validated
|
||
|
2022-04-06 10:09:26 | SUCCESS |
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
|
|
2022-04-06 10:09:26 |
SUCCESS
|
CheckStateInAuthorizationResponse
State in response correctly returned
|
||
|
2022-04-06 10:09:26 | SUCCESS |
EnsureErrorFromAuthorizationEndpointResponse
Authorization endpoint returned an error
|
||||||||
|
2022-04-06 10:09:26 | SUCCESS |
CheckForUnexpectedParametersInErrorResponseFromAuthorizationEndpoint
error response includes only expected parameters
|
||||||||
|
2022-04-06 10:09:26 | SUCCESS |
EnsureInvalidRequestObjectError
Authorization endpoint returned expected 'error' of 'invalid_request_object'
|
||
|
2022-04-06 10:09:26 |
FINISHED
|
fapi1-advanced-final-ensure-matching-key-in-authorization-request
Test has run to completion
|
||
|
2022-04-06 10:09:33 |
|
TEST-RUNNER
Alias has now been claimed by another test
|
||||
|