Test Info

Issuerhttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default
Profile[]
Test IDOP-OAuth-2nd-Revokes
Test descriptionTrying to use authorization code twice should result in revoking previously issued access tokens
Timestamp2019-09-11T08:23:21Z

Conditions


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 -->-->
0provider_config
kwargs:{'issuer': 'https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default'}
0http response
url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/.well-known/openid-configuration status_code:200
0ProviderConfigurationResponse
{
    "authorization_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/authorize",
    "claim_types_supported": [
        "normal"
    ],
    "claims_parameter_supported": true,
    "claims_supported": [
        "realmName",
        "preferred_username",
        "given_name",
        "uid",
        "upn",
        "groupIds",
        "employee_id",
        "name",
        "tenantId",
        "mobile_number",
        "department",
        "family_name",
        "job_title",
        "email"
    ],
    "device_authorization_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/device_authorization",
    "grant_types_supported": [
        "authorization_code",
        "implicit",
        "client_credentials",
        "password",
        "refresh_token",
        "urn:ietf:params:oauth:grant-type:device_code"
    ],
    "id_token_encryption_alg_values_supported": [
        "none"
    ],
    "id_token_encryption_enc_values_supported": [
        "none"
    ],
    "id_token_signing_alg_values_supported": [
        "none",
        "HS256",
        "HS384",
        "HS512",
        "RS256",
        "RS384",
        "RS512"
    ],
    "introspection_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/introspect",
    "issuer": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default",
    "jwks_uri": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/jwks",
    "request_object_encryption_alg_values_supported": [
        "none"
    ],
    "request_object_encryption_enc_values_supported": [
        "none"
    ],
    "request_object_signing_alg_values_supported": [
        "none"
    ],
    "request_parameter_supported": true,
    "request_uri_parameter_supported": false,
    "require_request_uri_registration": false,
    "response_modes_supported": [
        "query",
        "fragment",
        "form_post"
    ],
    "response_types_supported": [
        "code",
        "none",
        "token",
        "id_token",
        "token id_token",
        "code id_token",
        "code token",
        "code token id_token"
    ],
    "revocation_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/revoke",
    "scopes_supported": [
        "openid",
        "profile",
        "email",
        "phone"
    ],
    "subject_types_supported": [
        "public"
    ],
    "token_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token",
    "token_endpoint_auth_methods_supported": [
        "client_secret_basic",
        "client_secret_post"
    ],
    "user_authorization_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/user_authorization",
    "userinfo_encryption_alg_values_supported": [
        "none"
    ],
    "userinfo_encryption_enc_values_supported": [
        "none"
    ],
    "userinfo_endpoint": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/userinfo",
    "userinfo_signing_alg_values_supported": [
        "none"
    ],
    "version": "3.0"
}
0phase<--<-- 2 --- Registration -->-->
0not expected to doDynamic registration
0phase<--<-- 3 --- Note -->-->
2phase<--<-- 4 --- AsyncAuthn -->-->
2AuthorizationRequest
{
    "client_id": "5525f670-e6b3-41a9-afec-add4254aff3b",
    "nonce": "I9eikTNYanEkBVfF",
    "redirect_uri": "https://op.certification.openid.net:61906/authz_cb",
    "response_type": "code",
    "scope": "openid",
    "state": "nNUNU0rRdVzLEfJL"
}
2redirect urlhttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/authorize?state=nNUNU0rRdVzLEfJL&nonce=I9eikTNYanEkBVfF&response_type=code&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&client_id=5525f670-e6b3-41a9-afec-add4254aff3b
2redirecthttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/authorize?state=nNUNU0rRdVzLEfJL&nonce=I9eikTNYanEkBVfF&response_type=code&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&client_id=5525f670-e6b3-41a9-afec-add4254aff3b
3responseResponse URL with query part
3response{'code': 'zUDKg8WX7yotnvGeTYVPVCpQMdd32Q', 'grant_id': '2d635434-09b9-4c75-9eda-bedd66c033d9', 'state': 'nNUNU0rRdVzLEfJL'}
3response{'code': 'zUDKg8WX7yotnvGeTYVPVCpQMdd32Q', 'grant_id': '2d635434-09b9-4c75-9eda-bedd66c033d9', 'state': 'nNUNU0rRdVzLEfJL'}
3AuthorizationResponse
{
    "code": "zUDKg8WX7yotnvGeTYVPVCpQMdd32Q",
    "grant_id": "2d635434-09b9-4c75-9eda-bedd66c033d9",
    "state": "nNUNU0rRdVzLEfJL"
}
3phase<--<-- 5 --- AccessToken -->-->
3requestop_args: {'state': 'nNUNU0rRdVzLEfJL'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb'}
3do_access_token_request
kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb', 'code': 'zUDKg8WX7yotnvGeTYVPVCpQMdd32Q', 'state': 'nNUNU0rRdVzLEfJL', 'grant_type': 'authorization_code', 'client_id': '5525f670-e6b3-41a9-afec-add4254aff3b'}, 'state': 'nNUNU0rRdVzLEfJL', 'authn_method': 'client_secret_basic'}
3AccessTokenRequest
{
    "code": "zUDKg8WX7yotnvGeTYVPVCpQMdd32Q",
    "grant_type": "authorization_code",
    "redirect_uri": "https://op.certification.openid.net:61906/authz_cb",
    "state": "nNUNU0rRdVzLEfJL"
}
3request_urlhttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token
3request_http_args{'headers': {'Authorization': 'Basic NTUyNWY2NzAtZTZiMy00MWE5LWFmZWMtYWRkNDI1NGFmZjNiOlRFOUwxY2wzdHc=', 'Content-Type': 'application/x-www-form-urlencoded'}}
3requestgrant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&code=zUDKg8WX7yotnvGeTYVPVCpQMdd32Q&state=nNUNU0rRdVzLEfJL
3http response
url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token status_code:200
3response{'access_token': 'Tx6GBBv0NJQE5uBwmlbBfbt6tkSDNY2q4wIc1cXG', 'scope': 'openid', 'grant_id': '2d635434-09b9-4c75-9eda-bedd66c033d9', 'id_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InNlcnZlciJ9.eyJnaXZlbl9uYW1lIjoiSmFjb2IiLCJzX2hhc2giOiJ1QzJBWldXT05ZV3lDM3JDUGkwbkNnIiwidW5pcXVlU2VjdXJpdHlOYW1lIjoiNjQwMDA0S0ZPTyIsInRlbmFudElkIjoib2lkYy1wcm9kLWV1MDFhLXRlc3QxLmljZS5pYm1jbG91ZC5jb20iLCJtb2JpbGVfbnVtYmVyIjoiKzY1OTEwODUwOTEiLCJyZWFsbU5hbWUiOiJjbG91ZElkZW50aXR5UmVhbG0iLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJqYWNvYiIsIm5hbWUiOiJKYWNvYiBUZXN0ZXIiLCJub25jZSI6Ikk5ZWlrVE5ZYW5Fa0JWZkYiLCJlbWFpbCI6InZzdzE5ODhAaG90bWFpbC5jb20iLCJhY3IiOiJ1cm46aWJtOnNlY3VyaXR5OnBvbGljeTppZDoxIiwidXNlclR5cGUiOiJyZWd1bGFyIiwiZGlzcGxheU5hbWUiOiJKYWNvYiBUZXN0ZXIiLCJmYW1pbHlfbmFtZSI6IlRlc3RlciIsImdyb3VwSWRzIjpbImFsbFVzZXJzIl0sImF0X2hhc2giOiJLY2ZIQUh1YmEtc1NHVDQxOWxvTTVBIiwicGhvbmUyIjoiKzY1OTEwODUwOTEiLCJ1aWQiOiI2NDAwMDRLRk9PIiwiZXh0Ijp7InRlbmFudElkIjoib2lkYy1wcm9kLWV1MDFhLXRlc3QxLmljZS5pYm1jbG91ZC5jb20ifSwiaXNzIjoiaHR0cHM6Ly9vaWRjLXByb2QtZXUwMWEtdGVzdDEuaWNlLmlibWNsb3VkLmNvbS9vaWRjL2VuZHBvaW50L2RlZmF1bHQiLCJhdWQiOiI1NTI1ZjY3MC1lNmIzLTQxYTktYWZlYy1hZGQ0MjU0YWZmM2IiLCJzdWIiOiI2NDAwMDRLRk9PIiwiaWF0IjoxNTY4MTkwMjAwLCJleHAiOjE1NjgxOTc0MDB9.mqImA970hcagnVRCgv8BSsLV3Vdg2C7OGyKAfJl01UxKa1OeBKxavL7miaaCwPY1DPBmoQaCdqaZVUklQxzPdT3fGZaNCujsd2Y3w18H2jq9wZiOZfxOPfjOwOU8E7Q25w0l_259G7m7q2cVXN4-of_XZkmoFgqDdLf_RcimFHT6-bp35wi6stLtMCeMA33CngIQDfaBEwqnhueCnsNdzcFRu77KM6_f7MIv1mlCkaTs8bn3QThmPrrJkq2dLQ3YUUsvHQc3Gy9nkmBycOyB9-fV5iFpvFfc2ICMEF42f79CZvgagK9SIMmamw_uT2XGwwHaq_1p9QSIx6s0DxlHOA', 'token_type': 'Bearer', 'expires_in': 7199}
3AccessTokenResponse
{
    "access_token": "Tx6GBBv0NJQE5uBwmlbBfbt6tkSDNY2q4wIc1cXG",
    "expires_in": 7199,
    "grant_id": "2d635434-09b9-4c75-9eda-bedd66c033d9",
    "id_token": {
        "acr": "urn:ibm:security:policy:id:1",
        "at_hash": "KcfHAHuba-sSGT419loM5A",
        "aud": [
            "5525f670-e6b3-41a9-afec-add4254aff3b"
        ],
        "displayName": "Jacob Tester",
        "email": "vsw1988@hotmail.com",
        "exp": 1568197400,
        "ext": {
            "tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com"
        },
        "family_name": "Tester",
        "given_name": "Jacob",
        "groupIds": [
            "allUsers"
        ],
        "iat": 1568190200,
        "iss": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default",
        "mobile_number": "+6591085091",
        "name": "Jacob Tester",
        "nonce": "I9eikTNYanEkBVfF",
        "phone2": "+6591085091",
        "preferred_username": "jacob",
        "realmName": "cloudIdentityRealm",
        "s_hash": "uC2AZWWONYWyC3rCPi0nCg",
        "sub": "640004KFOO",
        "tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com",
        "uid": "640004KFOO",
        "uniqueSecurityName": "640004KFOO",
        "userType": "regular"
    },
    "scope": "openid",
    "token_type": "Bearer"
}
3jws header{'alg': 'RS256', 'typ': 'JWT', 'kid': 'server'}
3phase<--<-- 6 --- AccessToken -->-->
3requestop_args: {'state': 'nNUNU0rRdVzLEfJL'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb'}
3do_access_token_request
kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb', 'code': 'zUDKg8WX7yotnvGeTYVPVCpQMdd32Q', 'state': 'nNUNU0rRdVzLEfJL', 'grant_type': 'authorization_code', 'client_id': '5525f670-e6b3-41a9-afec-add4254aff3b'}, 'state': 'nNUNU0rRdVzLEfJL', 'authn_method': 'client_secret_basic'}
3AccessTokenRequest
{
    "code": "zUDKg8WX7yotnvGeTYVPVCpQMdd32Q",
    "grant_type": "authorization_code",
    "redirect_uri": "https://op.certification.openid.net:61906/authz_cb",
    "state": "nNUNU0rRdVzLEfJL"
}
3request_urlhttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token
3request_http_args{'headers': {'Authorization': 'Basic NTUyNWY2NzAtZTZiMy00MWE5LWFmZWMtYWRkNDI1NGFmZjNiOlRFOUwxY2wzdHc=', 'Content-Type': 'application/x-www-form-urlencoded'}}
3requestgrant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&code=zUDKg8WX7yotnvGeTYVPVCpQMdd32Q&state=nNUNU0rRdVzLEfJL
3http response
url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token status_code:400 message:{"error_description":"CSIAQ0158E The [authorization_grant] of type [authorization_code] does not exist or is invalid.","error":"invalid_grant"}
3response{'error_description': 'CSIAQ0158E The [authorization_grant] of type [authorization_code] does not exist or is invalid.', 'error': 'invalid_grant'}
3eventGot expected error
3TokenErrorResponse
{
    "error": "invalid_grant",
    "error_description": "CSIAQ0158E The [authorization_grant] of type [authorization_code] does not exist or is invalid."
}
3phase<--<-- 7 --- UserInfo -->-->
3do_user_info_request
kwargs:{'state': 'nNUNU0rRdVzLEfJL', 'method': 'GET', 'authn_method': 'bearer_header'}
3request{'body': None}
3request_urlhttps://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/userinfo
3request_http_args{'headers': {'Authorization': 'Bearer Tx6GBBv0NJQE5uBwmlbBfbt6tkSDNY2q4wIc1cXG'}}
4http response
url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/userinfo status_code:401 message:{"error_description":"CSIAQ0158E The [access_token] of type [Bearer] does not exist or is invalid.","error":"invalid_token"}
4eventGot expected error
4ErrorResponse
{
    "error": "invalid_token",
    "error_description": "Server returned 401 Unauthorized without a WWW-Authenticate header which is required as per https://tools.ietf.org/html/rfc6750#section-3"
}
4ErrorResponse
{
    "error": "invalid_token",
    "error_description": "Server returned 401 Unauthorized without a WWW-Authenticate header which is required as per https://tools.ietf.org/html/rfc6750#section-3"
}
4phase<--<-- 8 --- Done -->-->
4end
4assertionVerifyResponse
4conditionverify-response: status=OK [Checks that the last response was one of a possible set of OpenID Connect Responses]
4conditionDone: status=OK

Result

PASSED