0 | phase | <--<-- 0 --- Note -->--> |
1 | phase | <--<-- 1 --- Webfinger -->--> |
1 | not expected to do | WebFinger |
1 | phase | <--<-- 2 --- Discovery -->--> |
1 | provider_config | kwargs:{'issuer': 'https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default'}
|
1 | http response | url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/.well-known/openid-configuration status_code:200
|
1 | ProviderConfigurationResponse | {
"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"
}
|
1 | phase | <--<-- 3 --- Registration -->--> |
1 | not expected to do | Dynamic registration |
1 | phase | <--<-- 4 --- AsyncAuthn -->--> |
1 | AuthorizationRequest | {
"claims_locales": "se",
"client_id": "5525f670-e6b3-41a9-afec-add4254aff3b",
"nonce": "23xl0hR4CymNcG67",
"redirect_uri": "https://op.certification.openid.net:61906/authz_cb",
"response_type": "code",
"scope": "openid",
"state": "Y0Qdnn47cjctpnNv"
}
|
1 | redirect url | https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/authorize?state=Y0Qdnn47cjctpnNv&nonce=23xl0hR4CymNcG67&response_type=code&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&claims_locales=se&client_id=5525f670-e6b3-41a9-afec-add4254aff3b |
1 | redirect | https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/authorize?state=Y0Qdnn47cjctpnNv&nonce=23xl0hR4CymNcG67&response_type=code&scope=openid&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&claims_locales=se&client_id=5525f670-e6b3-41a9-afec-add4254aff3b |
2 | response | Response URL with query part |
2 | response | {'code': 'oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL', 'grant_id': '8b482cdc-2473-4791-b1d1-b47081a87e8a', 'state': 'Y0Qdnn47cjctpnNv'} |
2 | response | {'code': 'oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL', 'grant_id': '8b482cdc-2473-4791-b1d1-b47081a87e8a', 'state': 'Y0Qdnn47cjctpnNv'} |
2 | AuthorizationResponse | {
"code": "oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL",
"grant_id": "8b482cdc-2473-4791-b1d1-b47081a87e8a",
"state": "Y0Qdnn47cjctpnNv"
}
|
2 | phase | <--<-- 5 --- AccessToken -->--> |
2 | request | op_args: {'state': 'Y0Qdnn47cjctpnNv'}, req_args: {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb'} |
2 | do_access_token_request | kwargs:{'request_args': {'redirect_uri': 'https://op.certification.openid.net:61906/authz_cb', 'code': 'oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL', 'state': 'Y0Qdnn47cjctpnNv', 'grant_type': 'authorization_code', 'client_id': '5525f670-e6b3-41a9-afec-add4254aff3b'}, 'state': 'Y0Qdnn47cjctpnNv', 'authn_method': 'client_secret_basic'}
|
2 | AccessTokenRequest | {
"code": "oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL",
"grant_type": "authorization_code",
"redirect_uri": "https://op.certification.openid.net:61906/authz_cb",
"state": "Y0Qdnn47cjctpnNv"
}
|
2 | request_url | https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token |
2 | request_http_args | {'headers': {'Authorization': 'Basic NTUyNWY2NzAtZTZiMy00MWE5LWFmZWMtYWRkNDI1NGFmZjNiOlRFOUwxY2wzdHc=', 'Content-Type': 'application/x-www-form-urlencoded'}} |
2 | request | grant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A61906%2Fauthz_cb&code=oJOjrsPSk8NTerhmEWzvBqwAxQ2vkL&state=Y0Qdnn47cjctpnNv |
2 | http response | url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/token status_code:200
|
2 | response | {'access_token': 'o46lmSGWtYtLcOYvbTv7cOh60TC50ClCdYhdnWJx', 'scope': 'openid', 'grant_id': '8b482cdc-2473-4791-b1d1-b47081a87e8a', 'id_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InNlcnZlciJ9.eyJnaXZlbl9uYW1lIjoiR2VldGhhIiwic19oYXNoIjoib3FwSHl6V1NjekRXUVFPZFl3SzZ0USIsInVuaXF1ZVNlY3VyaXR5TmFtZSI6IjY0MDAwNEtHNFAiLCJ0ZW5hbnRJZCI6Im9pZGMtcHJvZC1ldTAxYS10ZXN0MS5pY2UuaWJtY2xvdWQuY29tIiwicmVhbG1OYW1lIjoiY2xvdWRJZGVudGl0eVJlYWxtIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZ2VldGhhbmphbGkuZEBpYm0uY29tIiwibmFtZSI6IkdlZXRoYSBEIiwibm9uY2UiOiIyM3hsMGhSNEN5bU5jRzY3IiwiZW1haWwiOiJnZWV0aGFuamFsaS5kQGlibS5jb20iLCJhY3IiOiJ1cm46aWJtOnNlY3VyaXR5OnBvbGljeTppZDoxIiwidXNlclR5cGUiOiJyZWd1bGFyIiwiZGlzcGxheU5hbWUiOiJHZWV0aGEgRCIsImZhbWlseV9uYW1lIjoiRCIsImdyb3VwSWRzIjpbImFsbFVzZXJzIiwiYWRtaW4iXSwiYXRfaGFzaCI6InNwTHl3dmFUdktwYnNUX0xrSEF1dXciLCJ1aWQiOiI2NDAwMDRLRzRQIiwiZXh0Ijp7InRlbmFudElkIjoib2lkYy1wcm9kLWV1MDFhLXRlc3QxLmljZS5pYm1jbG91ZC5jb20ifSwiaXNzIjoiaHR0cHM6Ly9vaWRjLXByb2QtZXUwMWEtdGVzdDEuaWNlLmlibWNsb3VkLmNvbS9vaWRjL2VuZHBvaW50L2RlZmF1bHQiLCJhdWQiOiI1NTI1ZjY3MC1lNmIzLTQxYTktYWZlYy1hZGQ0MjU0YWZmM2IiLCJzdWIiOiI2NDAwMDRLRzRQIiwiaWF0IjoxNTY4MTkwMTE4LCJleHAiOjE1NjgxOTczMTh9.T6OOF20SVt54LejtoQxUTd3VDG9Br64voRH7pEJjhaidEsI_rF-PS5ZF1JjPZOmejxUm5WoMlun1rGwxshbEce9WuN54SMChyuNFBiQ0DRenz5xATYYuQdZ0MSrnKWCUcNc_nznn9zTKA3V5ucQ_EE_WC1VF7emUWXLwBx0JDtD_A3qerhnXx4GKgXIWalcMUvO0ok530SC4Tpy7bFZJDix03Zs7O1l5nS3Tj9AAOjMGBk64xiLRjg93mWpF7VjwMb2S5R2QRs7ddN1CITkgHiM3QRxce9QaxqS-449ABIF37sXuJMpfYKl8IbppaaYFMUpJMe7CGbVd3BrfkIcDOg', 'token_type': 'Bearer', 'expires_in': 7199} |
3 | AccessTokenResponse | {
"access_token": "o46lmSGWtYtLcOYvbTv7cOh60TC50ClCdYhdnWJx",
"expires_in": 7199,
"grant_id": "8b482cdc-2473-4791-b1d1-b47081a87e8a",
"id_token": {
"acr": "urn:ibm:security:policy:id:1",
"at_hash": "spLywvaTvKpbsT_LkHAuuw",
"aud": [
"5525f670-e6b3-41a9-afec-add4254aff3b"
],
"displayName": "Geetha D",
"email": "geethanjali.d@ibm.com",
"exp": 1568197318,
"ext": {
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com"
},
"family_name": "D",
"given_name": "Geetha",
"groupIds": [
"allUsers",
"admin"
],
"iat": 1568190118,
"iss": "https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default",
"name": "Geetha D",
"nonce": "23xl0hR4CymNcG67",
"preferred_username": "geethanjali.d@ibm.com",
"realmName": "cloudIdentityRealm",
"s_hash": "oqpHyzWSczDWQQOdYwK6tQ",
"sub": "640004KG4P",
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com",
"uid": "640004KG4P",
"uniqueSecurityName": "640004KG4P",
"userType": "regular"
},
"scope": "openid",
"token_type": "Bearer"
}
|
3 | jws header | {'alg': 'RS256', 'typ': 'JWT', 'kid': 'server'} |
3 | phase | <--<-- 6 --- UserInfo -->--> |
3 | do_user_info_request | kwargs:{'state': 'Y0Qdnn47cjctpnNv', 'method': 'GET', 'authn_method': 'bearer_header'}
|
3 | request | {'body': None} |
3 | request_url | https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/userinfo |
3 | request_http_args | {'headers': {'Authorization': 'Bearer o46lmSGWtYtLcOYvbTv7cOh60TC50ClCdYhdnWJx'}} |
3 | http response | url:https://oidc-prod-eu01a-test1.ice.ibmcloud.com/oidc/endpoint/default/userinfo status_code:200
|
3 | OpenIDSchema | {
"acr": "urn:ibm:security:policy:id:1",
"displayName": "Geetha D",
"email": "geethanjali.d@ibm.com",
"ext": {
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com"
},
"family_name": "D",
"given_name": "Geetha",
"groupIds": [
"allUsers",
"admin"
],
"name": "Geetha D",
"preferred_username": "geethanjali.d@ibm.com",
"realmName": "cloudIdentityRealm",
"sub": "640004KG4P",
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com",
"uid": "640004KG4P",
"uniqueSecurityName": "640004KG4P",
"userType": "regular"
}
|
3 | OpenIDSchema | {
"acr": "urn:ibm:security:policy:id:1",
"displayName": "Geetha D",
"email": "geethanjali.d@ibm.com",
"ext": {
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com"
},
"family_name": "D",
"given_name": "Geetha",
"groupIds": [
"allUsers",
"admin"
],
"name": "Geetha D",
"preferred_username": "geethanjali.d@ibm.com",
"realmName": "cloudIdentityRealm",
"sub": "640004KG4P",
"tenantId": "oidc-prod-eu01a-test1.ice.ibmcloud.com",
"uid": "640004KG4P",
"uniqueSecurityName": "640004KG4P",
"userType": "regular"
}
|
3 | phase | <--<-- 7 --- DisplayUserInfo -->--> |
3 | phase | <--<-- 8 --- Done -->--> |
3 | end | |
3 | assertion | CheckHTTPResponse |
3 | condition | check-http-response: status=OK [Checks that the HTTP response status is within the 200 or 300 range. Also does some extra JSON checks] |
3 | condition | Done: status=OK |