Test Summary

Test Results

Expand All Collapse All
All times are UTC
2020-07-31 12:24:38 INFO
TEST-RUNNER
Test instance xtgqcf00VT9P7z8 created
baseUrl
https://www.certification.openid.net/test/a/oidf-authlete-core
variant
{
  "client_auth_type": "client_secret_basic",
  "response_type": "code id_token",
  "server_metadata": "static",
  "response_mode": "form_post",
  "client_registration": "static_client"
}
alias
oidf-authlete-core
description
Authlete plain OIDC client secret basic - static server config
planId
f4s0MatdN55iD
config
{
  "alias": "oidf-authlete-core",
  "description": "Authlete plain OIDC client secret basic - static server config",
  "publish": "everything",
  "server": {
    "issuer": "https://fapidev-as.authlete.net/",
    "jwks_uri": "https://fapidev-as.authlete.net/api/jwks",
    "authorization_endpoint": "https://fapidev-www.authlete.net/api/authorization",
    "token_endpoint": "https://fapidev-as.authlete.net/api/token",
    "userinfo_endpoint": "https://fapidev-rs.authlete.net/api/userinfo",
    "acr_values": "urn:mace:incommon:iap:silver urn:openbanking:psd2:sca urn:openbanking:psd2:ca",
    "login_hint": "john"
  },
  "client": {
    "client_id": "470519824180317",
    "client_secret": "Ek2CiuOrmfdhvsjGl037_pscCmYseks4bzSSxc3UZUcr-9Ki2rlCRdg_Mt-Ukc9b-LpajnMUcwmzqgXs-eDKzw"
  },
  "client_secret_post": {
    "client_id": "469894541303688",
    "client_secret": "SGMsD1U1t0iZXChy0YtbnICAfU9ULEgh5MElWNX6iOq0sWYI0TGiTn-4mRDlhsSOQGfWoZwYWqKAubsbrY7nfA"
  },
  "client2": {
    "client_id": "470553331604632",
    "client_secret": "3NLezSFOjyxuERp_cH3zFMbym9oNur3NMdYIJWimiTHEKROvsDTT1-BVfo8AbLNiUgyIbbGcr79n7fkTL7D8qA"
  },
  "browser": [
    {
      "comment": "updates placeholder during the second authorization",
      "match": "https://fapidev-www.authlete.net/api/authorization*",
      "tasks": [
        {
          "task": "Initial Login",
          "match": "https://fapidev-www.authlete.net/api/authorization*",
          "commands": [
            [
              "wait",
              "xpath",
              "//*",
              10,
              ".*Input Login ID and password.*",
              "update-image-placeholder-optional"
            ],
            [
              "text",
              "id",
              "loginId",
              "john",
              "optional"
            ],
            [
              "text",
              "id",
              "password",
              "john",
              "optional"
            ],
            [
              "click",
              "name",
              "authorized"
            ]
          ]
        },
        {
          "task": "Verify Complete",
          "match": "https://*/test/a/oidf-authlete-core/callback*",
          "commands": [
            [
              "wait",
              "id",
              "submission_complete",
              10
            ]
          ]
        }
      ]
    }
  ]
}
testName
oidcc-max-age-1
2020-07-31 12:24:38 SUCCESS
CreateRedirectUri
Created redirect URI
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
2020-07-31 12:24:38 SUCCESS
GetStaticServerConfiguration
Found a static server object
issuer
https://fapidev-as.authlete.net/
jwks_uri
https://fapidev-as.authlete.net/api/jwks
authorization_endpoint
https://fapidev-www.authlete.net/api/authorization
token_endpoint
https://fapidev-as.authlete.net/api/token
userinfo_endpoint
https://fapidev-rs.authlete.net/api/userinfo
acr_values
urn:mace:incommon:iap:silver urn:openbanking:psd2:sca urn:openbanking:psd2:ca
login_hint
john
2020-07-31 12:24:38 SUCCESS
CheckServerConfiguration
Found required server configuration keys
required
[
  "authorization_endpoint",
  "token_endpoint",
  "issuer"
]
2020-07-31 12:24:38 SUCCESS
ExtractTLSTestValuesFromServerConfiguration
Extracted TLS information from authorization server configuration
registration_endpoint
authorization_endpoint
{
  "testHost": "fapidev-www.authlete.net",
  "testPort": 443
}
token_endpoint
{
  "testHost": "fapidev-as.authlete.net",
  "testPort": 443
}
userinfo_endpoint
{
  "testHost": "fapidev-rs.authlete.net",
  "testPort": 443
}
2020-07-31 12:24:38
FetchServerKeys
Fetching server key
jwks_uri
https://fapidev-as.authlete.net/api/jwks
2020-07-31 12:24:38
FetchServerKeys
HTTP request
request_uri
https://fapidev-as.authlete.net/api/jwks
request_method
GET
request_headers
{
  "accept": "text/plain, application/json, application/cbor, application/*+json, */*",
  "content-length": "0"
}
request_body

                                
2020-07-31 12:24:38 RESPONSE
FetchServerKeys
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "date": "Fri, 31 Jul 2020 12:24:38 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "472",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
response_body
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "kid": "authlete-fapidev-api-20180524",
      "n": "nJclr5TJ3Y21Ggt0lz2EO7wWKn6jTaIlMv1sNMy2VmkcSf8EVsFqJ1vSXjFxWvBj7RolFCyaChFwI_jog9c2rAkIwF8Voi5eB3PRjl3OaNRUYILRgLsaclTj02NWMvwbiJ18yJ63D4Ojzif8_RyAHuM3HO2rs6nPEyZMW3Xd0z3Lw099TpIcxA4Ktfo2DliUfMZh9s3lB_f6DSxX5Z9CXqrzNsoCCxqJZ55WuUUNA4LmYl5OgrH8sD7_TvY1QTjjmRzUptgj1S-gwagIjrkn9ooALa8gRN4etKztA2topBn0KO2VwEo_P4iejBn2Z3I2FlQnDNu0t7xNwBhsM2Vg8Q"
    }
  ]
}
2020-07-31 12:24:38
FetchServerKeys
Found JWK set string
jwk_string
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "kid": "authlete-fapidev-api-20180524",
      "n": "nJclr5TJ3Y21Ggt0lz2EO7wWKn6jTaIlMv1sNMy2VmkcSf8EVsFqJ1vSXjFxWvBj7RolFCyaChFwI_jog9c2rAkIwF8Voi5eB3PRjl3OaNRUYILRgLsaclTj02NWMvwbiJ18yJ63D4Ojzif8_RyAHuM3HO2rs6nPEyZMW3Xd0z3Lw099TpIcxA4Ktfo2DliUfMZh9s3lB_f6DSxX5Z9CXqrzNsoCCxqJZ55WuUUNA4LmYl5OgrH8sD7_TvY1QTjjmRzUptgj1S-gwagIjrkn9ooALa8gRN4etKztA2topBn0KO2VwEo_P4iejBn2Z3I2FlQnDNu0t7xNwBhsM2Vg8Q"
    }
  ]
}
2020-07-31 12:24:38 SUCCESS
FetchServerKeys
Found server JWK set
server_jwks
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "kid": "authlete-fapidev-api-20180524",
      "n": "nJclr5TJ3Y21Ggt0lz2EO7wWKn6jTaIlMv1sNMy2VmkcSf8EVsFqJ1vSXjFxWvBj7RolFCyaChFwI_jog9c2rAkIwF8Voi5eB3PRjl3OaNRUYILRgLsaclTj02NWMvwbiJ18yJ63D4Ojzif8_RyAHuM3HO2rs6nPEyZMW3Xd0z3Lw099TpIcxA4Ktfo2DliUfMZh9s3lB_f6DSxX5Z9CXqrzNsoCCxqJZ55WuUUNA4LmYl5OgrH8sD7_TvY1QTjjmRzUptgj1S-gwagIjrkn9ooALa8gRN4etKztA2topBn0KO2VwEo_P4iejBn2Z3I2FlQnDNu0t7xNwBhsM2Vg8Q"
    }
  ]
}
2020-07-31 12:24:38 SUCCESS
CheckServerKeysIsValid
Server JWKs is valid
server_jwks
{
  "keys": [
    {
      "kty": "RSA",
      "e": "AQAB",
      "kid": "authlete-fapidev-api-20180524",
      "n": "nJclr5TJ3Y21Ggt0lz2EO7wWKn6jTaIlMv1sNMy2VmkcSf8EVsFqJ1vSXjFxWvBj7RolFCyaChFwI_jog9c2rAkIwF8Voi5eB3PRjl3OaNRUYILRgLsaclTj02NWMvwbiJ18yJ63D4Ojzif8_RyAHuM3HO2rs6nPEyZMW3Xd0z3Lw099TpIcxA4Ktfo2DliUfMZh9s3lB_f6DSxX5Z9CXqrzNsoCCxqJZ55WuUUNA4LmYl5OgrH8sD7_TvY1QTjjmRzUptgj1S-gwagIjrkn9ooALa8gRN4etKztA2topBn0KO2VwEo_P4iejBn2Z3I2FlQnDNu0t7xNwBhsM2Vg8Q"
    }
  ]
}
2020-07-31 12:24:38 SUCCESS
ValidateServerJWKs
Valid server JWKs: keys are valid JSON, contain the required fields and are correctly encoded using unpadded base64url
2020-07-31 12:24:38 SUCCESS
CheckForKeyIdInServerJWKs
All keys contain kids
2020-07-31 12:24:38 SUCCESS
CheckDistinctKeyIdValueInServerJWKs
Distinct 'kid' value in all keys of server_jwks
see
https://bitbucket.org/openid/connect/issues/1127
2020-07-31 12:24:38 SUCCESS
EnsureServerJwksDoesNotContainPrivateOrSymmetricKeys
Jwks does not contain any private or symmetric keys
2020-07-31 12:24:38 SUCCESS
GetStaticClientConfiguration
Found a static client object
client_id
470519824180317
client_secret
Ek2CiuOrmfdhvsjGl037_pscCmYseks4bzSSxc3UZUcr-9Ki2rlCRdg_Mt-Ukc9b-LpajnMUcwmzqgXs-eDKzw
2020-07-31 12:24:38
SetScopeInClientConfigurationToOpenId
Set scope in client configuration to "openid"
scope
openid
2020-07-31 12:24:38 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://fapidev-rs.authlete.net/api/userinfo
2020-07-31 12:24:38
oidcc-max-age-1
Setup Done
Make request to authorization endpoint
2020-07-31 12:24:38 SUCCESS
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
2020-07-31 12:24:38
CreateRandomStateValue
Created state value
requested_state_length
10
state
u7O9Hf2EN2
2020-07-31 12:24:38 SUCCESS
AddStateToAuthorizationEndpointRequest
Added state parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
u7O9Hf2EN2
2020-07-31 12:24:38
CreateRandomNonceValue
Created nonce value
requested_nonce_length
10
nonce
8ibUNVmqeN
2020-07-31 12:24:38 SUCCESS
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
u7O9Hf2EN2
nonce
8ibUNVmqeN
2020-07-31 12:24:38 SUCCESS
SetAuthorizationEndpointRequestResponseTypeFromEnvironment
Added response_type parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
u7O9Hf2EN2
nonce
8ibUNVmqeN
response_type
code id_token
2020-07-31 12:24:38
SetAuthorizationEndpointRequestResponseModeToFormPost
Added response_mode parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
u7O9Hf2EN2
nonce
8ibUNVmqeN
response_type
code id_token
response_mode
form_post
2020-07-31 12:24:38 SUCCESS
BuildPlainRedirectToAuthorizationEndpoint
Sending to authorization endpoint
redirect_to_authorization_endpoint
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
2020-07-31 12:24:38 REDIRECT
oidcc-max-age-1
Redirecting to authorization endpoint
redirect_to
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
2020-07-31 12:24:38
WebRunner
Scripted browser HTTP request
browser
goToUrl
request_method
GET
request_uri
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
2020-07-31 12:24:38 RESPONSE
WebRunner
Scripted browser HTTP response
response_content
<!doctype html>
<!---->
<!--




-->
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
  <title>FAPI Test Service | Authorization</title>
  <link rel="stylesheet" href="/css/authorization.css">
  <!--  //-->
</head>
<body class="font-default">
  <div id="page_title">FAPI Test Service</div>

  <div id="content">
    <h3 id="client-name">core conformance client secret basic</h3>
    <div class="indent">
      <img id="logo" src="https://button.heenan.me.uk/~joseph/authlete-150x150.png" alt="[Logo] (150x150)">

      <div id="client-summary">
        <p>core conformance client secret basic</p>
        <ul id="client-link-list">
          

          

          
        </ul>
      </div>

      <div style="clear: both;"></div>
    </div>

    
    <h4 id="permissions">Permissions</h4>
    <div class="indent">
      <p>The application is requesting the following permissions.</p>

      <dl id="scope-list">
        
        <dt>openid</dt>
        <dd>A permission to request an OpenID Provider to issue an ID Token. See OpenID Connect Core 1.0, 3.1.2.1. for details.</dd>
        
      </dl>
    </div>
    

    

    

    <h4 id="authorization">Authorization</h4>
    <div class="indent">
      <p>Do you grant authorization to the application?</p>

      <form id="authorization-form" action="/api/authorization/decision" method="POST">
        
        <div id="login-fields" class="indent">
          <div id="login-prompt">Input Login ID and password.</div>
          <input type="text" id="loginId" name="loginId" placeholder="Login ID"
                 autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
                 class="font-default" required value="" >
          <input type="password" id="password" name="password" placeholder="Password"
                 class="font-default" required>
        </div>
        
        
        <div id="authorization-form-buttons">
          <input type="submit" name="authorized" id="authorize-button" value="Authorize" class="font-default"/>
          <input type="submit" name="denied"     id="deny-button"      value="Deny"      class="font-default"/>
        </div>
      </form>
    </div>
  </div>

</body>
</html>
response_content_type
*/*
response_status_text
200-OK
response_status_code
200
2020-07-31 12:24:38 INFO
WebRunner
Waiting
regexp
.*Input Login ID and password.*
seconds
10
task
Initial Login
browser
wait
action
update-image-placeholder-optional
element_type
xpath
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
target
//*
2020-07-31 12:24:38
BROWSER
Skipping optional placeholder update as placeholder not found.
placeholder
2020-07-31 12:24:38 INFO
WebRunner
Entering text
task
Initial Login
browser
text
element_type
id
value
john
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
target
loginId
2020-07-31 12:24:38 INFO
WebRunner
Entering text
task
Initial Login
browser
text
element_type
id
value
john
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
target
password
2020-07-31 12:24:38 INFO
WebRunner
Clicking an element
task
Initial Login
browser
click
element_type
name
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=u7O9Hf2EN2&nonce=8ibUNVmqeN&response_type=code%20id_token&response_mode=form_post
target
authorized
2020-07-31 12:24:39 INCOMING
oidcc-max-age-1
Incoming HTTP request to test instance xtgqcf00VT9P7z8
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/webp,image/apng,*/*;q\u003d0.8",
  "referer": "https://fapidev-www.authlete.net/api/authorization/decision",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "origin": "https://fapidev-www.authlete.net/api/authorization/decision",
  "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": "793",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
incoming_path
callback
incoming_body_form_params
{
  "state": "u7O9Hf2EN2",
  "code": "dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A",
  "id_token": "eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ"
}
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
state=u7O9Hf2EN2&code=dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A&id_token=eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ
2020-07-31 12:24:39 SUCCESS
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
implicit_submit
{
  "path": "implicit/GiNR9dhVzAsyff4kJMqK",
  "fullUrl": "https://www.certification.openid.net/test/a/oidf-authlete-core/implicit/GiNR9dhVzAsyff4kJMqK"
}
2020-07-31 12:24:39 OUTGOING
oidcc-max-age-1
Response to HTTP request to test instance xtgqcf00VT9P7z8
outgoing
ModelAndView [view="implicitCallback"; model={implicitSubmitUrl=https://www.certification.openid.net/test/a/oidf-authlete-core/implicit/GiNR9dhVzAsyff4kJMqK, returnUrl=/log-detail.html?log=xtgqcf00VT9P7z8}]
outgoing_path
callback
2020-07-31 12:24:39 INFO
WebRunner
Completed processing of webpage
task
Initial Login
browser
complete
response_status_text
200-
match
https://fapidev-www.authlete.net/api/authorization*
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
response_status_code
200
2020-07-31 12:24:39 INFO
WebRunner
Waiting
regexp
seconds
10
task
Verify Complete
browser
wait
action
element_type
id
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
target
submission_complete
2020-07-31 12:24:39 INCOMING
oidcc-max-age-1
Incoming HTTP request to test instance xtgqcf00VT9P7z8
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "*/*",
  "referer": "https://www.certification.openid.net/test/a/oidf-authlete-core/callback",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "cookie": "JSESSIONID\u003dAA6A76305D7D33636B0298B7D9F5D104",
  "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/GiNR9dhVzAsyff4kJMqK
incoming_body_form_params
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
2020-07-31 12:24:39 OUTGOING
oidcc-max-age-1
Response to HTTP request to test instance xtgqcf00VT9P7z8
outgoing
org.springframework.web.servlet.view.RedirectView: [RedirectView]; URL [/log-detail.html?log=xtgqcf00VT9P7z8]
outgoing_path
implicit/GiNR9dhVzAsyff4kJMqK
2020-07-31 12:24:39 SUCCESS
ExtractImplicitHashToCallbackResponse
implicit_hash is empty
2020-07-31 12:24:39 REDIRECT-IN
oidcc-max-age-1
Authorization endpoint response captured
url_query
{}
headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/webp,image/apng,*/*;q\u003d0.8",
  "referer": "https://fapidev-www.authlete.net/api/authorization/decision",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "origin": "https://fapidev-www.authlete.net/api/authorization/decision",
  "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": "793",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
http_method
POST
url_fragment
{}
post_body
{
  "state": "u7O9Hf2EN2",
  "code": "dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A",
  "id_token": "eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ"
}
Verify authorization endpoint response
2020-07-31 12:24:39 SUCCESS
CheckCallbackHttpMethodIsPost
HTTP method used at redirect_uri is 'POST'
2020-07-31 12:24:39 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
2020-07-31 12:24:39 SUCCESS
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
2020-07-31 12:24:39 SUCCESS
RejectErrorInUrlQuery
'error' is not present in URL query returned from authorization endpoint
2020-07-31 12:24:39 SUCCESS
CheckMatchingCallbackParameters
Callback parameters successfully verified
2020-07-31 12:24:39 SUCCESS
CheckIfAuthorizationEndpointError
No error from authorization endpoint
2020-07-31 12:24:39 SUCCESS
CheckMatchingStateParameter
State parameter correctly returned
state
u7O9Hf2EN2
2020-07-31 12:24:39 SUCCESS
ExtractAuthorizationCodeFromAuthorizationResponse
Found authorization code
code
dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A
2020-07-31 12:24:39 SUCCESS
ExtractIdTokenFromAuthorizationResponse
Found and parsed the id_token from authorization_endpoint_response
value
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ
header
{
  "kid": "authlete-fapidev-api-20180524",
  "alg": "RS256"
}
claims
{
  "sub": "1001",
  "aud": "470519824180317",
  "c_hash": "viPZh_sc3thzlrPmiKmoUg",
  "s_hash": "lAb00qRHj_oPGp0yE7tnCw",
  "auth_time": 1596198278,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198578,
  "iat": 1596198278,
  "nonce": "8ibUNVmqeN"
}
2020-07-31 12:24:39 SUCCESS
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenNonce
Nonce values match
nonce
8ibUNVmqeN
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenSignature
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenSignatureUsingKid
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJ2aVBaaF9zYzN0aHpsclBtaUttb1VnIiwic19oYXNoIjoibEFiMDBxUkhqX29QR3AweUU3dG5DdyIsImF1dGhfdGltZSI6MTU5NjE5ODI3OCwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1NzgsImlhdCI6MTU5NjE5ODI3OCwibm9uY2UiOiI4aWJVTlZtcWVOIn0.SAGkV1hKLldD6wq9hxD5p-iG-2gYcmbweGTsWhTrx8AwvcHiByrgo56g8C5Jy3vkNhzVDNFo54k2Tn9zzQZhHW1s2kap4MCBQm8eGj1Pm6r5_wwDHr6WFr0dOvm31LPpqjKm0WtJ_64SPUVjMFwgTpBNGRpeB9AswTg3N_6NAGhMc5SmcRGbUQvLFXl-QLVAFt8kPWXCudssGXKkli2XXDHkLHa6Tz2YmHsy4NJmeuZDcxoQNoF9ekG2xYQeIZ00QdkYOqHLV-VXuBToWo3yjZJuIfCDJj_hwGXXrh1KdWfbszEPF_amhEbl-gGLKB4GReqDzkUsNifSyjH18nZ4DQ
2020-07-31 12:24:39 SUCCESS
CheckForSubjectInIdToken
Found 'sub' in id_token
sub
1001
2020-07-31 12:24:39 SUCCESS
CreateTokenEndpointRequestForAuthorizationCodeGrant
grant_type
authorization_code
code
dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
2020-07-31 12:24:39 SUCCESS
AddBasicAuthClientSecretAuthenticationParameters
Added basic authorization header
Authorization
Basic NDcwNTE5ODI0MTgwMzE3OkVrMkNpdU9ybWZkaHZzakdsMDM3X3BzY0NtWXNla3M0YnpTU3hjM1VaVWNyLTlLaTJybENSZGdfTXQtVWtjOWItTHBham5NVWN3bXpxZ1hzLWVES3p3
2020-07-31 12:24:39
CallTokenEndpoint
HTTP request
request_uri
https://fapidev-as.authlete.net/api/token
request_method
POST
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Basic NDcwNTE5ODI0MTgwMzE3OkVrMkNpdU9ybWZkaHZzakdsMDM3X3BzY0NtWXNla3M0YnpTU3hjM1VaVWNyLTlLaTJybENSZGdfTXQtVWtjOWItTHBham5NVWN3bXpxZ1hzLWVES3p3",
  "accept-charset": "utf-8",
  "content-type": "application/x-www-form-urlencoded;charset\u003dUTF-8",
  "content-length": "177"
}
request_body
grant_type=authorization_code&code=dQIiW73KOtufnZ2JHoJiMmDiqsR0kyDXoXf1b-MA39A&redirect_uri=https%3A%2F%2Fwww.certification.openid.net%2Ftest%2Fa%2Foidf-authlete-core%2Fcallback
2020-07-31 12:24:39 INFO
WebRunner
Completed processing of webpage
task
Verify Complete
browser
complete
response_status_text
200-
match
https://*/test/a/oidf-authlete-core/callback*
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
response_status_code
200
2020-07-31 12:24:39 RESPONSE
CallTokenEndpoint
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "date": "Fri, 31 Jul 2020 12:24:39 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "1512",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
response_body
{"access_token":"eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg","refresh_token":"AKOsY3tdRK-wFBerPRLUX5B7qucqbfj-YwSK8d08uYo","scope":"openid","id_token":"eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg","token_type":"Bearer","expires_in":86400}
2020-07-31 12:24:39
CallTokenEndpoint
Token endpoint response
token_endpoint_response
{"access_token":"eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg","refresh_token":"AKOsY3tdRK-wFBerPRLUX5B7qucqbfj-YwSK8d08uYo","scope":"openid","id_token":"eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg","token_type":"Bearer","expires_in":86400}
2020-07-31 12:24:39 SUCCESS
CallTokenEndpoint
Parsed token endpoint response
access_token
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg
refresh_token
AKOsY3tdRK-wFBerPRLUX5B7qucqbfj-YwSK8d08uYo
scope
openid
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg
token_type
Bearer
expires_in
86400
2020-07-31 12:24:39 SUCCESS
CheckIfTokenEndpointResponseError
No error from token endpoint
2020-07-31 12:24:39 SUCCESS
CheckForAccessTokenValue
Found an access token
access_token
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg
2020-07-31 12:24:39 SUCCESS
ExtractAccessTokenFromTokenResponse
Extracted the access token
value
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg
type
Bearer
2020-07-31 12:24:39 SUCCESS
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
expires_in
86400
2020-07-31 12:24:39 SUCCESS
ValidateExpiresIn
expires_in passed all validation checks
expires_in
86400
2020-07-31 12:24:39 SUCCESS
CheckForRefreshTokenValue
Found a refresh token
refresh_token
AKOsY3tdRK-wFBerPRLUX5B7qucqbfj-YwSK8d08uYo
2020-07-31 12:24:39 SUCCESS
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
value
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg
header
{
  "kid": "authlete-fapidev-api-20180524",
  "alg": "RS256"
}
claims
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "lAb00qRHj_oPGp0yE7tnCw",
  "auth_time": 1596198278,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198579,
  "iat": 1596198279,
  "nonce": "8ibUNVmqeN"
}
2020-07-31 12:24:39 SUCCESS
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenNonce
Nonce values match
nonce
8ibUNVmqeN
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenSignature
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg
2020-07-31 12:24:39 SUCCESS
ValidateIdTokenSignatureUsingKid
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJsQWIwMHFSSGpfb1BHcDB5RTd0bkN3IiwiYXV0aF90aW1lIjoxNTk2MTk4Mjc4LCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU3OSwiaWF0IjoxNTk2MTk4Mjc5LCJub25jZSI6IjhpYlVOVm1xZU4ifQ.cdQFI4gg5parHtcopTkTeqa94S_SBZy12NteO7L_ufrMEA-SGjf1OoteFPCEKjZp4cQopYO_xsMw6u-XE7K-qyBB6IgKqWCIzs2JcgWEnvvzXwq16TZN9WcIQnbcFoWw4c_nmB4IdH_1j88kDz5FmsK0v2xtSAAZja4WIaoNpy4rybPhlqKs_yFkl1dUOB1vQGW6VE97wwtBwo4zpFdM3GYkk81wLqkwNFsfOu_IERGJiXqbHY0M7FU3ZsbDWKFsSfH9bn2fJKuiXO5IdOH6OcrJlTrYQTUFl1HvONPVGFxVYB9Tp1V6LQ1egyIK0VkzSGOXQt-xp1l4fIC-QtnNOg
2020-07-31 12:24:39 SUCCESS
CheckForSubjectInIdToken
Found 'sub' in id_token
sub
1001
2020-07-31 12:24:39 SUCCESS
VerifyIdTokenSubConsistentHybridFlow
authorization endpoint and token endpoint id_token have same sub
sub_auth_endpoint
1001
sub_token_endpoint
1001
Userinfo endpoint tests
2020-07-31 12:24:39
CallProtectedResourceWithBearerToken
HTTP request
request_uri
https://fapidev-rs.authlete.net/api/userinfo
request_method
GET
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Bearer eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY3OSwiaWF0IjoxNTk2MTk4Mjc5LCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJSNUM1dGJEcWRWbTlLSExXWnp6bk53OU5Jbno0SExsb0w3TFptMEp6RW5rIn0.McQgJJ_E0sfPdvvUQ4flZKs35BMNSnmG2YBAP3iJxNr1Y8SiLSvo97MKMOkoWonmKc-7bVKneFH9XCZlb7ZqIuYztwodN-8KusoRjgq38zwSZS3t0Pj4bGKnQLI475YIUjufZ5p8ekahH_CgeVVBKmCAv9_A6LSJqAQzUEv7DlW1WKW7tALFDkUGWK_Z3Bo8h-IYFuLTFncyDFBt1KVzHXC75u6Ku6wm0OvIx-861ZOjuJyWoXo5utY_POultlzisp4vMWngxxaRD0nNqfllAp0xp9Tjxw6ROPLa29jfCNUHANZpbtW13YIkNS31CM_LY6W8Nws_1TPl40nkP0NxMg",
  "accept-charset": "utf-8",
  "content-length": "0"
}
request_body

                                
2020-07-31 12:24:40 RESPONSE
CallProtectedResourceWithBearerToken
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "date": "Fri, 31 Jul 2020 12:24:40 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "14",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
response_body
{"sub":"1001"}
2020-07-31 12:24:40 SUCCESS
CallProtectedResourceWithBearerToken
Got a response from the resource endpoint
headers
{
  "date": "Fri, 31 Jul 2020 12:24:40 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "14",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
status_code
{
  "code": 200
}
body
{"sub":"1001"}
Second authorization: Make request to authorization endpoint
2020-07-31 12:24:40 SUCCESS
WaitFor2Seconds
Pausing for 2 seconds
2020-07-31 12:24:42 SUCCESS
WaitFor2Seconds
Woke up after 2 seconds sleep
2020-07-31 12:24:42 SUCCESS
CreateAuthorizationEndpointRequestFromClientInformation
Created authorization endpoint request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
2020-07-31 12:24:42
CreateRandomStateValue
Created state value
requested_state_length
10
state
MkDeGymAbS
2020-07-31 12:24:42 SUCCESS
AddStateToAuthorizationEndpointRequest
Added state parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
MkDeGymAbS
2020-07-31 12:24:42
CreateRandomNonceValue
Created nonce value
requested_nonce_length
10
nonce
FDeqjxDel2
2020-07-31 12:24:42 SUCCESS
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
MkDeGymAbS
nonce
FDeqjxDel2
2020-07-31 12:24:42 SUCCESS
SetAuthorizationEndpointRequestResponseTypeFromEnvironment
Added response_type parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
MkDeGymAbS
nonce
FDeqjxDel2
response_type
code id_token
2020-07-31 12:24:42
SetAuthorizationEndpointRequestResponseModeToFormPost
Added response_mode parameter to request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
MkDeGymAbS
nonce
FDeqjxDel2
response_type
code id_token
response_mode
form_post
2020-07-31 12:24:42 SUCCESS
AddMaxAge1ToAuthorizationEndpointRequest
Added max_age=1 to authorization endpoint request
client_id
470519824180317
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
scope
openid
state
MkDeGymAbS
nonce
FDeqjxDel2
response_type
code id_token
response_mode
form_post
max_age
1
2020-07-31 12:24:42 SUCCESS
BuildPlainRedirectToAuthorizationEndpoint
Sending to authorization endpoint
redirect_to_authorization_endpoint
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
2020-07-31 12:24:42 REDIRECT
oidcc-max-age-1
Redirecting to authorization endpoint
redirect_to
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
2020-07-31 12:24:42 REVIEW
ExpectSecondLoginPage
The server must ask the user to login for a second time; a screenshot of this must be uploaded.
content_type
*/*
page_source
<?xml version="1.0" encoding="ISO-8859-1"?>
<html>
  <head>
    <meta charset="UTF-8"/>
    <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes"/>
    <title>
      FAPI Test Service | Authorization
    </title>
    <link rel="stylesheet" href="/css/authorization.css"/>
    <!--  //-->  </head>
  <body class="font-default">
    <div id="page_title">
      FAPI Test Service
    </div>
    <div id="content">
      <h3 id="client-name">
        core conformance client secret basic
      </h3>
      <div class="indent">
        <img id="logo" src="https://button.heenan.me.uk/~joseph/authlete-150x150.png" alt="[Logo] (150x150)"/>
        <div id="client-summary">
          <p>
            core conformance client secret basic
          </p>
          <ul id="client-link-list">
          </ul>
        </div>
        <div style="clear: both;">
        </div>
      </div>
      <h4 id="permissions">
        Permissions
      </h4>
      <div class="indent">
        <p>
          The application is requesting the following permissions.
        </p>
        <dl id="scope-list">
          <dt>
            openid
          </dt>
          <dd>
            A permission to request an OpenID Provider to issue an ID Token. See OpenID Connect Core 1.0, 3.1.2.1. for details.
          </dd>
        </dl>
      </div>
      <h4 id="authorization">
        Authorization
      </h4>
      <div class="indent">
        <p>
          Do you grant authorization to the application?
        </p>
        <form id="authorization-form" action="/api/authorization/decision" method="POST">
          <div id="login-fields" class="indent">
            <div id="login-prompt">
              Input Login ID and password.
            </div>
            <input type="text" id="loginId" name="loginId" placeholder="Login ID" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" class="font-default" required="" value=""/>
            <input type="password" id="password" name="password" placeholder="Password" class="font-default" required=""/>
          </div>
          <div id="authorization-form-buttons">
            <input type="submit" name="authorized" id="authorize-button" value="Authorize" class="font-default"/>
            <input type="submit" name="denied" id="deny-button" value="Deny" class="font-default"/>
          </div>
        </form>
      </div>
    </div>
  </body>
</html>
2020-07-31 12:24:42
WebRunner
Scripted browser HTTP request
browser
goToUrl
request_method
GET
request_uri
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
2020-07-31 12:24:42 RESPONSE
WebRunner
Scripted browser HTTP response
response_content
<!doctype html>
<!---->
<!--




-->
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
  <title>FAPI Test Service | Authorization</title>
  <link rel="stylesheet" href="/css/authorization.css">
  <!--  //-->
</head>
<body class="font-default">
  <div id="page_title">FAPI Test Service</div>

  <div id="content">
    <h3 id="client-name">core conformance client secret basic</h3>
    <div class="indent">
      <img id="logo" src="https://button.heenan.me.uk/~joseph/authlete-150x150.png" alt="[Logo] (150x150)">

      <div id="client-summary">
        <p>core conformance client secret basic</p>
        <ul id="client-link-list">
          

          

          
        </ul>
      </div>

      <div style="clear: both;"></div>
    </div>

    
    <h4 id="permissions">Permissions</h4>
    <div class="indent">
      <p>The application is requesting the following permissions.</p>

      <dl id="scope-list">
        
        <dt>openid</dt>
        <dd>A permission to request an OpenID Provider to issue an ID Token. See OpenID Connect Core 1.0, 3.1.2.1. for details.</dd>
        
      </dl>
    </div>
    

    

    

    <h4 id="authorization">Authorization</h4>
    <div class="indent">
      <p>Do you grant authorization to the application?</p>

      <form id="authorization-form" action="/api/authorization/decision" method="POST">
        
        <div id="login-fields" class="indent">
          <div id="login-prompt">Input Login ID and password.</div>
          <input type="text" id="loginId" name="loginId" placeholder="Login ID"
                 autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
                 class="font-default" required value="" >
          <input type="password" id="password" name="password" placeholder="Password"
                 class="font-default" required>
        </div>
        
        
        <div id="authorization-form-buttons">
          <input type="submit" name="authorized" id="authorize-button" value="Authorize" class="font-default"/>
          <input type="submit" name="denied"     id="deny-button"      value="Deny"      class="font-default"/>
        </div>
      </form>
    </div>
  </div>

</body>
</html>
response_content_type
*/*
response_status_text
200-OK
response_status_code
200
2020-07-31 12:24:42 INFO
WebRunner
Waiting
regexp
.*Input Login ID and password.*
seconds
10
task
Initial Login
browser
wait
action
update-image-placeholder-optional
element_type
xpath
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
target
//*
2020-07-31 12:24:42
BROWSER
Updated placeholder from scripted browser
placeholder
hrU0s1G9IG
2020-07-31 12:24:42
BROWSER
All placeholders filled by scripted browser
2020-07-31 12:24:42 INFO
WebRunner
Entering text
task
Initial Login
browser
text
element_type
id
value
john
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
target
loginId
2020-07-31 12:24:42 INFO
WebRunner
Entering text
task
Initial Login
browser
text
element_type
id
value
john
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
target
password
2020-07-31 12:24:42 INFO
WebRunner
Clicking an element
task
Initial Login
browser
click
element_type
name
url
https://fapidev-www.authlete.net/api/authorization?client_id=470519824180317&redirect_uri=https://www.certification.openid.net/test/a/oidf-authlete-core/callback&scope=openid&state=MkDeGymAbS&nonce=FDeqjxDel2&response_type=code%20id_token&response_mode=form_post&max_age=1
target
authorized
2020-07-31 12:24:42 INCOMING
oidcc-max-age-1
Incoming HTTP request to test instance xtgqcf00VT9P7z8
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/webp,image/apng,*/*;q\u003d0.8",
  "referer": "https://fapidev-www.authlete.net/api/authorization/decision",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "cookie": "JSESSIONID\u003dAA6A76305D7D33636B0298B7D9F5D104",
  "origin": "https://fapidev-www.authlete.net/api/authorization/decision",
  "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": "793",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
incoming_path
callback
incoming_body_form_params
{
  "state": "MkDeGymAbS",
  "code": "aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0",
  "id_token": "eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA"
}
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
state=MkDeGymAbS&code=aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0&id_token=eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA
2020-07-31 12:24:42 SUCCESS
CreateRandomImplicitSubmitUrl
Created random implicit submission URL
implicit_submit
{
  "path": "implicit/V5VJHcSSKRBWxwhqidOL",
  "fullUrl": "https://www.certification.openid.net/test/a/oidf-authlete-core/implicit/V5VJHcSSKRBWxwhqidOL"
}
2020-07-31 12:24:42 OUTGOING
oidcc-max-age-1
Response to HTTP request to test instance xtgqcf00VT9P7z8
outgoing
ModelAndView [view="implicitCallback"; model={implicitSubmitUrl=https://www.certification.openid.net/test/a/oidf-authlete-core/implicit/V5VJHcSSKRBWxwhqidOL, returnUrl=/log-detail.html?log=xtgqcf00VT9P7z8}]
outgoing_path
callback
2020-07-31 12:24:43 INFO
WebRunner
Completed processing of webpage
task
Initial Login
browser
complete
response_status_text
200-
match
https://fapidev-www.authlete.net/api/authorization*
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
response_status_code
200
2020-07-31 12:24:43 INFO
WebRunner
Waiting
regexp
seconds
10
task
Verify Complete
browser
wait
action
element_type
id
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
target
submission_complete
2020-07-31 12:24:43 INCOMING
oidcc-max-age-1
Incoming HTTP request to test instance xtgqcf00VT9P7z8
incoming_headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "*/*",
  "referer": "https://www.certification.openid.net/test/a/oidf-authlete-core/callback",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "cookie": "JSESSIONID\u003dAA6A76305D7D33636B0298B7D9F5D104",
  "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/V5VJHcSSKRBWxwhqidOL
incoming_body_form_params
incoming_method
POST
incoming_body_json
incoming_query_string_params
{}
incoming_body
2020-07-31 12:24:43 OUTGOING
oidcc-max-age-1
Response to HTTP request to test instance xtgqcf00VT9P7z8
outgoing
org.springframework.web.servlet.view.RedirectView: [RedirectView]; URL [/log-detail.html?log=xtgqcf00VT9P7z8]
outgoing_path
implicit/V5VJHcSSKRBWxwhqidOL
2020-07-31 12:24:43 SUCCESS
ExtractImplicitHashToCallbackResponse
implicit_hash is empty
2020-07-31 12:24:43 REDIRECT-IN
oidcc-max-age-1
Authorization endpoint response captured
url_query
{}
headers
{
  "host": "www.certification.openid.net",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/webp,image/apng,*/*;q\u003d0.8",
  "referer": "https://fapidev-www.authlete.net/api/authorization/decision",
  "accept-encoding": "gzip, deflate",
  "accept-language": "en-US",
  "cookie": "JSESSIONID\u003dAA6A76305D7D33636B0298B7D9F5D104",
  "origin": "https://fapidev-www.authlete.net/api/authorization/decision",
  "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": "793",
  "x-forwarded-host": "www.certification.openid.net",
  "x-forwarded-server": "www.certification.openid.net",
  "connection": "close"
}
http_method
POST
url_fragment
{}
post_body
{
  "state": "MkDeGymAbS",
  "code": "aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0",
  "id_token": "eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA"
}
Second authorization: Verify authorization endpoint response
2020-07-31 12:24:43 SUCCESS
CheckCallbackHttpMethodIsPost
HTTP method used at redirect_uri is 'POST'
2020-07-31 12:24: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
2020-07-31 12:24:43 SUCCESS
RejectAuthCodeInUrlQuery
Authorization code is not present in URL query returned from authorization endpoint
2020-07-31 12:24:43 SUCCESS
RejectErrorInUrlQuery
'error' is not present in URL query returned from authorization endpoint
2020-07-31 12:24:43 SUCCESS
CheckMatchingCallbackParameters
Callback parameters successfully verified
2020-07-31 12:24:43 SUCCESS
CheckIfAuthorizationEndpointError
No error from authorization endpoint
2020-07-31 12:24:43 SUCCESS
CheckMatchingStateParameter
State parameter correctly returned
state
MkDeGymAbS
2020-07-31 12:24:43 SUCCESS
ExtractAuthorizationCodeFromAuthorizationResponse
Found authorization code
code
aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0
2020-07-31 12:24:43 SUCCESS
ExtractIdTokenFromAuthorizationResponse
Found and parsed the id_token from authorization_endpoint_response
value
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA
header
{
  "kid": "authlete-fapidev-api-20180524",
  "alg": "RS256"
}
claims
{
  "sub": "1001",
  "aud": "470519824180317",
  "c_hash": "BR_asH415tAngEz1FqL6FQ",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198582,
  "iat": 1596198282,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenNonce
Nonce values match
nonce
FDeqjxDel2
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenSignature
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenSignatureUsingKid
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJjX2hhc2giOiJCUl9hc0g0MTV0QW5nRXoxRnFMNkZRIiwic19oYXNoIjoiZjh5Z0tfMVN0WG1aNVdYSDBZQ09nQSIsImF1dGhfdGltZSI6MTU5NjE5ODI4MiwiaXNzIjoiaHR0cHM6Ly9mYXBpZGV2LWFzLmF1dGhsZXRlLm5ldC8iLCJleHAiOjE1OTYxOTg1ODIsImlhdCI6MTU5NjE5ODI4Miwibm9uY2UiOiJGRGVxanhEZWwyIn0.Q7jh_rHyJpkvH2SpBftTGwN-FFjuE--6ZkgBk5XcZTGYlTnkk_6-HZ5VKGBf4lo8L-UZRaNpMO9WEhiUgkKqGiLiliqUt477h-2wfz3Uu0cqeBzcghU8wgO-abrE72wu_gtvhmztfDNZ2Bmrwbv9lEYQ-wma9Kdbk4zslxOscd9JQNdYhzBpTqTRFCC79vMVULKcZn8SIxO96GD-qlVLvtJir9wxiwHG-vCuvR3P8BvCELs4lxgynRdODPR_uW5ezzKwJHCQ1EkCYRQ3smpLFrs2TgEf99cjQ8f56VK6BGQ3Hqv-jIDYuHTVzGvxj7527QKtD_qbs-Txl_RyocQVcA
2020-07-31 12:24:43 SUCCESS
CheckForSubjectInIdToken
Found 'sub' in id_token
sub
1001
2020-07-31 12:24:43 SUCCESS
CheckIdTokenAuthTimeClaimPresentDueToMaxAge
auth_time is present in the id_token, as required for a authentication where the max_age parameter was used
id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "c_hash": "BR_asH415tAngEz1FqL6FQ",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198582,
  "iat": 1596198282,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
CheckSecondIdTokenAuthTimeIsLaterIfPresent
auth_time is later in the second id_token
first_id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "lAb00qRHj_oPGp0yE7tnCw",
  "auth_time": 1596198278,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198579,
  "iat": 1596198279,
  "nonce": "8ibUNVmqeN"
}
second_id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "c_hash": "BR_asH415tAngEz1FqL6FQ",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198582,
  "iat": 1596198282,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
CheckIdTokenAuthTimeIsRecentIfPresent
auth_time in id_token is recent
auth_time
"Jul 31, 2020, 12:24:42 PM"
now
"Jul 31, 2020, 12:24:43 PM"
2020-07-31 12:24:43 SUCCESS
CreateTokenEndpointRequestForAuthorizationCodeGrant
grant_type
authorization_code
code
aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0
redirect_uri
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
2020-07-31 12:24:43 SUCCESS
AddBasicAuthClientSecretAuthenticationParameters
Added basic authorization header
Authorization
Basic NDcwNTE5ODI0MTgwMzE3OkVrMkNpdU9ybWZkaHZzakdsMDM3X3BzY0NtWXNla3M0YnpTU3hjM1VaVWNyLTlLaTJybENSZGdfTXQtVWtjOWItTHBham5NVWN3bXpxZ1hzLWVES3p3
2020-07-31 12:24:43
CallTokenEndpoint
HTTP request
request_uri
https://fapidev-as.authlete.net/api/token
request_method
POST
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Basic NDcwNTE5ODI0MTgwMzE3OkVrMkNpdU9ybWZkaHZzakdsMDM3X3BzY0NtWXNla3M0YnpTU3hjM1VaVWNyLTlLaTJybENSZGdfTXQtVWtjOWItTHBham5NVWN3bXpxZ1hzLWVES3p3",
  "accept-charset": "utf-8",
  "content-type": "application/x-www-form-urlencoded;charset\u003dUTF-8",
  "content-length": "177"
}
request_body
grant_type=authorization_code&code=aAxlmWeFZBJDRuJPZO_4Ei8-w-LUcR-PTZKLNGXX0-0&redirect_uri=https%3A%2F%2Fwww.certification.openid.net%2Ftest%2Fa%2Foidf-authlete-core%2Fcallback
2020-07-31 12:24:43 INFO
WebRunner
Completed processing of webpage
task
Verify Complete
browser
complete
response_status_text
200-
match
https://*/test/a/oidf-authlete-core/callback*
url
https://www.certification.openid.net/test/a/oidf-authlete-core/callback
response_status_code
200
2020-07-31 12:24:43 RESPONSE
CallTokenEndpoint
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "date": "Fri, 31 Jul 2020 12:24:43 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "1512",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
response_body
{"access_token":"eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug","refresh_token":"zf1w7C8_Jd7JhANwsmUAb-NM9IL4Rl3qW8OsEyevgBg","scope":"openid","id_token":"eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA","token_type":"Bearer","expires_in":86400}
2020-07-31 12:24:43
CallTokenEndpoint
Token endpoint response
token_endpoint_response
{"access_token":"eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug","refresh_token":"zf1w7C8_Jd7JhANwsmUAb-NM9IL4Rl3qW8OsEyevgBg","scope":"openid","id_token":"eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA","token_type":"Bearer","expires_in":86400}
2020-07-31 12:24:43 SUCCESS
CallTokenEndpoint
Parsed token endpoint response
access_token
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug
refresh_token
zf1w7C8_Jd7JhANwsmUAb-NM9IL4Rl3qW8OsEyevgBg
scope
openid
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA
token_type
Bearer
expires_in
86400
2020-07-31 12:24:43 SUCCESS
CheckIfTokenEndpointResponseError
No error from token endpoint
2020-07-31 12:24:43 SUCCESS
CheckForAccessTokenValue
Found an access token
access_token
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug
2020-07-31 12:24:43 SUCCESS
ExtractAccessTokenFromTokenResponse
Extracted the access token
value
eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug
type
Bearer
2020-07-31 12:24:43 SUCCESS
ExtractExpiresInFromTokenEndpointResponse
Extracted 'expires_in'
expires_in
86400
2020-07-31 12:24:43 SUCCESS
ValidateExpiresIn
expires_in passed all validation checks
expires_in
86400
2020-07-31 12:24:43 SUCCESS
CheckForRefreshTokenValue
Found a refresh token
refresh_token
zf1w7C8_Jd7JhANwsmUAb-NM9IL4Rl3qW8OsEyevgBg
2020-07-31 12:24:43 SUCCESS
ExtractIdTokenFromTokenResponse
Found and parsed the id_token from token_endpoint_response
value
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA
header
{
  "kid": "authlete-fapidev-api-20180524",
  "alg": "RS256"
}
claims
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198583,
  "iat": 1596198283,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
ValidateIdToken
ID token iss, aud, exp, iat, auth_time, acr & nbf claims passed validation checks
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenNonce
Nonce values match
nonce
FDeqjxDel2
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenACRClaimAgainstRequest
Nothing to check; the conformance suite did not request an acr claim in request object
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenSignature
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA
2020-07-31 12:24:43 SUCCESS
ValidateIdTokenSignatureUsingKid
id_token signature validated
id_token
eyJraWQiOiJhdXRobGV0ZS1mYXBpZGV2LWFwaS0yMDE4MDUyNCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxMDAxIiwiYXVkIjpbIjQ3MDUxOTgyNDE4MDMxNyJdLCJzX2hhc2giOiJmOHlnS18xU3RYbVo1V1hIMFlDT2dBIiwiYXV0aF90aW1lIjoxNTk2MTk4MjgyLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjE5ODU4MywiaWF0IjoxNTk2MTk4MjgzLCJub25jZSI6IkZEZXFqeERlbDIifQ.LLFH5hNkBgGmpB7eSdz25NzYP4B527ifk8OOkLhQCRPXnm-QrO5rBxWU5Mc9Q7bijMlSSHhZ2j6l2yXL7RrTg-M2hSqk4RfRPt3dfanAJeSw0wyUs54hSwItzdA_q1bCk5HoTpRZnsvP6c4wRco9nwhjs-8Vt3Bo8lh175qcg74ZXuIt9VkR6C3HiM4nblHu5oJb6HCnjWmZY2wOnzRf9PqYZtxgR7oolq5xIZF5ktr-s5BGNiIno7Y1OMjcb0baJc_vTQacoaJiVaYju-X3IPwOL5VbgkINIEpmK4NiwwCVVwM44wwhUfTJDQZpER_vHtbiNIongJ1d3wML3GqJpA
2020-07-31 12:24:43 SUCCESS
CheckForSubjectInIdToken
Found 'sub' in id_token
sub
1001
2020-07-31 12:24:43 SUCCESS
CheckIdTokenAuthTimeClaimPresentDueToMaxAge
auth_time is present in the id_token, as required for a authentication where the max_age parameter was used
id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198583,
  "iat": 1596198283,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
CheckSecondIdTokenAuthTimeIsLaterIfPresent
auth_time is later in the second id_token
first_id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "lAb00qRHj_oPGp0yE7tnCw",
  "auth_time": 1596198278,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198579,
  "iat": 1596198279,
  "nonce": "8ibUNVmqeN"
}
second_id_token
{
  "sub": "1001",
  "aud": "470519824180317",
  "s_hash": "f8ygK_1StXmZ5WXH0YCOgA",
  "auth_time": 1596198282,
  "iss": "https://fapidev-as.authlete.net/",
  "exp": 1596198583,
  "iat": 1596198283,
  "nonce": "FDeqjxDel2"
}
2020-07-31 12:24:43 SUCCESS
CheckIdTokenAuthTimeIsRecentIfPresent
auth_time in id_token is recent
auth_time
"Jul 31, 2020, 12:24:42 PM"
now
"Jul 31, 2020, 12:24:43 PM"
2020-07-31 12:24:43 SUCCESS
VerifyIdTokenSubConsistentHybridFlow
authorization endpoint and token endpoint id_token have same sub
sub_auth_endpoint
1001
sub_token_endpoint
1001
Second authorization: Userinfo endpoint tests
2020-07-31 12:24:43
CallProtectedResourceWithBearerToken
HTTP request
request_uri
https://fapidev-rs.authlete.net/api/userinfo
request_method
GET
request_headers
{
  "accept": "application/json;charset\u003dUTF-8",
  "authorization": "Bearer eyJhbGciOiJQUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6ImF1dGhsZXRlLWZhcGlkZXYtYXBpLTIwMTgwNTI0In0.eyJzdWIiOiIxMDAxIiwic2NvcGUiOiJvcGVuaWQiLCJpc3MiOiJodHRwczovL2ZhcGlkZXYtYXMuYXV0aGxldGUubmV0LyIsImV4cCI6MTU5NjI4NDY4MywiaWF0IjoxNTk2MTk4MjgzLCJjbGllbnRfaWQiOiI0NzA1MTk4MjQxODAzMTciLCJqdGkiOiJxczRvZFpHeVQzbzVHOEpwQ1hsaU52TWJLZ3R3R0JTV0Zhak5nd1B5NmY0In0.cO49OSv9ikeeD7RXuLWcbTI7HoU_uLauBEa6NMPc3gwUdTwRLArk2L8Vx9DuCPQxwM_OegA1s8emPcAQ4skrjvILU7mK-076Xt1Rhiud-qmdugdWeOIeRrkdmPuOCORbnPe1K6eES9zRE2en6ENc0l1IFi4k91otag35PwudA8MTVPSRB5CS6BQAEOl0OENbBVygI9hLraa1KCfDFI1K8qngYxJ550sD355TalHtAJey-riR214q6K0IjfaugyoE6LmSRBjIRX6AC_elfXUDuPRTKSHhgCfHF6o-puB88t8N9fa8KkXKl2ubV3WNKLE5WIJpw-GQvAup_ugPBAp4ug",
  "accept-charset": "utf-8",
  "content-length": "0"
}
request_body

                                
2020-07-31 12:24:44 RESPONSE
CallProtectedResourceWithBearerToken
HTTP response
response_status_code
200 OK
response_status_text
OK
response_headers
{
  "date": "Fri, 31 Jul 2020 12:24:43 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "14",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
response_body
{"sub":"1001"}
2020-07-31 12:24:44 SUCCESS
CallProtectedResourceWithBearerToken
Got a response from the resource endpoint
headers
{
  "date": "Fri, 31 Jul 2020 12:24:43 GMT",
  "server": "Jetty(9.4.21-SNAPSHOT)",
  "cache-control": "no-store, no-transform",
  "pragma": "no-cache",
  "content-type": "application/json;charset\u003dutf-8",
  "content-length": "14",
  "keep-alive": "timeout\u003d5, max\u003d100",
  "connection": "Keep-Alive"
}
status_code
{
  "code": 200
}
body
{"sub":"1001"}
2020-07-31 12:24:45 FINISHED
oidcc-max-age-1
Test has run to completion
testmodule_result
REVIEW
Unregister dynamically registered client
2020-07-31 12:24:45 INFO
UnregisterDynamicallyRegisteredClient
Skipped evaluation due to missing required string: registration_client_uri
expected
registration_client_uri
2020-07-31 12:24:45
TEST-RUNNER
Alias has now been claimed by another test
alias
oidf-authlete-core
new_test_id
MiDnDcnBISFjVEs
Test Results