Test Info

Issuerhttps://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest
Profile[]
Test IDOP-OAuth-2nd-30s
Test descriptionTrying to use authorization code twice with 30 seconds in between uses must result in an error
Timestamp2020-07-09T09:36:32Z

Conditions


check-http-error-response: status=OK [Checks that an error code is either 400 or 401 which are the only ones accepted by OAuth2/OIDC.]
verify-response: status=OK [Checks that the last response was one of a possible set of OpenID Connect Responses]
Done: status=OK

Trace Output

0phase<--<-- 0 --- Note -->-->
2phase<--<-- 1 --- Webfinger -->-->
2not expected to doWebFinger
2phase<--<-- 2 --- Discovery -->-->
2provider_config
kwargs:{'issuer': 'https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest'}
2http response
url:https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest/.well-known/openid-configuration status_code:200
2ProviderConfigurationResponse
{
    "acr_values_supported": [
        "loginradius:nist:level:1:re-auth"
    ],
    "authorization_endpoint": "https://cloud-api.loginradius.com/sso/oidc/v2/oidctest/authorize",
    "backchannel_logout_session_supported": false,
    "backchannel_logout_supported": false,
    "claims_parameter_supported": false,
    "claims_supported": [
        "email_verified",
        "phone_number",
        "profile",
        "email",
        "address",
        "updated_at",
        "given_name",
        "nickname",
        "preferred_username",
        "picture",
        "zoneinfo",
        "Country",
        "family_name",
        "UserName",
        "middle_name",
        "phone_number_verified",
        "name",
        "LastName",
        "website",
        "gender",
        "locale",
        "auth_time",
        "Uid",
        "Favicon",
        "birthdate",
        "acr",
        "FirstName",
        "CustomFields.customerid"
    ],
    "frontchannel_logout_session_supported": false,
    "frontchannel_logout_supported": false,
    "grant_types_supported": [
        "authorization_code",
        "refresh_token"
    ],
    "id_token_signing_alg_values_supported": [
        "RS256"
    ],
    "issuer": "https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest",
    "jwks_uri": "https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest/jwks",
    "request_parameter_supported": false,
    "request_uri_parameter_supported": true,
    "require_request_uri_registration": false,
    "response_modes_supported": [
        "query",
        "form_post",
        "fragment"
    ],
    "response_types_supported": [
        "code",
        "token",
        "id_token",
        "code token",
        "code id_token",
        "token id_token",
        "code token id_token"
    ],
    "revocation_endpoint": "https://cloud-api.loginradius.com/sso/oidc/v2/oidctest/revoke",
    "scopes_supported": [
        "openid",
        "email",
        "phone",
        "profile",
        "address"
    ],
    "subject_types_supported": [
        "public"
    ],
    "token_endpoint": "https://cloud-api.loginradius.com/sso/oidc/v2/oidctest/token",
    "token_endpoint_auth_methods_supported": [
        "client_secret_post",
        "client_secret_basic"
    ],
    "userinfo_endpoint": "https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest/userinfo",
    "version": "3.0"
}
2phase<--<-- 3 --- Registration -->-->
2not expected to doDynamic registration
2phase<--<-- 4 --- AsyncAuthn -->-->
2AuthorizationRequest
{
    "client_id": "112563f6-1480-40b8-8e28-e072ca212c82",
    "nonce": "pofViJXTOwXeB4wN",
    "redirect_uri": "https://op.certification.openid.net:62346/authz_cb",
    "response_type": "code token",
    "scope": "openid",
    "state": "ywqfyDDkSNv6QeEV"
}
2redirect urlhttps://cloud-api.loginradius.com/sso/oidc/v2/oidctest/authorize?state=ywqfyDDkSNv6QeEV&nonce=pofViJXTOwXeB4wN&response_type=code+token&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A62346%2Fauthz_cb&client_id=112563f6-1480-40b8-8e28-e072ca212c82
2redirecthttps://cloud-api.loginradius.com/sso/oidc/v2/oidctest/authorize?state=ywqfyDDkSNv6QeEV&nonce=pofViJXTOwXeB4wN&response_type=code+token&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A62346%2Fauthz_cb&client_id=112563f6-1480-40b8-8e28-e072ca212c82
14http args{}
14responseURL with fragment
14responsestate=ywqfyDDkSNv6QeEV&code=2042e587423ba0adf7230b2442ffba72%3A58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410&access_token=c1168bc2-8850-4344-bff4-7b0f676a8b24&token_type=Bearer&expires_in=895
14response{'state': 'ywqfyDDkSNv6QeEV', 'code': '2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410', 'access_token': 'c1168bc2-8850-4344-bff4-7b0f676a8b24', 'token_type': 'Bearer', 'expires_in': 895}
14AuthorizationResponse
{
    "access_token": "c1168bc2-8850-4344-bff4-7b0f676a8b24",
    "code": "2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410",
    "expires_in": 895,
    "state": "ywqfyDDkSNv6QeEV",
    "token_type": "Bearer"
}
14phase<--<-- 5 --- AccessToken -->-->
14requestop_args: {'state': 'ywqfyDDkSNv6QeEV'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:62346/authz_cb'}
14do_access_token_request
kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:62346/authz_cb', 'code': '2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410', 'state': 'ywqfyDDkSNv6QeEV', 'grant_type': 'authorization_code', 'client_id': '112563f6-1480-40b8-8e28-e072ca212c82'}, 'state': 'ywqfyDDkSNv6QeEV', 'authn_method': 'client_secret_basic'}
14AccessTokenRequest
{
    "code": "2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410",
    "grant_type": "authorization_code",
    "redirect_uri": "https://op.certification.openid.net:62346/authz_cb",
    "state": "ywqfyDDkSNv6QeEV"
}
14request_urlhttps://cloud-api.loginradius.com/sso/oidc/v2/oidctest/token
14request_http_args{'headers': {'Authorization': 'Basic MTEyNTYzZjYtMTQ4MC00MGI4LThlMjgtZTA3MmNhMjEyYzgyOjc4ZDNkYmUzLTEwZDEtNDk3Yi05MzU3LThlZWQ0NTkzMzYzZA==', 'Content-Type': 'application/x-www-form-urlencoded'}}
14requestgrant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A62346%2Fauthz_cb&code=2042e587423ba0adf7230b2442ffba72%3A58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410&state=ywqfyDDkSNv6QeEV
14http response
url:https://cloud-api.loginradius.com/sso/oidc/v2/oidctest/token status_code:200
14response{'access_token': 'c1168bc2-8850-4344-bff4-7b0f676a8b24', 'token_type': 'Bearer', 'refresh_token': 'df3c200b-deaa-48fc-a585-2e3a826330c5', 'expires_in': 893, 'id_token': 'eyJhbGciOiJSUzI1NiIsImtpZCI6IjIwMSIsInR5cCI6IkpXVCJ9.eyJhZGRyZXNzIjp7ImNvdW50cnkiOm51bGwsImxvY2FsaXR5IjpudWxsLCJwb3N0YWxfY29kZSI6bnVsbCwicmVnaW9uIjpudWxsLCJzdHJlZXRfYWRkcmVzcyI6bnVsbH0sImFzZGZnaCI6IiIsImF0X2hhc2giOiI5RGFNRWRZb2lKcTk0b2Y1MHNncVJRIiwiYXVkIjoiMTEyNTYzZjYtMTQ4MC00MGI4LThlMjgtZTA3MmNhMjEyYzgyIiwiYXV0aF90aW1lIjoxNTk0Mjg3MzU2LCJiaXJ0aGRhdGUiOiIxOTg3LTA3LTA4IiwiY19oYXNoIjoiYndHRHl5TjUxcVpIQ1JzZlVacEppQSIsImNvdW50cnkiOm51bGwsImVtYWlsIjpbeyJUeXBlIjoiUHJpbWFyeSIsIlZhbHVlIjoiY2xvdWRzc290ZXN0QG1haWxhenkuY29tIn1dLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiZXhwIjoxNTk0Mjg3OTYyLCJmYW1pbHlfbmFtZSI6InRlc3J0IiwiZmF2aWNvbjEiOm51bGwsImZuYW1lIjoiY2xvdWRzc290IiwiZ2VuZGVyIjpudWxsLCJnaXZlbl9uYW1lIjoiY2xvdWRzc290IiwiaWF0IjoxNTk0Mjg3MzYyLCJpc3MiOiJodHRwczovL2Nsb3VkLWFwaS5sb2dpbnJhZGl1cy5jb20vc3NvL29pZGMvdjIvaW50ZXJuYWwtbWF5YW5rL29pZGN0ZXN0IiwianRpIjoiZTBhNGY3MzYtNmNmMS00ODRmLWI4NzQtYTI4YTI2YzA2YmJiIiwibG5hbWUiOiJ0ZXNydCIsImxvY2FsZSI6bnVsbCwibWlkZGxlX25hbWUiOm51bGwsIm5hbWUiOiJjbG91ZHNzb3QgdGVzcnQiLCJuYmYiOjE1OTQyODczNjIsIm5pY2tuYW1lIjpudWxsLCJub25jZSI6InBvZlZpSlhUT3dYZUI0d04iLCJwaG9uZV9udW1iZXIiOiIrMTkwMjkwOTU3MTQiLCJwaG9uZV9udW1iZXJfdmVyaWZpZWQiOnRydWUsInBpY3R1cmUiOm51bGwsInByZWZlcnJlZF91c2VybmFtZSI6ImNsb3Vkc3NvdGVzdCIsInByb2ZpbGUiOm51bGwsInN1YiI6IjBiN2Y5NDViOGM1ZjRhMzZhMzViZjQ5ZjcyMzliZmE0IiwidWlkIjoiMGI3Zjk0NWI4YzVmNGEzNmEzNWJmNDlmNzIzOWJmYTQiLCJ1cGRhdGVkX2F0IjoxNTYzODg1MTA5LCJ1c2VybmFtZSI6ImNsb3Vkc3NvdGVzdCIsIndlYnNpdGUiOm51bGwsInpvbmVpbmZvIjpudWxsfQ.VIKXWKb4TZQMxHgeNo-0b8Xhc5cv6fFVGcRyHcLWEJ_LbtyvrGOMYIs-m6wVZ3TEeWmBPthsjkFEecOS_tTZPf-RSd7z5k0OinuDOYPGXssxPxDFmhNvA5W3Lr9c9CH8iaSHeRv1CSQ3iS-eU5YGS_ZXhG9KNDPIadIoIkArzuBr31fT0DaI0GeAZDGaOVfaWF1-7V0348SJDt2C51-N9n6ywRNfyPkqfMML9_oMWK5z5QZVjl4gDov_VVQJI8TkHGviUFXGRDDjkIj2XPh37egHEuOM8uUDQOfJ4KPK2kKVBTuCZ5k3DouGO_lqDewT8x02hp_lY_6xUyy3gpGFCw'}
14AccessTokenResponse
{
    "access_token": "c1168bc2-8850-4344-bff4-7b0f676a8b24",
    "expires_in": 893,
    "id_token": {
        "address": {
            "country": null,
            "locality": null,
            "postal_code": null,
            "region": null,
            "street_address": null
        },
        "at_hash": "9DaMEdYoiJq94of50sgqRQ",
        "aud": [
            "112563f6-1480-40b8-8e28-e072ca212c82"
        ],
        "auth_time": 1594287356,
        "birthdate": "1987-07-08",
        "c_hash": "bwGDyyN51qZHCRsfUZpJiA",
        "country": null,
        "email": {
            "Type": "Primary",
            "Value": "cloudssotest@mailazy.com"
        },
        "email_verified": true,
        "exp": 1594287962,
        "family_name": "tesrt",
        "favicon1": null,
        "fname": "cloudssot",
        "gender": null,
        "given_name": "cloudssot",
        "iat": 1594287362,
        "iss": "https://cloud-api.loginradius.com/sso/oidc/v2/internal-mayank/oidctest",
        "jti": "e0a4f736-6cf1-484f-b874-a28a26c06bbb",
        "lname": "tesrt",
        "locale": null,
        "middle_name": null,
        "name": "cloudssot tesrt",
        "nbf": 1594287362,
        "nickname": null,
        "nonce": "pofViJXTOwXeB4wN",
        "phone_number": "+19029095714",
        "phone_number_verified": true,
        "picture": null,
        "preferred_username": "cloudssotest",
        "profile": null,
        "sub": "0b7f945b8c5f4a36a35bf49f7239bfa4",
        "uid": "0b7f945b8c5f4a36a35bf49f7239bfa4",
        "updated_at": 1563885109,
        "username": "cloudssotest",
        "website": null,
        "zoneinfo": null
    },
    "refresh_token": "df3c200b-deaa-48fc-a585-2e3a826330c5",
    "token_type": "Bearer"
}
14jws header{'alg': 'RS256', 'kid': '201', 'typ': 'JWT'}
14phase<--<-- 6 --- TimeDelay -->-->
44phase<--<-- 7 --- AccessToken -->-->
44requestop_args: {'state': 'ywqfyDDkSNv6QeEV'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:62346/authz_cb'}
44do_access_token_request
kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:62346/authz_cb', 'code': '2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410', 'state': 'ywqfyDDkSNv6QeEV', 'grant_type': 'authorization_code', 'client_id': '112563f6-1480-40b8-8e28-e072ca212c82'}, 'state': 'ywqfyDDkSNv6QeEV', 'authn_method': 'client_secret_basic'}
44AccessTokenRequest
{
    "code": "2042e587423ba0adf7230b2442ffba72:58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410",
    "grant_type": "authorization_code",
    "redirect_uri": "https://op.certification.openid.net:62346/authz_cb",
    "state": "ywqfyDDkSNv6QeEV"
}
44request_urlhttps://cloud-api.loginradius.com/sso/oidc/v2/oidctest/token
44request_http_args{'headers': {'Authorization': 'Basic MTEyNTYzZjYtMTQ4MC00MGI4LThlMjgtZTA3MmNhMjEyYzgyOjc4ZDNkYmUzLTEwZDEtNDk3Yi05MzU3LThlZWQ0NTkzMzYzZA==', 'Content-Type': 'application/x-www-form-urlencoded'}}
44requestgrant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A62346%2Fauthz_cb&code=2042e587423ba0adf7230b2442ffba72%3A58d3bdcc6eeada7ffb90e40e4ac78d07f3637c7850a0afb685fc1ef54055eea68dd4eb34a81d7dee6cd705f40e580010be03cfc61a5bfc3931497df286aca7449e75af9a5173f869e196bfcd3614434e57c8f8d71f1e8e2af100fd12b68149147c429d957df3150ad2bf283a857a9410&state=ywqfyDDkSNv6QeEV
44http response
url:https://cloud-api.loginradius.com/sso/oidc/v2/oidctest/token status_code:400 message:{"error":"invalid_grant","error_description":"The code is already used"}
44response{'error': 'invalid_grant', 'error_description': 'The code is already used'}
44eventGot expected error
44TokenErrorResponse
{
    "error": "invalid_grant",
    "error_description": "The code is already used"
}
44phase<--<-- 8 --- Done -->-->
44end
44assertionCheckHTTPErrorResponse
44conditioncheck-http-error-response: status=OK [Checks that an error code is either 400 or 401 which are the only ones accepted by OAuth2/OIDC.]
44assertionVerifyResponse
44conditionverify-response: status=OK [Checks that the last response was one of a possible set of OpenID Connect Responses]
44conditionDone: status=OK

Result

PASSED