Test Info

Issuerhttps://idp.armls.com
Profile[]
Test IDOP-scope-phone
Test descriptionScope requesting phone claims
Timestamp2019-02-21T22:12:04Z

Conditions


verify-scopes: status=OK [Verifies that the claims corresponding to the requested scopes are returned]
check-http-response: status=OK [Checks that the HTTP response status is within the 200 or 300 range. Also does some extra JSON checks]
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 --- Webfinger -->-->
0not expected to doWebFinger
0phase<--<-- 1 --- Discovery -->-->
0not expected to doDynamic discovery
0phase<--<-- 2 --- Registration -->-->
0not expected to doDynamic registration
0phase<--<-- 3 --- AsyncAuthn -->-->
0AuthorizationRequest
{
    "client_id": "op.certification.openid.net",
    "nonce": "ezNTLsxOc6CIEh4P",
    "redirect_uri": "https://op.certification.openid.net:61504/authz_cb",
    "response_type": "code",
    "scope": "openid phone",
    "state": "eexVKUnJg42b1FT9"
}
0redirect urlhttps://idp.armls.com/connect/authorize?state=eexVKUnJg42b1FT9&nonce=ezNTLsxOc6CIEh4P&response_type=code&scope=openid+phone&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61504%2Fauthz_cb&client_id=op.certification.openid.net
0redirecthttps://idp.armls.com/connect/authorize?state=eexVKUnJg42b1FT9&nonce=ezNTLsxOc6CIEh4P&response_type=code&scope=openid+phone&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61504%2Fauthz_cb&client_id=op.certification.openid.net
0responseResponse URL with query part
0response{'code': '276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b', 'scope': 'openid phone', 'state': 'eexVKUnJg42b1FT9', 'session_state': 'QdynWAfBoJaH3gZZ1TmsTKjt4-hU4RN_MZrDMHwM9t8.bb7a0edcc9d828af8090b7ec1261abc2'}
0response{'code': '276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b', 'scope': 'openid phone', 'state': 'eexVKUnJg42b1FT9', 'session_state': 'QdynWAfBoJaH3gZZ1TmsTKjt4-hU4RN_MZrDMHwM9t8.bb7a0edcc9d828af8090b7ec1261abc2'}
0AuthorizationResponse
{
    "code": "276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b",
    "scope": "openid phone",
    "session_state": "QdynWAfBoJaH3gZZ1TmsTKjt4-hU4RN_MZrDMHwM9t8.bb7a0edcc9d828af8090b7ec1261abc2",
    "state": "eexVKUnJg42b1FT9"
}
0phase<--<-- 4 --- AccessToken -->-->
0requestop_args: {'state': 'eexVKUnJg42b1FT9'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:61504/authz_cb'}
0do_access_token_request
kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:61504/authz_cb', 'code': '276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b', 'state': 'eexVKUnJg42b1FT9', 'grant_type': 'authorization_code', 'client_id': 'op.certification.openid.net'}, 'state': 'eexVKUnJg42b1FT9', 'authn_method': 'client_secret_basic'}
0AccessTokenRequest
{
    "code": "276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b",
    "grant_type": "authorization_code",
    "redirect_uri": "https://op.certification.openid.net:61504/authz_cb",
    "state": "eexVKUnJg42b1FT9"
}
0request_urlhttps://idp.armls.com/connect/token
0request_http_args{'headers': {'Authorization': 'Basic b3AuY2VydGlmaWNhdGlvbi5vcGVuaWQubmV0Om9wLmNlcnRpZmljYXRpb24ub3BlbmlkLm5ldA==', 'Content-Type': 'application/x-www-form-urlencoded'}}
0requestgrant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61504%2Fauthz_cb&code=276269f0f1225764615ff5ada883c15958b6ec8c6b2855671e5cc5ae76a8871b&state=eexVKUnJg42b1FT9
1http response
url:https://idp.armls.com/connect/token status_code:200
1response{'id_token': 'eyJhbGciOiJSUzI1NiIsImtpZCI6IkUzOEMwRDRBMzgwNkI1NTMxQTRFN0Y3MTNDQ0ZBMjI2NEE3N0FCNDEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI0NHdOU2pnR3RWTWFUbjl4UE0taUprcDNxMEUifQ.eyJuYmYiOjE1NTA3ODcxMjQsImV4cCI6MTU1MDc4NzQyNCwiaXNzIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tIiwiYXVkIjoib3AuY2VydGlmaWNhdGlvbi5vcGVuaWQubmV0Iiwibm9uY2UiOiJlek5UTHN4T2M2Q0lFaDRQIiwiaWF0IjoxNTUwNzg3MTI0LCJhdF9oYXNoIjoib2VoUlIyVV9CTU9aeFN3cU5wRHJOQSIsInNpZCI6ImU5NzQzMzlmMWQzY2VhZmEyYTU3NDdiYWY4MDNiNTRhIiwic3ViIjoiMDIwNTE2NzUtN0REMy00NDY5LUE0MzMtRENEM0E3RUI3Qjg4IiwiYXV0aF90aW1lIjoxNTUwNzg2ODA4LCJpZHAiOiJsb2NhbCIsImFtciI6WyJleHRlcm5hbCJdfQ.fL_0adsOS47PMFgvf-Kpddmv6SHGDX771-0we56awZbLvNtexyaEo9Ik9ZRYT_yDKXUmmek9hrarEY3SD3m8h1c5XfJg4nEjoRUkzpC5KGsVeZVsAwVXt7GJVZtv98QJo970SgSQjqIJb94QSQf1FE3gQgJ4KzK0fV2bs7QisAAKoMnwMUs0ng-zMwJ_svjQgxXVG4igYuXReNup2oONyhiIFuwUiiotRChnKMJa-2o2PbfDHZ8zhdlihRRNpsbbaddhU_ieQNdYjxg00qZYXaRci7W4GS17RJgfBDv04FV4Hu2T3pPU7ZdwKvixY8yaBkNRwztKBAhYR4B9Cma5ng', 'access_token': 'eyJhbGciOiJSUzI1NiIsImtpZCI6IkUzOEMwRDRBMzgwNkI1NTMxQTRFN0Y3MTNDQ0ZBMjI2NEE3N0FCNDEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI0NHdOU2pnR3RWTWFUbjl4UE0taUprcDNxMEUifQ.eyJuYmYiOjE1NTA3ODcxMjQsImV4cCI6MTU1MDc5MDcyNCwiaXNzIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tIiwiYXVkIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tL3Jlc291cmNlcyIsImNsaWVudF9pZCI6Im9wLmNlcnRpZmljYXRpb24ub3BlbmlkLm5ldCIsInN1YiI6IjAyMDUxNjc1LTdERDMtNDQ2OS1BNDMzLURDRDNBN0VCN0I4OCIsImF1dGhfdGltZSI6MTU1MDc4NjgwOCwiaWRwIjoibG9jYWwiLCJzY29wZSI6WyJvcGVuaWQiLCJwaG9uZSJdLCJhbXIiOlsiZXh0ZXJuYWwiXX0.IBuEAs_gFlXNSOBiATHqEqe1VFg_cTYzbjcN5IX_t2ilP9AvGP_bgTvD88wH7PwK0ckRSINSiHWi3nrqSkEXRrf-5vSuYOpJzbZbn6b1M-iRSqtBwuK_N98peeDabaRTvIm56D5BFLbO_nD6Iw01nYrYawQ_J9F_xFT_S-2BdIJKvGK7IEFpC0pHZ5METt3ol3HCZkUbnttchGXIAaBJD805APDViCIrPlJk2BhBlHippbMdvOtDVb3ohjIKfZpy3D7sbhLqdmnfidosZ01-FIeYB4Sg0Osy-fJ7HV9xlh9yOkyvVgRnoKhLNafGc-DhxupEvOaVVD3AY-kaaIunBg', 'expires_in': 3600, 'token_type': 'Bearer'}
1AccessTokenResponse
{
    "access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IkUzOEMwRDRBMzgwNkI1NTMxQTRFN0Y3MTNDQ0ZBMjI2NEE3N0FCNDEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI0NHdOU2pnR3RWTWFUbjl4UE0taUprcDNxMEUifQ.eyJuYmYiOjE1NTA3ODcxMjQsImV4cCI6MTU1MDc5MDcyNCwiaXNzIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tIiwiYXVkIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tL3Jlc291cmNlcyIsImNsaWVudF9pZCI6Im9wLmNlcnRpZmljYXRpb24ub3BlbmlkLm5ldCIsInN1YiI6IjAyMDUxNjc1LTdERDMtNDQ2OS1BNDMzLURDRDNBN0VCN0I4OCIsImF1dGhfdGltZSI6MTU1MDc4NjgwOCwiaWRwIjoibG9jYWwiLCJzY29wZSI6WyJvcGVuaWQiLCJwaG9uZSJdLCJhbXIiOlsiZXh0ZXJuYWwiXX0.IBuEAs_gFlXNSOBiATHqEqe1VFg_cTYzbjcN5IX_t2ilP9AvGP_bgTvD88wH7PwK0ckRSINSiHWi3nrqSkEXRrf-5vSuYOpJzbZbn6b1M-iRSqtBwuK_N98peeDabaRTvIm56D5BFLbO_nD6Iw01nYrYawQ_J9F_xFT_S-2BdIJKvGK7IEFpC0pHZ5METt3ol3HCZkUbnttchGXIAaBJD805APDViCIrPlJk2BhBlHippbMdvOtDVb3ohjIKfZpy3D7sbhLqdmnfidosZ01-FIeYB4Sg0Osy-fJ7HV9xlh9yOkyvVgRnoKhLNafGc-DhxupEvOaVVD3AY-kaaIunBg",
    "expires_in": 3600,
    "id_token": {
        "amr": [
            "external"
        ],
        "at_hash": "oehRR2U_BMOZxSwqNpDrNA",
        "aud": [
            "op.certification.openid.net"
        ],
        "auth_time": 1550786808,
        "exp": 1550787424,
        "iat": 1550787124,
        "idp": "local",
        "iss": "https://idp.armls.com",
        "nbf": 1550787124,
        "nonce": "ezNTLsxOc6CIEh4P",
        "sid": "e974339f1d3ceafa2a5747baf803b54a",
        "sub": "02051675-7DD3-4469-A433-DCD3A7EB7B88"
    },
    "token_type": "Bearer"
}
1jws header{'alg': 'RS256', 'kid': 'E38C0D4A3806B5531A4E7F713CCFA2264A77AB41', 'typ': 'JWT', 'x5t': '44wNSjgGtVMaTn9xPM-iJkp3q0E'}
1phase<--<-- 5 --- UserInfo -->-->
1do_user_info_request
kwargs:{'state': 'eexVKUnJg42b1FT9', 'method': 'GET', 'authn_method': 'bearer_header'}
1request{'body': None}
1request_urlhttps://idp.armls.com/connect/userinfo
1request_http_args{'headers': {'Authorization': 'Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkUzOEMwRDRBMzgwNkI1NTMxQTRFN0Y3MTNDQ0ZBMjI2NEE3N0FCNDEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI0NHdOU2pnR3RWTWFUbjl4UE0taUprcDNxMEUifQ.eyJuYmYiOjE1NTA3ODcxMjQsImV4cCI6MTU1MDc5MDcyNCwiaXNzIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tIiwiYXVkIjoiaHR0cHM6Ly9pZHAuYXJtbHMuY29tL3Jlc291cmNlcyIsImNsaWVudF9pZCI6Im9wLmNlcnRpZmljYXRpb24ub3BlbmlkLm5ldCIsInN1YiI6IjAyMDUxNjc1LTdERDMtNDQ2OS1BNDMzLURDRDNBN0VCN0I4OCIsImF1dGhfdGltZSI6MTU1MDc4NjgwOCwiaWRwIjoibG9jYWwiLCJzY29wZSI6WyJvcGVuaWQiLCJwaG9uZSJdLCJhbXIiOlsiZXh0ZXJuYWwiXX0.IBuEAs_gFlXNSOBiATHqEqe1VFg_cTYzbjcN5IX_t2ilP9AvGP_bgTvD88wH7PwK0ckRSINSiHWi3nrqSkEXRrf-5vSuYOpJzbZbn6b1M-iRSqtBwuK_N98peeDabaRTvIm56D5BFLbO_nD6Iw01nYrYawQ_J9F_xFT_S-2BdIJKvGK7IEFpC0pHZ5METt3ol3HCZkUbnttchGXIAaBJD805APDViCIrPlJk2BhBlHippbMdvOtDVb3ohjIKfZpy3D7sbhLqdmnfidosZ01-FIeYB4Sg0Osy-fJ7HV9xlh9yOkyvVgRnoKhLNafGc-DhxupEvOaVVD3AY-kaaIunBg'}}
1http response
url:https://idp.armls.com/connect/userinfo status_code:200
1OpenIDSchema
{
    "email": "sbaker@armls.com",
    "entityId": "124113",
    "family_name": "Baker",
    "given_name": "Stephen",
    "memberType": "Agent",
    "name": "bsteve",
    "phone_number": "602-663-2618",
    "phone_number_verified": true,
    "preferred_username": "bsteve",
    "sub": "02051675-7DD3-4469-A433-DCD3A7EB7B88"
}
1OpenIDSchema
{
    "email": "sbaker@armls.com",
    "entityId": "124113",
    "family_name": "Baker",
    "given_name": "Stephen",
    "memberType": "Agent",
    "name": "bsteve",
    "phone_number": "602-663-2618",
    "phone_number_verified": true,
    "preferred_username": "bsteve",
    "sub": "02051675-7DD3-4469-A433-DCD3A7EB7B88"
}
1phase<--<-- 6 --- Done -->-->
1end
1assertionVerifyScopes
1conditionverify-scopes: status=OK [Verifies that the claims corresponding to the requested scopes are returned]
1assertionCheckHTTPResponse
1conditioncheck-http-response: status=OK [Checks that the HTTP response status is within the 200 or 300 range. Also does some extra JSON checks]
1assertionVerifyResponse
1conditionverify-response: status=OK [Checks that the last response was one of a possible set of OpenID Connect Responses]
1conditionDone: status=OK

Result

PASSED