Test Summary

Test Results

Expand All Collapse All
All times are UTC
2021-03-28 14:30:39 INFO
TEST-RUNNER
Test instance jQvYtaLYio2KM3a created
baseUrl
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client
variant
{
  "client_auth_type": "client_secret_basic",
  "response_type": "code token",
  "server_metadata": "discovery",
  "response_mode": "form_post",
  "client_registration": "dynamic_client"
}
alias
oidc-provider-discovery-dynamic_client
description
PlusAuth Form Post OP Conformance
planId
WK2ipMiqqcAEM
config
{
  "alias": "oidc-provider-discovery-dynamic_client",
  "server": {
    "discoveryUrl": "https://certification.plusauth.com/.well-known/openid-configuration",
    "login_hint": "bob@example.com"
  },
  "client": {
    "client_name": "first-openid-client"
  },
  "client2": {
    "client_name": "second-openid-client"
  },
  "browser": [
    {
      "match": "https://certification.plusauth.com/oauth/auth*",
      "tasks": [
        {
          "task": "Login",
          "optional": true,
          "match": "https://certification.plusauth.com/signin*",
          "commands": [
            [
              "text",
              "name",
              "username",
              "foo",
              "optional"
            ],
            [
              "text",
              "name",
              "password",
              "bar",
              "optional"
            ],
            [
              "click",
              "class",
              "login-submit"
            ]
          ]
        },
        {
          "task": "Consent",
          "optional": true,
          "match": "https://certification.plusauth.com/signin/consent*",
          "commands": [
            [
              "click",
              "class",
              "login-submit"
            ]
          ]
        },
        {
          "task": "Verify Complete",
          "match": "*/test/*/callback*",
          "commands": [
            [
              "wait",
              "id",
              "submission_complete",
              10
            ]
          ]
        }
      ]
    },
    {
      "match": "https://certification.plusauth.com/logout*",
      "tasks": [
        {
          "task": "Verify Complete",
          "match": "*/test/*/post*"
        }
      ]
    }
  ],
  "description": "PlusAuth Form Post OP Conformance"
}
testName
oidcc-codereuse-30seconds
2021-03-28 14:30:40 SUCCESS
CreateRedirectUri
Created redirect URI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
2021-03-28 14:30:40
GetDynamicServerConfiguration
HTTP request
request_uri
https://certification.plusauth.com/.well-known/openid-configuration
request_method
GET
request_headers
{
  "accept": "text/plain, application/json, application/cbor, application/*+json, */*",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:30:40 RESPONSE
GetDynamicServerConfiguration
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "vary": "Origin",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "4735",
  "date": "Sun, 28 Mar 2021 14:30:40 GMT",
  "x-envoy-upstream-service-time": "8",
  "server": "istio-envoy"
}
response_body
{"acr_values_supported":["urn:mace:incommon:iap:bronze","urn:mace:incommon:iap:silver"],"authorization_endpoint":"https://certification.plusauth.com/oauth/auth","device_authorization_endpoint":"https://certification.plusauth.com/oauth/device/auth","claims_parameter_supported":true,"claims_supported":["sub","birthdate","family_name","gender","given_name","locale","middle_name","name","username","nickname","picture","preferred_username","profile","updated_at","website","zoneinfo","email","email_verified","address","phone_number","phone_number_verified","metadata","roles","roleGroups","permissions","acr","sid","auth_time","iss","amr"],"code_challenge_methods_supported":["S256"],"end_session_endpoint":"https://certification.plusauth.com/logout","check_session_iframe":"https://certification.plusauth.com/session/check","grant_types_supported":["implicit","authorization_code","refresh_token","client_credentials","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange"],"id_token_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"issuer":"https://certification.plusauth.com","jwks_uri":"https://certification.plusauth.com/.well-known/jwks.json","registration_endpoint":"https://certification.plusauth.com/oauth/reg","response_modes_supported":["form_post","fragment","query","web_message","jwt","query.jwt","fragment.jwt","form_post.jwt","web_message.jwt"],"response_types_supported":["code id_token token","code id_token","code token","code","token","id_token token","id_token","none"],"scopes_supported":["openid","offline_access","profile","email","address","phone","metadata","rbac"],"subject_types_supported":["public","pairwise"],"token_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"token_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"token_endpoint":"https://certification.plusauth.com/oauth/token","pushed_authorization_request_endpoint":"https://certification.plusauth.com/oauth/request","request_object_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"request_parameter_supported":true,"request_uri_parameter_supported":true,"require_request_uri_registration":true,"userinfo_endpoint":"https://certification.plusauth.com/me","userinfo_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"authorization_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"introspection_endpoint":"https://certification.plusauth.com/oauth/introspect","introspection_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"introspection_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"introspection_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"revocation_endpoint":"https://certification.plusauth.com/oauth/token/revocation","revocation_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"revocation_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"id_token_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"id_token_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"userinfo_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"userinfo_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"introspection_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"introspection_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"authorization_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"authorization_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"request_object_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"request_object_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"backchannel_logout_supported":true,"backchannel_logout_session_supported":true,"frontchannel_logout_supported":true,"frontchannel_logout_session_supported":true,"tls_client_certificate_bound_access_tokens":true,"claim_types_supported":["normal"]}
2021-03-28 14:30:40
GetDynamicServerConfiguration
Downloaded server configuration
server_config_string
{"acr_values_supported":["urn:mace:incommon:iap:bronze","urn:mace:incommon:iap:silver"],"authorization_endpoint":"https://certification.plusauth.com/oauth/auth","device_authorization_endpoint":"https://certification.plusauth.com/oauth/device/auth","claims_parameter_supported":true,"claims_supported":["sub","birthdate","family_name","gender","given_name","locale","middle_name","name","username","nickname","picture","preferred_username","profile","updated_at","website","zoneinfo","email","email_verified","address","phone_number","phone_number_verified","metadata","roles","roleGroups","permissions","acr","sid","auth_time","iss","amr"],"code_challenge_methods_supported":["S256"],"end_session_endpoint":"https://certification.plusauth.com/logout","check_session_iframe":"https://certification.plusauth.com/session/check","grant_types_supported":["implicit","authorization_code","refresh_token","client_credentials","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange"],"id_token_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"issuer":"https://certification.plusauth.com","jwks_uri":"https://certification.plusauth.com/.well-known/jwks.json","registration_endpoint":"https://certification.plusauth.com/oauth/reg","response_modes_supported":["form_post","fragment","query","web_message","jwt","query.jwt","fragment.jwt","form_post.jwt","web_message.jwt"],"response_types_supported":["code id_token token","code id_token","code token","code","token","id_token token","id_token","none"],"scopes_supported":["openid","offline_access","profile","email","address","phone","metadata","rbac"],"subject_types_supported":["public","pairwise"],"token_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"token_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"token_endpoint":"https://certification.plusauth.com/oauth/token","pushed_authorization_request_endpoint":"https://certification.plusauth.com/oauth/request","request_object_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"request_parameter_supported":true,"request_uri_parameter_supported":true,"require_request_uri_registration":true,"userinfo_endpoint":"https://certification.plusauth.com/me","userinfo_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"authorization_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"introspection_endpoint":"https://certification.plusauth.com/oauth/introspect","introspection_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"introspection_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"introspection_signing_alg_values_supported":["HS256","ES256","EdDSA","PS256","RS256"],"revocation_endpoint":"https://certification.plusauth.com/oauth/token/revocation","revocation_endpoint_auth_methods_supported":["none","client_secret_basic","client_secret_jwt","client_secret_post","private_key_jwt","tls_client_auth","self_signed_tls_client_auth"],"revocation_endpoint_auth_signing_alg_values_supported":["HS256","RS256","PS256","ES256","EdDSA"],"id_token_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"id_token_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"userinfo_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"userinfo_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"introspection_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"introspection_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"authorization_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"authorization_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"request_object_encryption_alg_values_supported":["A128KW","A256KW","ECDH-ES","ECDH-ES+A128KW","ECDH-ES+A256KW","RSA-OAEP"],"request_object_encryption_enc_values_supported":["A128CBC-HS256","A128GCM","A256CBC-HS512","A256GCM"],"backchannel_logout_supported":true,"backchannel_logout_session_supported":true,"frontchannel_logout_supported":true,"frontchannel_logout_session_supported":true,"tls_client_certificate_bound_access_tokens":true,"claim_types_supported":["normal"]}
2021-03-28 14:30:40 SUCCESS
GetDynamicServerConfiguration
Successfully parsed server configuration
acr_values_supported
[
  "urn:mace:incommon:iap:bronze",
  "urn:mace:incommon:iap:silver"
]
authorization_endpoint
https://certification.plusauth.com/oauth/auth
device_authorization_endpoint
https://certification.plusauth.com/oauth/device/auth
claims_parameter_supported
true
claims_supported
[
  "sub",
  "birthdate",
  "family_name",
  "gender",
  "given_name",
  "locale",
  "middle_name",
  "name",
  "username",
  "nickname",
  "picture",
  "preferred_username",
  "profile",
  "updated_at",
  "website",
  "zoneinfo",
  "email",
  "email_verified",
  "address",
  "phone_number",
  "phone_number_verified",
  "metadata",
  "roles",
  "roleGroups",
  "permissions",
  "acr",
  "sid",
  "auth_time",
  "iss",
  "amr"
]
code_challenge_methods_supported
[
  "S256"
]
end_session_endpoint
https://certification.plusauth.com/logout
check_session_iframe
https://certification.plusauth.com/session/check
grant_types_supported
[
  "implicit",
  "authorization_code",
  "refresh_token",
  "client_credentials",
  "urn:ietf:params:oauth:grant-type:device_code",
  "urn:ietf:params:oauth:grant-type:token-exchange"
]
id_token_signing_alg_values_supported
[
  "HS256",
  "ES256",
  "EdDSA",
  "PS256",
  "RS256"
]
issuer
https://certification.plusauth.com
jwks_uri
https://certification.plusauth.com/.well-known/jwks.json
registration_endpoint
https://certification.plusauth.com/oauth/reg
response_modes_supported
[
  "form_post",
  "fragment",
  "query",
  "web_message",
  "jwt",
  "query.jwt",
  "fragment.jwt",
  "form_post.jwt",
  "web_message.jwt"
]
response_types_supported
[
  "code id_token token",
  "code id_token",
  "code token",
  "code",
  "token",
  "id_token token",
  "id_token",
  "none"
]
scopes_supported
[
  "openid",
  "offline_access",
  "profile",
  "email",
  "address",
  "phone",
  "metadata",
  "rbac"
]
subject_types_supported
[
  "public",
  "pairwise"
]
token_endpoint_auth_methods_supported
[
  "none",
  "client_secret_basic",
  "client_secret_jwt",
  "client_secret_post",
  "private_key_jwt",
  "tls_client_auth",
  "self_signed_tls_client_auth"
]
token_endpoint_auth_signing_alg_values_supported
[
  "HS256",
  "RS256",
  "PS256",
  "ES256",
  "EdDSA"
]
token_endpoint
https://certification.plusauth.com/oauth/token
pushed_authorization_request_endpoint
https://certification.plusauth.com/oauth/request
request_object_signing_alg_values_supported
[
  "HS256",
  "RS256",
  "PS256",
  "ES256",
  "EdDSA"
]
request_parameter_supported
true
request_uri_parameter_supported
true
require_request_uri_registration
true
userinfo_endpoint
https://certification.plusauth.com/me
userinfo_signing_alg_values_supported
[
  "HS256",
  "ES256",
  "EdDSA",
  "PS256",
  "RS256"
]
authorization_signing_alg_values_supported
[
  "HS256",
  "ES256",
  "EdDSA",
  "PS256",
  "RS256"
]
introspection_endpoint
https://certification.plusauth.com/oauth/introspect
introspection_endpoint_auth_methods_supported
[
  "none",
  "client_secret_basic",
  "client_secret_jwt",
  "client_secret_post",
  "private_key_jwt",
  "tls_client_auth",
  "self_signed_tls_client_auth"
]
introspection_endpoint_auth_signing_alg_values_supported
[
  "HS256",
  "RS256",
  "PS256",
  "ES256",
  "EdDSA"
]
introspection_signing_alg_values_supported
[
  "HS256",
  "ES256",
  "EdDSA",
  "PS256",
  "RS256"
]
revocation_endpoint
https://certification.plusauth.com/oauth/token/revocation
revocation_endpoint_auth_methods_supported
[
  "none",
  "client_secret_basic",
  "client_secret_jwt",
  "client_secret_post",
  "private_key_jwt",
  "tls_client_auth",
  "self_signed_tls_client_auth"
]
revocation_endpoint_auth_signing_alg_values_supported
[
  "HS256",
  "RS256",
  "PS256",
  "ES256",
  "EdDSA"
]
id_token_encryption_alg_values_supported
[
  "A128KW",
  "A256KW",
  "ECDH-ES",
  "ECDH-ES+A128KW",
  "ECDH-ES+A256KW",
  "RSA-OAEP"
]
id_token_encryption_enc_values_supported
[
  "A128CBC-HS256",
  "A128GCM",
  "A256CBC-HS512",
  "A256GCM"
]
userinfo_encryption_alg_values_supported
[
  "A128KW",
  "A256KW",
  "ECDH-ES",
  "ECDH-ES+A128KW",
  "ECDH-ES+A256KW",
  "RSA-OAEP"
]
userinfo_encryption_enc_values_supported
[
  "A128CBC-HS256",
  "A128GCM",
  "A256CBC-HS512",
  "A256GCM"
]
introspection_encryption_alg_values_supported
[
  "A128KW",
  "A256KW",
  "ECDH-ES",
  "ECDH-ES+A128KW",
  "ECDH-ES+A256KW",
  "RSA-OAEP"
]
introspection_encryption_enc_values_supported
[
  "A128CBC-HS256",
  "A128GCM",
  "A256CBC-HS512",
  "A256GCM"
]
authorization_encryption_alg_values_supported
[
  "A128KW",
  "A256KW",
  "ECDH-ES",
  "ECDH-ES+A128KW",
  "ECDH-ES+A256KW",
  "RSA-OAEP"
]
authorization_encryption_enc_values_supported
[
  "A128CBC-HS256",
  "A128GCM",
  "A256CBC-HS512",
  "A256GCM"
]
request_object_encryption_alg_values_supported
[
  "A128KW",
  "A256KW",
  "ECDH-ES",
  "ECDH-ES+A128KW",
  "ECDH-ES+A256KW",
  "RSA-OAEP"
]
request_object_encryption_enc_values_supported
[
  "A128CBC-HS256",
  "A128GCM",
  "A256CBC-HS512",
  "A256GCM"
]
backchannel_logout_supported
true
backchannel_logout_session_supported
true
frontchannel_logout_supported
true
frontchannel_logout_session_supported
true
tls_client_certificate_bound_access_tokens
true
claim_types_supported
[
  "normal"
]
2021-03-28 14:30:40 SUCCESS
CheckServerConfiguration
Found required server configuration keys
required
[
  "authorization_endpoint",
  "token_endpoint",
  "issuer"
]
2021-03-28 14:30:40 SUCCESS
ExtractTLSTestValuesFromServerConfiguration
Extracted TLS information from authorization server configuration
registration_endpoint
{
  "testHost": "certification.plusauth.com",
  "testPort": 443
}
authorization_endpoint
{
  "testHost": "certification.plusauth.com",
  "testPort": 443
}
token_endpoint
{
  "testHost": "certification.plusauth.com",
  "testPort": 443
}
userinfo_endpoint
{
  "testHost": "certification.plusauth.com",
  "testPort": 443
}
2021-03-28 14:30:40
FetchServerKeys
Fetching server key
jwks_uri
https://certification.plusauth.com/.well-known/jwks.json
2021-03-28 14:30:40
FetchServerKeys
HTTP request
request_uri
https://certification.plusauth.com/.well-known/jwks.json
request_method
GET
request_headers
{
  "accept": "text/plain, application/json, application/cbor, application/*+json, */*",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:30:41 RESPONSE
FetchServerKeys
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "vary": "Origin",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "2810",
  "date": "Sun, 28 Mar 2021 14:30:41 GMT",
  "x-envoy-upstream-service-time": "6",
  "server": "istio-envoy"
}
response_body
{"keys":[{"crv":"P-256","x":"pus2plcFzciOvQRrAfwm45u2NHw-IhjZe0gk55vO--o","y":"McjUvdFc5nd2YEk9PLYw1HoHkYBBL42jtSoqAe4dCzM","kty":"EC","kid":"atDaXCMyhIUMZISEtmnBRX_C4BT7GoJUD4CMYWGbi_o","use":"sig"},{"crv":"P-256","x":"I8yVbnSd4WJjYH3age2eLK_S9sBtP8djG9y50X13yT0","y":"29Jzh2o85AU1LOzK-SamLLHpXT0O439upvRMvvaeMQA","kty":"EC","kid":"g6MupPz7xKWQ0tKtZLcjBlnA2JAv1VH1NWYtPbsDa2o","use":"enc"},{"crv":"secp256k1","x":"65X_LqUa4XNR3ShA8hLtG-1YDKXEdWHagihJkSspdSQ","y":"Mc8XQxxJnjSJjfcrd7hhlZMyQtHU4gANSFBzr1GsKKA","kty":"EC","kid":"cUJPqrATv3GVASHuCADHyW8p8C4wR5H_nTyaf5adzy0","use":"sig"},{"crv":"P-384","x":"rPUdhjvgdhRCox2456G0CIoKaTwZ8GnbYxwjf42QsT3VtPXi3p1c2RVs8XiDutrI","y":"B_lZyUrqzwwiGHRIf5rGIXwzSgrRCoN2Hv01PPnMMeMzHVExMQCpIlkZrXO9bDKm","kty":"EC","kid":"6JVT-_BVPkvO-MljZhfaMeYC-LmZjlWj0SlzJLRA4yk","use":"sig"},{"crv":"P-384","x":"cIPV-GMwYobrMFKUHmgzvaliMUtDwO73Ht7X1AQPIpfBDIS7ovnZkt90DzcPn59P","y":"4V2b3W7jRNZqANOc60LacK1pb62GVF5Dyn2Ra4wzbhRLGDVdD_UoazOW56TZ5tsl","kty":"EC","kid":"mIw-fa5LyZnypKpbddViJjWMjl8B5A-I5A31H_igCd8","use":"enc"},{"crv":"P-521","x":"AWyeRdPc35GRFdiu2dYhFgwcSJoUPw38qmUgG0VZSgsbdWWJxUv_iWWIux9hJono6f_qF-lq2At3xdGVBLR7BF5f","y":"AY7WKdsbjyaMZ4Wh8o8Uy5Bju9WxD6N1A7r5_8o5OFIeqD_hej9FxuQDWC4rxU7Ls84yVVtPRG81TaXRoKBxr5XZ","kty":"EC","kid":"w1A1G94s-hK5YrIqWgmV30gtOZ85yQCP3ZMOPTzbc-0","use":"sig"},{"crv":"Ed25519","x":"kAdD9v4ErkCNxQdNMrf4IIplW6YUYBMWkECnLxnZ2tk","kty":"OKP","kid":"ONnNDJq5ZuIAcJyRHpZyZSDcVFf78F1eRhoElXlYEr8","use":"sig"},{"crv":"P-521","x":"AErKX164tyXiv5BwPMyrjoUGyXJ5hX1X7sRgvI0mnbfZhCRnKL67-q5PmTP31OkzA4xQGmAOyBIZvNSJ1p8txIQ3","y":"ALRaE4Q3SLQPNAW_AXIOke34SFwXq2a5FiMHWY9zpJcmCQk9VJH7bG3AnHY_hxu2R-zC5caLy6TPcSzr9Dy4F0DX","kty":"EC","kid":"xKnQ0Rm1_EMwHefKR9UOt0IwCspmyr93L_GDMO_xqq8","use":"enc"},{"crv":"Ed448","x":"sNcFa_zimfHYOSQNS52N-nOX-CYG4dFXoTeuWHnulTj6Fn3heSObBl2NY5ifB9qyP4MHgnAtiboA","kty":"OKP","kid":"MCsSgS9d92FbCGRyBo91MYcXOtXF9qoOeXz65UR5EF8","use":"sig"},{"e":"AQAB","n":"q18zoa2EagO8rzK9svtdY3U2T7DiyZ6F6RUQcpF0AvUK1z4mANLlfhtasJ01BKSP25xLbO8xF72bOd07sQazQUMumKNuU1p8kzYH5yvXNRrFPg-G6r6NWzhT3qx5ov1jkdc2zqa8yj25DfXP6btFFYqfQoPBaFwSXxHLDOXLBfa5wuLnJFL8Yt6qm5aKaOOEJ_X8CfwKH_ajBUD4MhospWZbe9gyt7gKO28sdo8VdNFCq-OG9FWWCwDgS9AYfXOHIHMNvim6sOSsT__6ETkDqUxqYYPgsANARfASBYZs7FiJMv88Hjpa5BH60gbbdYWrCkq1vGh8u1nu0R6WfsxX6w","kty":"RSA","kid":"9dtTMGokAYuDGQjdE6lyhwR_wM0CgihB-BX6lk6-ZO4","use":"sig"},{"e":"AQAB","n":"xU_pU1APQpq581Q760Nd3UwDwKqjN62NPoXyPWxkTD15H2QDYkPMhbzY5J1TizMGGdegbeN--tnhBxMzIRxqcf83UBKvakYYJBr49dvXQSWqdpn8yG6STmO9kpG94vDQP49VBJ8YmXh6A5104_G2qXfQKe33cexKpJPKNedtDhUGUjOLzhYHjRIAGmWBsaLq5Dcbg1UtLEonzEznjKYPDUGhpE7Ao4eVeVEh0ZlFE3aocORW3xkT7uJFPq0pWBCHwD5PDPHtUQczDbbP4xn4Gr8r-vTHrxhv1WYH0NH61-YHqgG_csDat5ef3m0pJbzx7euitxxcr1bDuesB5g4fCQ","kty":"RSA","kid":"OVJpBKI4nfn-A3ZuYX6xkjNc7KhugIIm-y5Douaj6Sg","use":"enc"}]}
2021-03-28 14:30:41
FetchServerKeys
Found JWK set string
jwk_string
{"keys":[{"crv":"P-256","x":"pus2plcFzciOvQRrAfwm45u2NHw-IhjZe0gk55vO--o","y":"McjUvdFc5nd2YEk9PLYw1HoHkYBBL42jtSoqAe4dCzM","kty":"EC","kid":"atDaXCMyhIUMZISEtmnBRX_C4BT7GoJUD4CMYWGbi_o","use":"sig"},{"crv":"P-256","x":"I8yVbnSd4WJjYH3age2eLK_S9sBtP8djG9y50X13yT0","y":"29Jzh2o85AU1LOzK-SamLLHpXT0O439upvRMvvaeMQA","kty":"EC","kid":"g6MupPz7xKWQ0tKtZLcjBlnA2JAv1VH1NWYtPbsDa2o","use":"enc"},{"crv":"secp256k1","x":"65X_LqUa4XNR3ShA8hLtG-1YDKXEdWHagihJkSspdSQ","y":"Mc8XQxxJnjSJjfcrd7hhlZMyQtHU4gANSFBzr1GsKKA","kty":"EC","kid":"cUJPqrATv3GVASHuCADHyW8p8C4wR5H_nTyaf5adzy0","use":"sig"},{"crv":"P-384","x":"rPUdhjvgdhRCox2456G0CIoKaTwZ8GnbYxwjf42QsT3VtPXi3p1c2RVs8XiDutrI","y":"B_lZyUrqzwwiGHRIf5rGIXwzSgrRCoN2Hv01PPnMMeMzHVExMQCpIlkZrXO9bDKm","kty":"EC","kid":"6JVT-_BVPkvO-MljZhfaMeYC-LmZjlWj0SlzJLRA4yk","use":"sig"},{"crv":"P-384","x":"cIPV-GMwYobrMFKUHmgzvaliMUtDwO73Ht7X1AQPIpfBDIS7ovnZkt90DzcPn59P","y":"4V2b3W7jRNZqANOc60LacK1pb62GVF5Dyn2Ra4wzbhRLGDVdD_UoazOW56TZ5tsl","kty":"EC","kid":"mIw-fa5LyZnypKpbddViJjWMjl8B5A-I5A31H_igCd8","use":"enc"},{"crv":"P-521","x":"AWyeRdPc35GRFdiu2dYhFgwcSJoUPw38qmUgG0VZSgsbdWWJxUv_iWWIux9hJono6f_qF-lq2At3xdGVBLR7BF5f","y":"AY7WKdsbjyaMZ4Wh8o8Uy5Bju9WxD6N1A7r5_8o5OFIeqD_hej9FxuQDWC4rxU7Ls84yVVtPRG81TaXRoKBxr5XZ","kty":"EC","kid":"w1A1G94s-hK5YrIqWgmV30gtOZ85yQCP3ZMOPTzbc-0","use":"sig"},{"crv":"Ed25519","x":"kAdD9v4ErkCNxQdNMrf4IIplW6YUYBMWkECnLxnZ2tk","kty":"OKP","kid":"ONnNDJq5ZuIAcJyRHpZyZSDcVFf78F1eRhoElXlYEr8","use":"sig"},{"crv":"P-521","x":"AErKX164tyXiv5BwPMyrjoUGyXJ5hX1X7sRgvI0mnbfZhCRnKL67-q5PmTP31OkzA4xQGmAOyBIZvNSJ1p8txIQ3","y":"ALRaE4Q3SLQPNAW_AXIOke34SFwXq2a5FiMHWY9zpJcmCQk9VJH7bG3AnHY_hxu2R-zC5caLy6TPcSzr9Dy4F0DX","kty":"EC","kid":"xKnQ0Rm1_EMwHefKR9UOt0IwCspmyr93L_GDMO_xqq8","use":"enc"},{"crv":"Ed448","x":"sNcFa_zimfHYOSQNS52N-nOX-CYG4dFXoTeuWHnulTj6Fn3heSObBl2NY5ifB9qyP4MHgnAtiboA","kty":"OKP","kid":"MCsSgS9d92FbCGRyBo91MYcXOtXF9qoOeXz65UR5EF8","use":"sig"},{"e":"AQAB","n":"q18zoa2EagO8rzK9svtdY3U2T7DiyZ6F6RUQcpF0AvUK1z4mANLlfhtasJ01BKSP25xLbO8xF72bOd07sQazQUMumKNuU1p8kzYH5yvXNRrFPg-G6r6NWzhT3qx5ov1jkdc2zqa8yj25DfXP6btFFYqfQoPBaFwSXxHLDOXLBfa5wuLnJFL8Yt6qm5aKaOOEJ_X8CfwKH_ajBUD4MhospWZbe9gyt7gKO28sdo8VdNFCq-OG9FWWCwDgS9AYfXOHIHMNvim6sOSsT__6ETkDqUxqYYPgsANARfASBYZs7FiJMv88Hjpa5BH60gbbdYWrCkq1vGh8u1nu0R6WfsxX6w","kty":"RSA","kid":"9dtTMGokAYuDGQjdE6lyhwR_wM0CgihB-BX6lk6-ZO4","use":"sig"},{"e":"AQAB","n":"xU_pU1APQpq581Q760Nd3UwDwKqjN62NPoXyPWxkTD15H2QDYkPMhbzY5J1TizMGGdegbeN--tnhBxMzIRxqcf83UBKvakYYJBr49dvXQSWqdpn8yG6STmO9kpG94vDQP49VBJ8YmXh6A5104_G2qXfQKe33cexKpJPKNedtDhUGUjOLzhYHjRIAGmWBsaLq5Dcbg1UtLEonzEznjKYPDUGhpE7Ao4eVeVEh0ZlFE3aocORW3xkT7uJFPq0pWBCHwD5PDPHtUQczDbbP4xn4Gr8r-vTHrxhv1WYH0NH61-YHqgG_csDat5ef3m0pJbzx7euitxxcr1bDuesB5g4fCQ","kty":"RSA","kid":"OVJpBKI4nfn-A3ZuYX6xkjNc7KhugIIm-y5Douaj6Sg","use":"enc"}]}
2021-03-28 14:30:41 SUCCESS
FetchServerKeys
Found server JWK set
server_jwks
{
  "keys": [
    {
      "crv": "P-256",
      "x": "pus2plcFzciOvQRrAfwm45u2NHw-IhjZe0gk55vO--o",
      "y": "McjUvdFc5nd2YEk9PLYw1HoHkYBBL42jtSoqAe4dCzM",
      "kty": "EC",
      "kid": "atDaXCMyhIUMZISEtmnBRX_C4BT7GoJUD4CMYWGbi_o",
      "use": "sig"
    },
    {
      "crv": "P-256",
      "x": "I8yVbnSd4WJjYH3age2eLK_S9sBtP8djG9y50X13yT0",
      "y": "29Jzh2o85AU1LOzK-SamLLHpXT0O439upvRMvvaeMQA",
      "kty": "EC",
      "kid": "g6MupPz7xKWQ0tKtZLcjBlnA2JAv1VH1NWYtPbsDa2o",
      "use": "enc"
    },
    {
      "crv": "secp256k1",
      "x": "65X_LqUa4XNR3ShA8hLtG-1YDKXEdWHagihJkSspdSQ",
      "y": "Mc8XQxxJnjSJjfcrd7hhlZMyQtHU4gANSFBzr1GsKKA",
      "kty": "EC",
      "kid": "cUJPqrATv3GVASHuCADHyW8p8C4wR5H_nTyaf5adzy0",
      "use": "sig"
    },
    {
      "crv": "P-384",
      "x": "rPUdhjvgdhRCox2456G0CIoKaTwZ8GnbYxwjf42QsT3VtPXi3p1c2RVs8XiDutrI",
      "y": "B_lZyUrqzwwiGHRIf5rGIXwzSgrRCoN2Hv01PPnMMeMzHVExMQCpIlkZrXO9bDKm",
      "kty": "EC",
      "kid": "6JVT-_BVPkvO-MljZhfaMeYC-LmZjlWj0SlzJLRA4yk",
      "use": "sig"
    },
    {
      "crv": "P-384",
      "x": "cIPV-GMwYobrMFKUHmgzvaliMUtDwO73Ht7X1AQPIpfBDIS7ovnZkt90DzcPn59P",
      "y": "4V2b3W7jRNZqANOc60LacK1pb62GVF5Dyn2Ra4wzbhRLGDVdD_UoazOW56TZ5tsl",
      "kty": "EC",
      "kid": "mIw-fa5LyZnypKpbddViJjWMjl8B5A-I5A31H_igCd8",
      "use": "enc"
    },
    {
      "crv": "P-521",
      "x": "AWyeRdPc35GRFdiu2dYhFgwcSJoUPw38qmUgG0VZSgsbdWWJxUv_iWWIux9hJono6f_qF-lq2At3xdGVBLR7BF5f",
      "y": "AY7WKdsbjyaMZ4Wh8o8Uy5Bju9WxD6N1A7r5_8o5OFIeqD_hej9FxuQDWC4rxU7Ls84yVVtPRG81TaXRoKBxr5XZ",
      "kty": "EC",
      "kid": "w1A1G94s-hK5YrIqWgmV30gtOZ85yQCP3ZMOPTzbc-0",
      "use": "sig"
    },
    {
      "crv": "Ed25519",
      "x": "kAdD9v4ErkCNxQdNMrf4IIplW6YUYBMWkECnLxnZ2tk",
      "kty": "OKP",
      "kid": "ONnNDJq5ZuIAcJyRHpZyZSDcVFf78F1eRhoElXlYEr8",
      "use": "sig"
    },
    {
      "crv": "P-521",
      "x": "AErKX164tyXiv5BwPMyrjoUGyXJ5hX1X7sRgvI0mnbfZhCRnKL67-q5PmTP31OkzA4xQGmAOyBIZvNSJ1p8txIQ3",
      "y": "ALRaE4Q3SLQPNAW_AXIOke34SFwXq2a5FiMHWY9zpJcmCQk9VJH7bG3AnHY_hxu2R-zC5caLy6TPcSzr9Dy4F0DX",
      "kty": "EC",
      "kid": "xKnQ0Rm1_EMwHefKR9UOt0IwCspmyr93L_GDMO_xqq8",
      "use": "enc"
    },
    {
      "crv": "Ed448",
      "x": "sNcFa_zimfHYOSQNS52N-nOX-CYG4dFXoTeuWHnulTj6Fn3heSObBl2NY5ifB9qyP4MHgnAtiboA",
      "kty": "OKP",
      "kid": "MCsSgS9d92FbCGRyBo91MYcXOtXF9qoOeXz65UR5EF8",
      "use": "sig"
    },
    {
      "e": "AQAB",
      "n": "q18zoa2EagO8rzK9svtdY3U2T7DiyZ6F6RUQcpF0AvUK1z4mANLlfhtasJ01BKSP25xLbO8xF72bOd07sQazQUMumKNuU1p8kzYH5yvXNRrFPg-G6r6NWzhT3qx5ov1jkdc2zqa8yj25DfXP6btFFYqfQoPBaFwSXxHLDOXLBfa5wuLnJFL8Yt6qm5aKaOOEJ_X8CfwKH_ajBUD4MhospWZbe9gyt7gKO28sdo8VdNFCq-OG9FWWCwDgS9AYfXOHIHMNvim6sOSsT__6ETkDqUxqYYPgsANARfASBYZs7FiJMv88Hjpa5BH60gbbdYWrCkq1vGh8u1nu0R6WfsxX6w",
      "kty": "RSA",
      "kid": "9dtTMGokAYuDGQjdE6lyhwR_wM0CgihB-BX6lk6-ZO4",
      "use": "sig"
    },
    {
      "e": "AQAB",
      "n": "xU_pU1APQpq581Q760Nd3UwDwKqjN62NPoXyPWxkTD15H2QDYkPMhbzY5J1TizMGGdegbeN--tnhBxMzIRxqcf83UBKvakYYJBr49dvXQSWqdpn8yG6STmO9kpG94vDQP49VBJ8YmXh6A5104_G2qXfQKe33cexKpJPKNedtDhUGUjOLzhYHjRIAGmWBsaLq5Dcbg1UtLEonzEznjKYPDUGhpE7Ao4eVeVEh0ZlFE3aocORW3xkT7uJFPq0pWBCHwD5PDPHtUQczDbbP4xn4Gr8r-vTHrxhv1WYH0NH61-YHqgG_csDat5ef3m0pJbzx7euitxxcr1bDuesB5g4fCQ",
      "kty": "RSA",
      "kid": "OVJpBKI4nfn-A3ZuYX6xkjNc7KhugIIm-y5Douaj6Sg",
      "use": "enc"
    }
  ]
}
2021-03-28 14:30:41 SUCCESS
CheckServerKeysIsValid
Server JWKs is valid
server_jwks
{
  "keys": [
    {
      "crv": "P-256",
      "x": "pus2plcFzciOvQRrAfwm45u2NHw-IhjZe0gk55vO--o",
      "y": "McjUvdFc5nd2YEk9PLYw1HoHkYBBL42jtSoqAe4dCzM",
      "kty": "EC",
      "kid": "atDaXCMyhIUMZISEtmnBRX_C4BT7GoJUD4CMYWGbi_o",
      "use": "sig"
    },
    {
      "crv": "P-256",
      "x": "I8yVbnSd4WJjYH3age2eLK_S9sBtP8djG9y50X13yT0",
      "y": "29Jzh2o85AU1LOzK-SamLLHpXT0O439upvRMvvaeMQA",
      "kty": "EC",
      "kid": "g6MupPz7xKWQ0tKtZLcjBlnA2JAv1VH1NWYtPbsDa2o",
      "use": "enc"
    },
    {
      "crv": "secp256k1",
      "x": "65X_LqUa4XNR3ShA8hLtG-1YDKXEdWHagihJkSspdSQ",
      "y": "Mc8XQxxJnjSJjfcrd7hhlZMyQtHU4gANSFBzr1GsKKA",
      "kty": "EC",
      "kid": "cUJPqrATv3GVASHuCADHyW8p8C4wR5H_nTyaf5adzy0",
      "use": "sig"
    },
    {
      "crv": "P-384",
      "x": "rPUdhjvgdhRCox2456G0CIoKaTwZ8GnbYxwjf42QsT3VtPXi3p1c2RVs8XiDutrI",
      "y": "B_lZyUrqzwwiGHRIf5rGIXwzSgrRCoN2Hv01PPnMMeMzHVExMQCpIlkZrXO9bDKm",
      "kty": "EC",
      "kid": "6JVT-_BVPkvO-MljZhfaMeYC-LmZjlWj0SlzJLRA4yk",
      "use": "sig"
    },
    {
      "crv": "P-384",
      "x": "cIPV-GMwYobrMFKUHmgzvaliMUtDwO73Ht7X1AQPIpfBDIS7ovnZkt90DzcPn59P",
      "y": "4V2b3W7jRNZqANOc60LacK1pb62GVF5Dyn2Ra4wzbhRLGDVdD_UoazOW56TZ5tsl",
      "kty": "EC",
      "kid": "mIw-fa5LyZnypKpbddViJjWMjl8B5A-I5A31H_igCd8",
      "use": "enc"
    },
    {
      "crv": "P-521",
      "x": "AWyeRdPc35GRFdiu2dYhFgwcSJoUPw38qmUgG0VZSgsbdWWJxUv_iWWIux9hJono6f_qF-lq2At3xdGVBLR7BF5f",
      "y": "AY7WKdsbjyaMZ4Wh8o8Uy5Bju9WxD6N1A7r5_8o5OFIeqD_hej9FxuQDWC4rxU7Ls84yVVtPRG81TaXRoKBxr5XZ",
      "kty": "EC",
      "kid": "w1A1G94s-hK5YrIqWgmV30gtOZ85yQCP3ZMOPTzbc-0",
      "use": "sig"
    },
    {
      "crv": "Ed25519",
      "x": "kAdD9v4ErkCNxQdNMrf4IIplW6YUYBMWkECnLxnZ2tk",
      "kty": "OKP",
      "kid": "ONnNDJq5ZuIAcJyRHpZyZSDcVFf78F1eRhoElXlYEr8",
      "use": "sig"
    },
    {
      "crv": "P-521",
      "x": "AErKX164tyXiv5BwPMyrjoUGyXJ5hX1X7sRgvI0mnbfZhCRnKL67-q5PmTP31OkzA4xQGmAOyBIZvNSJ1p8txIQ3",
      "y": "ALRaE4Q3SLQPNAW_AXIOke34SFwXq2a5FiMHWY9zpJcmCQk9VJH7bG3AnHY_hxu2R-zC5caLy6TPcSzr9Dy4F0DX",
      "kty": "EC",
      "kid": "xKnQ0Rm1_EMwHefKR9UOt0IwCspmyr93L_GDMO_xqq8",
      "use": "enc"
    },
    {
      "crv": "Ed448",
      "x": "sNcFa_zimfHYOSQNS52N-nOX-CYG4dFXoTeuWHnulTj6Fn3heSObBl2NY5ifB9qyP4MHgnAtiboA",
      "kty": "OKP",
      "kid": "MCsSgS9d92FbCGRyBo91MYcXOtXF9qoOeXz65UR5EF8",
      "use": "sig"
    },
    {
      "e": "AQAB",
      "n": "q18zoa2EagO8rzK9svtdY3U2T7DiyZ6F6RUQcpF0AvUK1z4mANLlfhtasJ01BKSP25xLbO8xF72bOd07sQazQUMumKNuU1p8kzYH5yvXNRrFPg-G6r6NWzhT3qx5ov1jkdc2zqa8yj25DfXP6btFFYqfQoPBaFwSXxHLDOXLBfa5wuLnJFL8Yt6qm5aKaOOEJ_X8CfwKH_ajBUD4MhospWZbe9gyt7gKO28sdo8VdNFCq-OG9FWWCwDgS9AYfXOHIHMNvim6sOSsT__6ETkDqUxqYYPgsANARfASBYZs7FiJMv88Hjpa5BH60gbbdYWrCkq1vGh8u1nu0R6WfsxX6w",
      "kty": "RSA",
      "kid": "9dtTMGokAYuDGQjdE6lyhwR_wM0CgihB-BX6lk6-ZO4",
      "use": "sig"
    },
    {
      "e": "AQAB",
      "n": "xU_pU1APQpq581Q760Nd3UwDwKqjN62NPoXyPWxkTD15H2QDYkPMhbzY5J1TizMGGdegbeN--tnhBxMzIRxqcf83UBKvakYYJBr49dvXQSWqdpn8yG6STmO9kpG94vDQP49VBJ8YmXh6A5104_G2qXfQKe33cexKpJPKNedtDhUGUjOLzhYHjRIAGmWBsaLq5Dcbg1UtLEonzEznjKYPDUGhpE7Ao4eVeVEh0ZlFE3aocORW3xkT7uJFPq0pWBCHwD5PDPHtUQczDbbP4xn4Gr8r-vTHrxhv1WYH0NH61-YHqgG_csDat5ef3m0pJbzx7euitxxcr1bDuesB5g4fCQ",
      "kty": "RSA",
      "kid": "OVJpBKI4nfn-A3ZuYX6xkjNc7KhugIIm-y5Douaj6Sg",
      "use": "enc"
    }
  ]
}
2021-03-28 14:30:41 SUCCESS
ValidateServerJWKs
Valid server JWKs: keys are valid JSON, contain the required fields and are correctly encoded using unpadded base64url
2021-03-28 14:30:41 SUCCESS
CheckForKeyIdInServerJWKs
All keys contain kids
2021-03-28 14:30:41 SUCCESS
CheckDistinctKeyIdValueInServerJWKs
Distinct 'kid' value in all keys of server_jwks
see
https://bitbucket.org/openid/connect/issues/1127
2021-03-28 14:30:41 SUCCESS
EnsureServerJwksDoesNotContainPrivateOrSymmetricKeys
Jwks does not contain any private or symmetric keys
2021-03-28 14:30:41 SUCCESS
GetDynamicClientConfiguration
Created dynamic_client_registration_template object from the client configuration.
client_name
first-openid-client
2021-03-28 14:30:41 SUCCESS
GenerateRS256ClientJWKs
Generated client JWKs
client_jwks
{
  "keys": [
    {
      "p": "9_dY4uSQsjt9qgZowqgL8psCSRVYe9pagHQzhZq2-4BoNSBdvQVur0clej2HSSwu_Jj8pJebl7bsVhy0Fn9SVLwD-GnVOSyngAX6ZbD_8N4SlFqp-qdLhmgpGqipi3t2KTP_aVWVpI-isD0y7bvFNJ1MtdjcyudJFUKpj8gubA0",
      "kty": "RSA",
      "q": "4gZrTnx93EtNSwB5j1uWuILW8KPm_acer-hDsUk8UX1MD6VJxL8wszbw1_dWQsRHxzqp_tX2IRZRhxorcnX3nNQBPjLos_TZFyg5cilLYGMJWRBfhARwNLT44lFES3UKX0bwCxvJGdidZRua7MXcQOOIuoYTEWyjnY8JOdwzG5k",
      "d": "ARzHOgFyT4u7L0QEA0aMF4cmseNTE6fqwJRSRfEdCU_tNKXev-DeNdNGRYbWsY5YeMkzEHkcNZjFe4lKf1OKmbnMk7zzwsz6d1F8sq6QJ_IatM058JV7kWlp7HeNsLJ5tUr7VLVbHYlIvL_0PL-NofmmBhtLaHtxmdtoDc-zK_fapJpQ2ZS2Q3hUbfskcU6COblnxTC6yHptf8devdqN0imiA7r4VHtrmW9hV1HnOBxOpRd_36-GpYjyc_1it_KH-O-V2H_mOfJfsykx1oa54dcSx1WAXiFjJ1qi-Erj_HSQCCrNs9-8j42jL51VIQ6e5oiITh52wDVTrwaihq9YoQ",
      "e": "AQAB",
      "use": "sig",
      "qi": "1mp3_Hp_-nMligakLdiZ0e-DCfzpG3MSHzNIKRBx1RGdA3fFMG4HaCdNCi3x5U0qH0x3y88G5WXhAqJpegm7yY4nxMd4kpYXCAR9qQbwU_f2YNVyGC4cHGHZM8zG-BMfuzAM07KoPa0kjXjAuiPSfEMzNNuWpVgs9Mu3jpIwfPU",
      "dp": "mme6QKbE90cWLA6Lo1KTBgHB_ZI-I_lGy6AQCQzbDmbZ_OLnm_FLB_gMfT7dBBJwO7hj8XW6XFF6fvCmry-fK8Zbzo7QSCbnMlAGqNX7uZf_B8Qg_kS4QbyQg9osoP9DB8sqKwQxB2StkIK7OM_or6eXgdDFQ8-bcZKuFSs4xO0",
      "alg": "RS256",
      "dq": "hlsEfHI6KrJEbtoIaHQsIt_7vq3fSFaIQk6RtpfvGA2gIgjB0gdIfq-g-O_YwfWFKWOw23_6P-7RZbrjqrV_DCVl28BNXXOlfEN36mmrmc8lJmE6NfKhdGNDMtzV-PjIwpwbYq8QmqGN5iVDsY1oANaAV0gNm6T1mVoGRPOlGbk",
      "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
    }
  ]
}
public_client_jwks
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "use": "sig",
      "alg": "RS256",
      "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
    }
  ]
}
2021-03-28 14:30:41 SUCCESS
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
see
https://bitbucket.org/openid/connect/issues/1127
2021-03-28 14:30:41 SUCCESS
CreateDynamicRegistrationRequest
Created dynamic registration request
client_name
first-openid-client jQvYtaLYio2KM3a
2021-03-28 14:30:41
AddAuthorizationCodeGrantTypeToDynamicRegistrationRequest
Added 'authorization_code' to 'grant_types'
grant_types
[
  "authorization_code"
]
2021-03-28 14:30:41
AddImplicitGrantTypeToDynamicRegistrationRequest
Added 'implicit' to 'grant_types'
grant_types
[
  "authorization_code",
  "implicit"
]
2021-03-28 14:30:41
AddPublicJwksToDynamicRegistrationRequest
Added client public JWKS to dynamic registration request
dynamic_registration_request
{
  "client_name": "first-openid-client jQvYtaLYio2KM3a",
  "grant_types": [
    "authorization_code",
    "implicit"
  ],
  "jwks": {
    "keys": [
      {
        "kty": "RSA",
        "e": "AQAB",
        "use": "sig",
        "alg": "RS256",
        "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
      }
    ]
  }
}
2021-03-28 14:30:41
AddTokenEndpointAuthMethodToDynamicRegistrationRequestFromEnvironment
Added token endpoint auth method to dynamic registration request
dynamic_registration_request
{
  "client_name": "first-openid-client jQvYtaLYio2KM3a",
  "grant_types": [
    "authorization_code",
    "implicit"
  ],
  "jwks": {
    "keys": [
      {
        "kty": "RSA",
        "e": "AQAB",
        "use": "sig",
        "alg": "RS256",
        "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
      }
    ]
  },
  "token_endpoint_auth_method": "client_secret_basic"
}
2021-03-28 14:30:41
AddResponseTypesArrayToDynamicRegistrationRequestFromEnvironment
Added response_types array to dynamic registration request
dynamic_registration_request
{
  "client_name": "first-openid-client jQvYtaLYio2KM3a",
  "grant_types": [
    "authorization_code",
    "implicit"
  ],
  "jwks": {
    "keys": [
      {
        "kty": "RSA",
        "e": "AQAB",
        "use": "sig",
        "alg": "RS256",
        "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
      }
    ]
  },
  "token_endpoint_auth_method": "client_secret_basic",
  "response_types": [
    "code token"
  ]
}
2021-03-28 14:30:41
AddRedirectUriToDynamicRegistrationRequest
Added redirect_uris array to dynamic registration request
dynamic_registration_request
{
  "client_name": "first-openid-client jQvYtaLYio2KM3a",
  "grant_types": [
    "authorization_code",
    "implicit"
  ],
  "jwks": {
    "keys": [
      {
        "kty": "RSA",
        "e": "AQAB",
        "use": "sig",
        "alg": "RS256",
        "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
      }
    ]
  },
  "token_endpoint_auth_method": "client_secret_basic",
  "response_types": [
    "code token"
  ],
  "redirect_uris": [
    "https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"
  ]
}
2021-03-28 14:30:41
AddContactsToDynamicRegistrationRequest
Added contacts array to dynamic registration request
dynamic_registration_request
{
  "client_name": "first-openid-client jQvYtaLYio2KM3a",
  "grant_types": [
    "authorization_code",
    "implicit"
  ],
  "jwks": {
    "keys": [
      {
        "kty": "RSA",
        "e": "AQAB",
        "use": "sig",
        "alg": "RS256",
        "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
      }
    ]
  },
  "token_endpoint_auth_method": "client_secret_basic",
  "response_types": [
    "code token"
  ],
  "redirect_uris": [
    "https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"
  ],
  "contacts": [
    "certification@oidf.org"
  ]
}
2021-03-28 14:30:41
CallDynamicRegistrationEndpoint
HTTP request
request_uri
https://certification.plusauth.com/oauth/reg
request_method
POST
request_headers
{
  "accept": "application/json",
  "accept-charset": "utf-8",
  "content-type": "application/json",
  "content-length": "752"
}
request_body
{"client_name":"first-openid-client jQvYtaLYio2KM3a","grant_types":["authorization_code","implicit"],"jwks":{"keys":[{"kty":"RSA","e":"AQAB","use":"sig","alg":"RS256","n":"2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"}]},"token_endpoint_auth_method":"client_secret_basic","response_types":["code token"],"redirect_uris":["https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"],"contacts":["certification@oidf.org"]}
2021-03-28 14:30:41 RESPONSE
CallDynamicRegistrationEndpoint
HTTP response
response_status_code
201 CREATED
response_status_text
Created
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "1759",
  "date": "Sun, 28 Mar 2021 14:30:41 GMT",
  "x-envoy-upstream-service-time": "11",
  "server": "istio-envoy"
}
response_body
{"application_type":"web","grant_types":["authorization_code","implicit"],"id_token_signed_response_alg":"RS256","oidc_conformant":true,"post_logout_redirect_uris":[],"require_auth_time":false,"response_types":["code token"],"subject_type":"public","token_endpoint_auth_method":"client_secret_basic","introspection_endpoint_auth_method":"client_secret_basic","introspection_signed_response_alg":"RS256","revocation_endpoint_auth_method":"client_secret_basic","backchannel_logout_session_required":false,"frontchannel_logout_session_required":false,"require_signed_request_object":false,"request_uris":[],"require_pushed_authorization_requests":false,"authorization_signed_response_alg":"RS256","web_message_uris":[],"tls_client_certificate_bound_access_tokens":false,"client_id_issued_at":1616941841,"client_id":"1A7dhdlz7HeOmH6ZMgXJI","client_name":"first-openid-client jQvYtaLYio2KM3a","client_secret_expires_at":0,"client_secret":"y2JBILHVBkfctMqAI6c37YnWzsO3FI27e-Tur2aECMT47adPihI__tG_wX1K8pyc9HMQ-Vnj5SCkyfwOsE4iqg","contacts":["certification@oidf.org"],"jwks":{"keys":[{"kty":"RSA","e":"AQAB","use":"sig","alg":"RS256","n":"2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"}]},"redirect_uris":["https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"],"registration_client_uri":"https://certification.plusauth.com/oauth/reg/1A7dhdlz7HeOmH6ZMgXJI","registration_access_token":"hzLmQIRAlViwrad5Iea_rN_K3gKDtXSwQCPHySN3mOr"}
2021-03-28 14:30:41
CallDynamicRegistrationEndpoint
Registration endpoint response
dynamic_registration_response
{"application_type":"web","grant_types":["authorization_code","implicit"],"id_token_signed_response_alg":"RS256","oidc_conformant":true,"post_logout_redirect_uris":[],"require_auth_time":false,"response_types":["code token"],"subject_type":"public","token_endpoint_auth_method":"client_secret_basic","introspection_endpoint_auth_method":"client_secret_basic","introspection_signed_response_alg":"RS256","revocation_endpoint_auth_method":"client_secret_basic","backchannel_logout_session_required":false,"frontchannel_logout_session_required":false,"require_signed_request_object":false,"request_uris":[],"require_pushed_authorization_requests":false,"authorization_signed_response_alg":"RS256","web_message_uris":[],"tls_client_certificate_bound_access_tokens":false,"client_id_issued_at":1616941841,"client_id":"1A7dhdlz7HeOmH6ZMgXJI","client_name":"first-openid-client jQvYtaLYio2KM3a","client_secret_expires_at":0,"client_secret":"y2JBILHVBkfctMqAI6c37YnWzsO3FI27e-Tur2aECMT47adPihI__tG_wX1K8pyc9HMQ-Vnj5SCkyfwOsE4iqg","contacts":["certification@oidf.org"],"jwks":{"keys":[{"kty":"RSA","e":"AQAB","use":"sig","alg":"RS256","n":"2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"}]},"redirect_uris":["https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"],"registration_client_uri":"https://certification.plusauth.com/oauth/reg/1A7dhdlz7HeOmH6ZMgXJI","registration_access_token":"hzLmQIRAlViwrad5Iea_rN_K3gKDtXSwQCPHySN3mOr"}
2021-03-28 14:30:41
CallDynamicRegistrationEndpoint
Parsed registration endpoint response
application_type
web
grant_types
[
  "authorization_code",
  "implicit"
]
id_token_signed_response_alg
RS256
oidc_conformant
true
post_logout_redirect_uris
[]
require_auth_time
false
response_types
[
  "code token"
]
subject_type
public
token_endpoint_auth_method
client_secret_basic
introspection_endpoint_auth_method
client_secret_basic
introspection_signed_response_alg
RS256
revocation_endpoint_auth_method
client_secret_basic
backchannel_logout_session_required
false
frontchannel_logout_session_required
false
require_signed_request_object
false
request_uris
[]
require_pushed_authorization_requests
false
authorization_signed_response_alg
RS256
web_message_uris
[]
tls_client_certificate_bound_access_tokens
false
client_id_issued_at
1616941841
client_id
1A7dhdlz7HeOmH6ZMgXJI
client_name
first-openid-client jQvYtaLYio2KM3a
client_secret_expires_at
0
client_secret
y2JBILHVBkfctMqAI6c37YnWzsO3FI27e-Tur2aECMT47adPihI__tG_wX1K8pyc9HMQ-Vnj5SCkyfwOsE4iqg
contacts
[
  "certification@oidf.org"
]
jwks
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "use": "sig",
      "alg": "RS256",
      "n": "2u6UNMsyu5yfIfrVLEAXHvAG8vIilF4ahQ25ecNAIpDtOPJ3vA3n7rDkK-eRmciriVteToxwyKJFbP24Ndf3v7sLLP7YmlJ2nlSTu8fBWiVm8Vdw3PYfcDnqYgAe8YVPAUyWcMSrWkDJcYpeVGdO0hcP9LaYC2rsPkaohx0zQJqJny0X7ixrTZdfWx6cKUSE23NcAeWCHzurheDvkSaO4yVp88TEOtIvpIKLojfoM8Bg9ltFx9KNzCkZITlBt_qy4fBJ5ZQzvUFHo744gMgsBRxnMl0Pr2OKe4e29r8oseKKlC2gA8YXzqYhEnncV-zECT0ZO2Vh13Gcy8sLO7ryxQ"
    }
  ]
}
redirect_uris
[
  "https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback"
]
registration_client_uri
https://certification.plusauth.com/oauth/reg/1A7dhdlz7HeOmH6ZMgXJI
registration_access_token
hzLmQIRAlViwrad5Iea_rN_K3gKDtXSwQCPHySN3mOr
2021-03-28 14:30:41 SUCCESS
CallDynamicRegistrationEndpoint
Extracted dynamic registration management credentials
registration_client_uri
https://certification.plusauth.com/oauth/reg/1A7dhdlz7HeOmH6ZMgXJI
registration_access_token
hzLmQIRAlViwrad5Iea_rN_K3gKDtXSwQCPHySN3mOr
2021-03-28 14:30:41
SetScopeInClientConfigurationToOpenId
Set scope in client configuration to "openid"
scope
openid
2021-03-28 14:30:41 SUCCESS
EnsureServerConfigurationSupportsClientSecretBasic
Contents of 'token_endpoint_auth_methods_supported' in discovery document matches expectations.
actual
[
  "none",
  "client_secret_basic",
  "client_secret_jwt",
  "client_secret_post",
  "private_key_jwt",
  "tls_client_auth",
  "self_signed_tls_client_auth"
]
expected
[
  "client_secret_basic"
]
minimum_matches_required
1
2021-03-28 14:30:41 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.
protected_resource_url
https://certification.plusauth.com/me
2021-03-28 14:30:41
oidcc-codereuse-30seconds
Setup Done
Make request to authorization endpoint
2021-03-28 14:30:41 SUCCESS
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
client_id
1A7dhdlz7HeOmH6ZMgXJI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
scope
openid
2021-03-28 14:30:41
CreateRandomStateValue
Created state value
requested_state_length
10
state
JH6W6Welcs
2021-03-28 14:30:41 SUCCESS
AddStateToAuthorizationEndpointRequest
Added state parameter to request
client_id
1A7dhdlz7HeOmH6ZMgXJI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
scope
openid
state
JH6W6Welcs
2021-03-28 14:30:41
CreateRandomNonceValue
Created nonce value
requested_nonce_length
10
nonce
J45bxI0QIo
2021-03-28 14:30:41 SUCCESS
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
client_id
1A7dhdlz7HeOmH6ZMgXJI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
scope
openid
state
JH6W6Welcs
nonce
J45bxI0QIo
2021-03-28 14:30:41 SUCCESS
SetAuthorizationEndpointRequestResponseTypeFromEnvironment
Added response_type parameter to request
client_id
1A7dhdlz7HeOmH6ZMgXJI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
scope
openid
state
JH6W6Welcs
nonce
J45bxI0QIo
response_type
code token
2021-03-28 14:30:41
SetAuthorizationEndpointRequestResponseModeToFormPost
Added response_mode parameter to request
client_id
1A7dhdlz7HeOmH6ZMgXJI
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
scope
openid
state
JH6W6Welcs
nonce
J45bxI0QIo
response_type
code token
response_mode
form_post
2021-03-28 14:30:41 SUCCESS
BuildPlainRedirectToAuthorizationEndpoint
Sending to authorization endpoint
redirect_to_authorization_endpoint
https://certification.plusauth.com/oauth/auth?client_id=1A7dhdlz7HeOmH6ZMgXJI&redirect_uri=https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback&scope=openid&state=JH6W6Welcs&nonce=J45bxI0QIo&response_type=code%20token&response_mode=form_post
2021-03-28 14:30:41 REDIRECT
oidcc-codereuse-30seconds
Redirecting to authorization endpoint
redirect_to
https://certification.plusauth.com/oauth/auth?client_id=1A7dhdlz7HeOmH6ZMgXJI&redirect_uri=https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback&scope=openid&state=JH6W6Welcs&nonce=J45bxI0QIo&response_type=code%20token&response_mode=form_post
2021-03-28 14:30:41
WebRunner
Scripted browser HTTP request
browser
goToUrl
request_method
GET
request_uri
https://certification.plusauth.com/oauth/auth?client_id=1A7dhdlz7HeOmH6ZMgXJI&redirect_uri=https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback&scope=openid&state=JH6W6Welcs&nonce=J45bxI0QIo&response_type=code%20token&response_mode=form_post
2021-03-28 14:30:42 RESPONSE
WebRunner
Scripted browser HTTP response
response_content
<!DOCTYPE html>
<html lang="en" >
<head><script>var PlusAuth = window.PlusAuth = {"client":{"clientName":"first-openid-client jQvYtaLYio2KM3a","applicationType":"web","social":[]},"details":{},"params":{"client_id":"1A7dhdlz7HeOmH6ZMgXJI","nonce":"J45bxI0QIo","redirect_uri":"https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback","response_mode":"form_post","response_type":"code token","scope":"openid","state":"JH6W6Welcs"},"prompt":{"name":"login"},"settings":{}} </script>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  <title>Sign-in</title>
</head>
<body >
<div class="login-card">
  <h1>Login</h1>
  <form autocomplete="off" action="/signin" method="post">
    <input type="hidden" name="provider" value="google">
    <input required type="text" name="username" placeholder="Username" >
    <input required type="password" name="password" placeholder="Password">
    <button type="submit" class="login login-submit">Sign-in</button>
    <button type="submit" class="google-button">
        <span class="google-button__text">Sign in with Google</span>
    </button>
  </form>
</div>
</body >
</html >
response_content_type
text/html
response_status_text
200-OK
response_status_code
200
2021-03-28 14:30:42 INFO
WebRunner
Entering text
task
Login
browser
text
element_type
name
value
foo
url
https://certification.plusauth.com/signin
target
username
2021-03-28 14:30:42 INFO
WebRunner
Entering text
task
Login
browser
text
element_type
name
value
bar
url
https://certification.plusauth.com/signin
target
password
2021-03-28 14:30:42 INFO
WebRunner
Clicking an element
task
Login
browser
click
element_type
class
url
https://certification.plusauth.com/signin
target
login-submit
2021-03-28 14:30:43 INFO
WebRunner
Completed processing of webpage
task
Login
browser
complete
response_status_text
200-OK
match
https://certification.plusauth.com/signin*
url
https://certification.plusauth.com/signin/consent
response_status_code
200
2021-03-28 14:30:43 INFO
WebRunner
Clicking an element
task
Consent
browser
click
element_type
class
url
https://certification.plusauth.com/signin/consent
target
login-submit
2021-03-28 14:30:43 INCOMING
oidcc-codereuse-30seconds
Incoming HTTP request to test instance jQvYtaLYio2KM3a
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/avif,image/webp,image/apng,*/*;q\u003d0.8,application/signed-exchange;v\u003db3;q\u003d0.9",
  "sec-fetch-site": "same-origin",
  "sec-fetch-mode": "navigate",
  "sec-fetch-user": "?1",
  "sec-fetch-dest": "document",
  "referer": "https://certification.plusauth.com/oauth/auth/Sy-BfSoxFLW_oZsiBy5my",
  "accept-encoding": "gzip, deflate, br",
  "accept-language": "en-US",
  "origin": "https://certification.plusauth.com",
  "cache-control": "max-age\u003d0",
  "content-type": "application/x-www-form-urlencoded",
  "x-ssl-cipher": "ECDHE-RSA-AES256-GCM-SHA384",
  "x-ssl-protocol": "TLSv1.2",
  "content-length": "227",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
incoming_path
callback
incoming_body_form_params
{
  "code": "u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD",
  "access_token": "5GbTyY5VYHeWJLKyOu42_pcqi46NNEaVhasyUut6pkq",
  "expires_in": "7200",
  "token_type": "Bearer",
  "scope": "openid",
  "state": "JH6W6Welcs",
  "session_state": "cvQPklKS84eavfa79x9Fz7w8HQIah-R6nC4a63f6ByY"
}
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
code=u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD&access_token=5GbTyY5VYHeWJLKyOu42_pcqi46NNEaVhasyUut6pkq&expires_in=7200&token_type=Bearer&scope=openid&state=JH6W6Welcs&session_state=cvQPklKS84eavfa79x9Fz7w8HQIah-R6nC4a63f6ByY
2021-03-28 14:30:43 SUCCESS
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
implicit_submit
{
  "path": "implicit/whCfdFW9GoZHlCslAjEj",
  "fullUrl": "https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/implicit/whCfdFW9GoZHlCslAjEj"
}
2021-03-28 14:30:43 OUTGOING
oidcc-codereuse-30seconds
Response to HTTP request to test instance jQvYtaLYio2KM3a
outgoing
ModelAndView [view="implicitCallback"; model={implicitSubmitUrl=https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/implicit/whCfdFW9GoZHlCslAjEj, returnUrl=/log-detail.html?log=jQvYtaLYio2KM3a}]
outgoing_path
callback
2021-03-28 14:30:43 INFO
WebRunner
Completed processing of webpage
task
Consent
browser
complete
response_status_text
200-
match
https://certification.plusauth.com/signin/consent*
url
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
response_status_code
200
2021-03-28 14:30:43 INFO
WebRunner
Waiting
regexp
seconds
10
task
Verify Complete
browser
wait
action
element_type
id
url
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
target
submission_complete
2021-03-28 14:30:43 INCOMING
oidcc-codereuse-30seconds
Incoming HTTP request to test instance jQvYtaLYio2KM3a
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36",
  "accept": "*/*",
  "sec-fetch-site": "same-origin",
  "sec-fetch-mode": "navigate",
  "sec-fetch-user": "?1",
  "sec-fetch-dest": "document",
  "referer": "https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback",
  "accept-encoding": "gzip, deflate, br",
  "accept-language": "en-US",
  "cookie": "JSESSIONID\u003d0880B0CEAF72397270B2825EF6E7096C",
  "x-requested-with": "XMLHttpRequest",
  "content-type": "text/plain",
  "x-ssl-cipher": "ECDHE-RSA-AES256-GCM-SHA384",
  "x-ssl-protocol": "TLSv1.2",
  "content-length": "0",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
incoming_path
implicit/whCfdFW9GoZHlCslAjEj
incoming_body_form_params
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
2021-03-28 14:30:43 OUTGOING
oidcc-codereuse-30seconds
Response to HTTP request to test instance jQvYtaLYio2KM3a
outgoing_status_code
204
outgoing_headers
{}
outgoing_body

                                
outgoing_path
implicit/whCfdFW9GoZHlCslAjEj
2021-03-28 14:30:43 SUCCESS
ExtractImplicitHashToCallbackResponse
implicit_hash is empty
2021-03-28 14:30:43 REDIRECT-IN
oidcc-codereuse-30seconds
Authorization endpoint response captured
url_query
{}
headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/avif,image/webp,image/apng,*/*;q\u003d0.8,application/signed-exchange;v\u003db3;q\u003d0.9",
  "sec-fetch-site": "same-origin",
  "sec-fetch-mode": "navigate",
  "sec-fetch-user": "?1",
  "sec-fetch-dest": "document",
  "referer": "https://certification.plusauth.com/oauth/auth/Sy-BfSoxFLW_oZsiBy5my",
  "accept-encoding": "gzip, deflate, br",
  "accept-language": "en-US",
  "origin": "https://certification.plusauth.com",
  "cache-control": "max-age\u003d0",
  "content-type": "application/x-www-form-urlencoded",
  "x-ssl-cipher": "ECDHE-RSA-AES256-GCM-SHA384",
  "x-ssl-protocol": "TLSv1.2",
  "content-length": "227",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
http_method
POST
url_fragment
{}
post_body
{
  "code": "u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD",
  "access_token": "5GbTyY5VYHeWJLKyOu42_pcqi46NNEaVhasyUut6pkq",
  "expires_in": "7200",
  "token_type": "Bearer",
  "scope": "openid",
  "state": "JH6W6Welcs",
  "session_state": "cvQPklKS84eavfa79x9Fz7w8HQIah-R6nC4a63f6ByY"
}
Verify authorization endpoint response
2021-03-28 14:30:43 SUCCESS
CheckCallbackHttpMethodIsPost
HTTP method used at redirect_uri is 'POST'
2021-03-28 14:30:43 SUCCESS
CheckCallbackContentTypeIsFormUrlEncoded
content-type header to redirect_uri has the expected value
content_type
application/x-www-form-urlencoded
expected
application/x-www-form-urlencoded
2021-03-28 14:30:43 SUCCESS
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
2021-03-28 14:30:43 SUCCESS
RejectErrorInUrlQuery
'error' is not present in URL query returned from authorization endpoint
2021-03-28 14:30:43 SUCCESS
CheckMatchingCallbackParameters
Callback parameters successfully verified
2021-03-28 14:30:43
ValidateIssInAuthorizationResponse
No 'iss' value in authorization response.
2021-03-28 14:30:43 SUCCESS
CheckIfAuthorizationEndpointError
No error from authorization endpoint
2021-03-28 14:30:43 SUCCESS
CheckStateInAuthorizationResponse
State in response correctly returned
state
JH6W6Welcs
2021-03-28 14:30:43 SUCCESS
ExtractAuthorizationCodeFromAuthorizationResponse
Found authorization code
code
u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD
2021-03-28 14:30:43 SUCCESS
ExtractAccessTokenFromAuthorizationResponse
Extracted the access token
value
5GbTyY5VYHeWJLKyOu42_pcqi46NNEaVhasyUut6pkq
type
Bearer
Userinfo endpoint tests
2021-03-28 14:30:43
CallProtectedResourceWithBearerToken
HTTP request
request_uri
https://certification.plusauth.com/me
request_method
GET
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Bearer 5GbTyY5VYHeWJLKyOu42_pcqi46NNEaVhasyUut6pkq",
  "accept-charset": "utf-8",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:30:44 INFO
WebRunner
Completed processing of webpage
task
Verify Complete
browser
complete
response_status_text
200-
match
*/test/*/callback*
url
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
response_status_code
200
2021-03-28 14:30:44 RESPONSE
CallProtectedResourceWithBearerToken
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "x-fapi-interaction-id": "c174561c-4fd5-481b-bbf0-d0b53ac84d79",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "25",
  "date": "Sun, 28 Mar 2021 14:30:44 GMT",
  "x-envoy-upstream-service-time": "19",
  "server": "istio-envoy"
}
response_body
{"sub":"certification_1"}
2021-03-28 14:30:44 SUCCESS
CallProtectedResourceWithBearerToken
Got a response from the resource endpoint
headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "x-fapi-interaction-id": "c174561c-4fd5-481b-bbf0-d0b53ac84d79",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "25",
  "date": "Sun, 28 Mar 2021 14:30:44 GMT",
  "x-envoy-upstream-service-time": "19",
  "server": "istio-envoy"
}
status_code
{
  "code": 200
}
body
{"sub":"certification_1"}
2021-03-28 14:30:44 SUCCESS
CreateTokenEndpointRequestForAuthorizationCodeGrant
grant_type
authorization_code
code
u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD
redirect_uri
https://www.certification.openid.net/test/a/oidc-provider-discovery-dynamic_client/callback
2021-03-28 14:30:44 SUCCESS
AddBasicAuthClientSecretAuthenticationParameters
Added basic authorization header
Authorization
Basic MUE3ZGhkbHo3SGVPbUg2Wk1nWEpJOnkySkJJTEhWQmtmY3RNcUFJNmMzN1luV3pzTzNGSTI3ZS1UdXIyYUVDTVQ0N2FkUGloSV9fdEdfd1gxSzhweWM5SE1RLVZuajVTQ2t5ZndPc0U0aXFn
2021-03-28 14:30:44
CallTokenEndpoint
HTTP request
request_uri
https://certification.plusauth.com/oauth/token
request_method
POST
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Basic MUE3ZGhkbHo3SGVPbUg2Wk1nWEpJOnkySkJJTEhWQmtmY3RNcUFJNmMzN1luV3pzTzNGSTI3ZS1UdXIyYUVDTVQ0N2FkUGloSV9fdEdfd1gxSzhweWM5SE1RLVZuajVTQ2t5ZndPc0U0aXFn",
  "accept-charset": "utf-8",
  "content-type": "application/x-www-form-urlencoded;charset\u003dUTF-8",
  "content-length": "197"
}
request_body
grant_type=authorization_code&code=u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD&redirect_uri=https%3A%2F%2Fwww.certification.openid.net%2Ftest%2Fa%2Foidc-provider-discovery-dynamic_client%2Fcallback
2021-03-28 14:30:45 RESPONSE
CallTokenEndpoint
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "834",
  "date": "Sun, 28 Mar 2021 14:30:45 GMT",
  "x-envoy-upstream-service-time": "16",
  "server": "istio-envoy"
}
response_body
{"access_token":"v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w","expires_in":7200,"id_token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA","scope":"openid","token_type":"Bearer"}
2021-03-28 14:30:45
CallTokenEndpoint
Token endpoint response
token_endpoint_response
{"access_token":"v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w","expires_in":7200,"id_token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA","scope":"openid","token_type":"Bearer"}
2021-03-28 14:30:45 SUCCESS
CallTokenEndpoint
Parsed token endpoint response
access_token
v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w
expires_in
7200
id_token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA
scope
openid
token_type
Bearer
2021-03-28 14:30:45 SUCCESS
CheckIfTokenEndpointResponseError
No error from token endpoint
2021-03-28 14:30:45 SUCCESS
CheckForAccessTokenValue
Found an access token
access_token
v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w
2021-03-28 14:30:45 SUCCESS
ExtractAccessTokenFromTokenResponse
Extracted the access token
value
v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w
type
Bearer
2021-03-28 14:30:45 SUCCESS
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
expires_in
7200
2021-03-28 14:30:45 SUCCESS
ValidateExpiresIn
expires_in passed all validation checks
expires_in
7200
2021-03-28 14:30:45 INFO
CheckForRefreshTokenValue
Couldn't find refresh token
2021-03-28 14:30:45 SUCCESS
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
value
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA
header
{
  "kid": "9dtTMGokAYuDGQjdE6lyhwR_wM0CgihB-BX6lk6-ZO4",
  "typ": "JWT",
  "alg": "RS256"
}
claims
{
  "at_hash": "d3E89tk6T3lxPePpzq8QRg",
  "sub": "certification_1",
  "aud": "1A7dhdlz7HeOmH6ZMgXJI",
  "iss": "https://certification.plusauth.com",
  "exp": 1616945445,
  "nonce": "J45bxI0QIo",
  "iat": 1616941845
}
2021-03-28 14:30:45 SUCCESS
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
2021-03-28 14:30:45 SUCCESS
ValidateIdTokenNonce
Nonce values match
nonce
J45bxI0QIo
2021-03-28 14:30:45 SUCCESS
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
2021-03-28 14:30:45 SUCCESS
ValidateIdTokenSignature
id_token signature validated
id_token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA
2021-03-28 14:30:45 SUCCESS
ValidateIdTokenSignatureUsingKid
id_token signature validated
id_token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjlkdFRNR29rQVl1REdRamRFNmx5aHdSX3dNMENnaWhCLUJYNmxrNi1aTzQifQ.eyJzdWIiOiJjZXJ0aWZpY2F0aW9uXzEiLCJub25jZSI6Iko0NWJ4STBRSW8iLCJhdF9oYXNoIjoiZDNFODl0azZUM2x4UGVQcHpxOFFSZyIsImF1ZCI6IjFBN2RoZGx6N0hlT21INlpNZ1hKSSIsImV4cCI6MTYxNjk0NTQ0NSwiaWF0IjoxNjE2OTQxODQ1LCJpc3MiOiJodHRwczovL2NlcnRpZmljYXRpb24ucGx1c2F1dGguY29tIn0.lzSYPogToA0g0mCezUZIRhABLrZ1eVodhOE_LNP8QpArzwOxeyedDuQ19faR7eXibBzHrrk1JTvNvnN_mBOjZqz-_CjumPTzrYfllLgdJo81OrdJN9mZnQnike8lNksc1aKDydF66IoIurcgx4uuHl_bzjm376EedL26pzSZ4YDzAyLrtdhCNsweiN37OWnBDHMMdA0CY-vzMvXOckbRIQqXfokr0sqtmbR6jN0-r6fsEIhf66jCM6wupZnx1RNofigK9f_LXdRgujr5x1me3ejMmHG7AFKY6z356cf6UhW4Fp4lcTcSYK7mjUNgyK0y9lwWI_z9zMpPLuwSPs1GSA
2021-03-28 14:30:45 SUCCESS
CheckForSubjectInIdToken
Found 'sub' in id_token
sub
certification_1
Userinfo endpoint tests
2021-03-28 14:30:45
CallProtectedResourceWithBearerToken
HTTP request
request_uri
https://certification.plusauth.com/me
request_method
GET
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Bearer v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w",
  "accept-charset": "utf-8",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:30:45 RESPONSE
CallProtectedResourceWithBearerToken
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "x-fapi-interaction-id": "08ebd747-b56a-4ef7-97a5-7d6f04a95e32",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "25",
  "date": "Sun, 28 Mar 2021 14:30:45 GMT",
  "x-envoy-upstream-service-time": "12",
  "server": "istio-envoy"
}
response_body
{"sub":"certification_1"}
2021-03-28 14:30:45 SUCCESS
CallProtectedResourceWithBearerToken
Got a response from the resource endpoint
headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "x-fapi-interaction-id": "08ebd747-b56a-4ef7-97a5-7d6f04a95e32",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "25",
  "date": "Sun, 28 Mar 2021 14:30:45 GMT",
  "x-envoy-upstream-service-time": "12",
  "server": "istio-envoy"
}
status_code
{
  "code": 200
}
body
{"sub":"certification_1"}
2021-03-28 14:30:45 SUCCESS
WaitFor30Seconds
Pausing for 30 seconds
2021-03-28 14:31:15 SUCCESS
WaitFor30Seconds
Woke up after 30 seconds sleep
Attempting reuse of authorisation code
2021-03-28 14:31:15
CallTokenEndpointAndReturnFullResponse
HTTP request
request_uri
https://certification.plusauth.com/oauth/token
request_method
POST
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Basic MUE3ZGhkbHo3SGVPbUg2Wk1nWEpJOnkySkJJTEhWQmtmY3RNcUFJNmMzN1luV3pzTzNGSTI3ZS1UdXIyYUVDTVQ0N2FkUGloSV9fdEdfd1gxSzhweWM5SE1RLVZuajVTQ2t5ZndPc0U0aXFn",
  "accept-charset": "utf-8",
  "content-type": "application/x-www-form-urlencoded;charset\u003dUTF-8",
  "content-length": "197"
}
request_body
grant_type=authorization_code&code=u0OSk9HI-5QDbj0bBgD-J2zfIE1e-C5wNNVZJ2GWvoD&redirect_uri=https%3A%2F%2Fwww.certification.openid.net%2Ftest%2Fa%2Foidc-provider-discovery-dynamic_client%2Fcallback
2021-03-28 14:31:16 RESPONSE
CallTokenEndpointAndReturnFullResponse
HTTP response
response_status_code
400 BAD_REQUEST
response_status_text
Bad Request
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "72",
  "date": "Sun, 28 Mar 2021 14:31:16 GMT",
  "x-envoy-upstream-service-time": "18",
  "server": "istio-envoy"
}
response_body
{"error":"invalid_grant","error_description":"grant request is invalid"}
2021-03-28 14:31:16 SUCCESS
CallTokenEndpointAndReturnFullResponse
Parsed token endpoint response
error
invalid_grant
error_description
grant request is invalid
2021-03-28 14:31:16 SUCCESS
CheckTokenEndpointHttpStatus400
Token endpoint http status code was 400
2021-03-28 14:31:16 SUCCESS
CheckTokenEndpointReturnedJsonContentType
token_endpoint_response_headers Content-Type: header is application/json
2021-03-28 14:31:16 SUCCESS
CheckErrorFromTokenEndpointResponseErrorInvalidGrant
Token Endpoint response error returned expected 'error' of 'invalid_grant'
error
invalid_grant
2021-03-28 14:31:16 SUCCESS
ValidateErrorFromTokenEndpointResponseError
Token endpoint response error returned valid 'error' field
error
invalid_grant
2021-03-28 14:31:16 SUCCESS
CheckErrorDescriptionFromTokenEndpointResponseErrorContainsCRLFTAB
token_endpoint_response 'error_description' field does not include CR/LF/TAB
error_description
grant request is invalid
2021-03-28 14:31:16 SUCCESS
ValidateErrorDescriptionFromTokenEndpointResponseError
token_endpoint_response error returned valid 'error_description' field
error_description
grant request is invalid
2021-03-28 14:31:16 SUCCESS
ValidateErrorUriFromTokenEndpointResponseError
token_endpoint_response did not include optional 'error_uri' field
Testing if access token was revoked after the authorization code was reused
2021-03-28 14:31:16
CallProtectedResourceWithBearerTokenExpectingError
HTTP request
request_uri
https://certification.plusauth.com/me
request_method
GET
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Bearer v51spFXRTsFxUo7A8_kp3nH6LcqbYExOAMZG9SXVS4w",
  "accept-charset": "utf-8",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:31:16 RESPONSE
CallProtectedResourceWithBearerTokenExpectingError
HTTP response
response_status_code
401 UNAUTHORIZED
response_status_text
Unauthorized
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "x-fapi-interaction-id": "f53855d0-14a9-4a06-a788-1596c1662eb4",
  "www-authenticate": "Bearer realm\u003d\"https://certification.plusauth.com\", error\u003d\"invalid_token\", error_description\u003d\"invalid token provided\"",
  "content-type": "application/json; charset\u003dutf-8",
  "content-length": "70",
  "date": "Sun, 28 Mar 2021 14:31:16 GMT",
  "x-envoy-upstream-service-time": "10",
  "server": "istio-envoy"
}
response_body
{"error":"invalid_token","error_description":"invalid token provided"}
2021-03-28 14:31:16 SUCCESS
CallProtectedResourceWithBearerTokenExpectingError
Resource endpoint returned error
code
401
body
{"error":"invalid_token","error_description":"invalid token provided"}
status
Unauthorized
2021-03-28 14:31:16 FINISHED
oidcc-codereuse-30seconds
Test has run to completion
testmodule_result
PASSED
Unregister dynamically registered client
2021-03-28 14:31:16
UnregisterDynamicallyRegisteredClient
HTTP request
request_uri
https://certification.plusauth.com/oauth/reg/1A7dhdlz7HeOmH6ZMgXJI
request_method
DELETE
request_headers
{
  "accept": "application/json",
  "accept-charset": "utf-8",
  "authorization": "Bearer hzLmQIRAlViwrad5Iea_rN_K3gKDtXSwQCPHySN3mOr",
  "content-length": "0"
}
request_body

                                
2021-03-28 14:31:17 RESPONSE
UnregisterDynamicallyRegisteredClient
HTTP response
response_status_code
204 NO_CONTENT
response_status_text
No Content
response_headers
{
  "vary": "Origin",
  "pragma": "no-cache",
  "cache-control": "no-cache, no-store",
  "date": "Sun, 28 Mar 2021 14:31:17 GMT",
  "x-envoy-upstream-service-time": "11",
  "server": "istio-envoy"
}
response_body

                                
2021-03-28 14:31:17 SUCCESS
UnregisterDynamicallyRegisteredClient
Client successfully unregistered
2021-03-28 14:31:18
TEST-RUNNER
Alias has now been claimed by another test
alias
oidc-provider-discovery-dynamic_client
new_test_id
3FB02OiWn7whamm
Test Results