Test info

Profile: {'openid-configuration': 'config', 'response_type': 'code', 'crypto': 'sign+encrypt', 'registration': 'dynamic'}
Timestamp: 2016-12-17T10:51:13Z
Test description: Trying to use authorization code twice with 30 seconds in between uses must result in an error [Basic, Hybrid]
Test ID: OP-OAuth-2nd-30s
Issuer: https://demo.c2id.com/c2id

Test output


__RegistrationRequest:post__
[check]
	status: INFORMATION
	description: Registration Response
	info: {"post_logout_redirect_uris":["https:\/\/op.certification.openid.net:60784\/logout"],"grant_types":["authorization_code"],"subject_type":"public","default_max_age":3600,"application_type":"web","registration_client_uri":"https:\/\/demo.c2id.com\/c2id\/clients\/dvoncd4ztlpde","redirect_uris":["https:\/\/op.certification.openid.net:60784\/authz_cb"],"registration_access_token":"yG_WtfgBp4DljB0M1UIXrkkGG-npEz6IO_rqtP_BL3s.YSxpLHI","token_endpoint_auth_method":"client_secret_basic","client_id":"dvoncd4ztlpde","client_secret_expires_at":0,"require_auth_time":true,"client_id_issued_at":1481971817,"client_secret":"B9Y5Rp5Q544VdeBa0ojjq9oYpsVO9-u3PkTlAQHh3Xg","contacts":["roland.hedberg@umu.se"],"response_types":["code"],"id_token_signed_response_alg":"RS256"}
__AuthorizationRequest:pre__
[check-response-type]
	status: OK
	description: Checks that the asked for response type are among the supported
[check-endpoint]
	status: OK
	description: Checks that the necessary endpoint exists at a server
__After completing the test flow:__
[verify-response]
	status: OK
	description: Checks that the last response was one of a possible set of OpenID Connect Responses
__X:==== END ====__

Trace output


1.938308 ------------ DiscoveryRequest ------------
1.938328 Provider info discover from 'https://demo.c2id.com/c2id'
1.938333 --> URL: https://demo.c2id.com/c2id/.well-known/openid-configuration
2.305328 ProviderConfigurationResponse: {
  "acr_values_supported": [
    "0"
  ],
  "authorization_endpoint": "https://demo.c2id.com/c2id-login-page-js",
  "claim_types_supported": [
    "normal"
  ],
  "claims_parameter_supported": true,
  "claims_supported": [
    "sub",
    "iss",
    "auth_time",
    "acr",
    "name",
    "given_name",
    "family_name",
    "nickname",
    "email",
    "email_verified"
  ],
  "code_challenge_methods_supported": [
    "S256",
    "plain"
  ],
  "display_values_supported": [
    "page",
    "popup"
  ],
  "grant_types_supported": [
    "implicit",
    "authorization_code",
    "refresh_token",
    "password",
    "client_credentials",
    "urn:ietf:params:oauth:grant-type:jwt-bearer"
  ],
  "id_token_encryption_alg_values_supported": [
    "RSA1_5",
    "RSA-OAEP",
    "RSA-OAEP-256",
    "ECDH-ES",
    "ECDH-ES+A128KW",
    "ECDH-ES+A192KW",
    "ECDH-ES+A256KW",
    "dir",
    "A128KW",
    "A192KW",
    "A256KW",
    "A128GCMKW",
    "A192GCMKW",
    "A256GCMKW"
  ],
  "id_token_encryption_enc_values_supported": [
    "A128CBC-HS256",
    "A192CBC-HS384",
    "A256CBC-HS512",
    "A128GCM",
    "A192GCM",
    "A256GCM"
  ],
  "id_token_signing_alg_values_supported": [
    "RS256",
    "RS384",
    "RS512",
    "PS256",
    "PS384",
    "PS512",
    "ES256",
    "ES384",
    "ES512",
    "HS256",
    "HS384",
    "HS512",
    "none"
  ],
  "introspection_endpoint": "https://demo.c2id.com/c2id/token/introspect",
  "issuer": "https://demo.c2id.com/c2id",
  "jwks_uri": "https://demo.c2id.com/c2id/jwks.json",
  "registration_endpoint": "https://demo.c2id.com/c2id/clients",
  "request_object_signing_alg_values_supported": [
    "HS256",
    "HS384",
    "HS512",
    "RS256",
    "RS384",
    "RS512",
    "PS256",
    "PS384",
    "PS512",
    "ES256",
    "ES384",
    "ES512",
    "none"
  ],
  "request_parameter_supported": true,
  "request_uri_parameter_supported": false,
  "request_uri_quota": 10,
  "require_request_uri_registration": true,
  "response_modes_supported": [
    "query",
    "fragment",
    "form_post"
  ],
  "response_types_supported": [
    "code",
    "id_token",
    "id_token token",
    "code id_token",
    "code id_token token"
  ],
  "revocation_endpoint": "https://demo.c2id.com/c2id/token/revoke",
  "scopes_supported": [
    "openid",
    "profile",
    "email",
    "address",
    "phone",
    "offline_access"
  ],
  "subject_types_supported": [
    "public",
    "pairwise"
  ],
  "token_endpoint": "https://demo.c2id.com/c2id/token",
  "token_endpoint_auth_methods_supported": [
    "client_secret_basic",
    "client_secret_post",
    "client_secret_jwt",
    "private_key_jwt",
    "none"
  ],
  "token_endpoint_auth_signing_alg_values_supported": [
    "RS256",
    "RS384",
    "RS512",
    "HS256",
    "HS384",
    "HS512",
    "PS256",
    "PS384",
    "PS512",
    "ES256",
    "ES384",
    "ES512"
  ],
  "ui_locales_supported": [
    "en"
  ],
  "userinfo_encryption_alg_values_supported": [
    "RSA1_5",
    "RSA-OAEP",
    "RSA-OAEP-256",
    "ECDH-ES",
    "ECDH-ES+A128KW",
    "ECDH-ES+A192KW",
    "ECDH-ES+A256KW",
    "dir",
    "A128KW",
    "A192KW",
    "A256KW",
    "A128GCMKW",
    "A192GCMKW",
    "A256GCMKW"
  ],
  "userinfo_encryption_enc_values_supported": [
    "A128CBC-HS256",
    "A192CBC-HS384",
    "A256CBC-HS512",
    "A128GCM",
    "A192GCM",
    "A256GCM"
  ],
  "userinfo_endpoint": "https://demo.c2id.com/c2id/userinfo",
  "userinfo_signing_alg_values_supported": [
    "RS256",
    "RS384",
    "RS512",
    "PS256",
    "PS384",
    "PS512",
    "ES256",
    "ES384",
    "ES512",
    "HS256",
    "HS384",
    "HS512"
  ],
  "version": "3.0"
}
2.672969 JWKS: {
  "keys": [
    {
      "e": "AQAB",
      "kid": "XPvp",
      "kty": "RSA",
      "n": "29nkxanYPgpux2gKI269pAuDmQ-FJVIzc5TDUjwRHkOWjBUxdTmwu9g_FCQWAG5_As6umczakynH5i6B-hLAoYCYNZThD9AqWRj-kKtqDhHPBz1WYruO17NBiJsP4pqmN9abffRmSVSTwKmt3yqkoWLwCobiofo4q-etX-QJO5_5c4vG-FNDp-zSjXfMshK92dllH35umnROp0qidi-TsbfSZasgeddLJPbRG80dVSoBBqViT5mUy8Cu5VPlSeXthjnVWKvNugeuHlOgnuR310Nalg9ocapMRZ3F90xVeld8Qtc7LrDZLsuVrHkb2RGFRJ42qUE4wiXEEusuAfdnjw",
      "use": "sig"
    },
    {
      "crv": "P-256",
      "kid": "SEGI",
      "kty": "EC",
      "use": "sig",
      "x": "IB0jEtk1kESc0YXr59l_H4dYF66pOu6GDtsGHutFpFo",
      "y": "N8QW2dVl3hdncKkvEks8ITeRTwXkQFg3mf_b4kQxID0"
    },
    {
      "crv": "P-384",
      "kid": "BB4g",
      "kty": "EC",
      "use": "sig",
      "x": "jKEG_F8_i1DgPWQ641JPNXtARk0_eqKT_U80bap2IGc91TEzKI8CQjO8MymC2LiY",
      "y": "avSOVF8Wf-yxkJGFmY3POkdGMTXgECkbcL0Vv3Uc7Ro9ssu9XsRXRcfFtHKnLXeS"
    },
    {
      "crv": "P-521",
      "kid": "fbSW",
      "kty": "EC",
      "use": "sig",
      "x": "AYXvNe1V25gOusorgp8AHAFUNaEkmONOpVtYSuvk2v3OIy8HgIYeg6CGjwFwlEFCXwm6zRe-Ckzb71ZHKTd2--Sz",
      "y": "APanwCboxQuQxmEllq1dSgVUsV6v_xHWinjhovd06s_LiReXOoWEOQERjz3_UpLj45enfr08a37mTOAvgVdeL6fM"
    },
    {
      "e": "AQAB",
      "kid": "Slbc",
      "kty": "RSA",
      "n": "toMIuWFSAdAqHUMNatz3UYyVAh_gg6mj2ktqxDLzv840yh5V-3f2Jsyr4Vgzt1wRTl8TD8VsVjOe217siCBKevquo4M7WsEZLHMx0eM_gB1u5nGEwXsElReVTFc3KblFsdxjTR2lPwVEjL8iuLhb-JNWt9dZFGV_g8lTRqp4fEUjDnheLKLZMnxxBy6J4HGGgOye-Yl4WCaiSjw2py6Jvio9VE-x-yorJAjH66fMwvoslnPzLMuARy21NsKjCWvtW36tisF1o0JI7sXzS8I8iTnNCD_tGLx-aEkoo_JDdOfjU1PLeBKqOV-0ZPT309nQRXKAXA9dxUj7PQoL9c-9dw",
      "use": "sig"
    },
    {
      "crv": "P-256",
      "kid": "s7ek",
      "kty": "EC",
      "use": "sig",
      "x": "Rr4kh9uK3hO1g-orV7eVO8X0uPPQ_u4-eYPCEgQ1xa0",
      "y": "ECq1fmVC7mU7F7c0CTN7MCwDpWdFcbJF2zTg6EZK8Kg"
    },
    {
      "crv": "P-384",
      "kid": "lauH",
      "kty": "EC",
      "use": "sig",
      "x": "QyWDd8kJoqzsXEWiCkUAzg11ntg_x7KKWLdVOS-GDw5GgbfLkUJytK16tGLZWGUI",
      "y": "P4HM7uknJ64Teg1vrhYKvS_nrZFyh5CZDjH67hFsFaI3bfdWiU8duK4oYaPjnU6n"
    },
    {
      "crv": "P-521",
      "kid": "96Oc",
      "kty": "EC",
      "use": "sig",
      "x": "AOE3yNXWAiguNjBduYIbCKR3I3fNX_LUFH8IKaePjeTxouKLMu7JYQwEMaa11Zhka0kmuusfixvm24fDppKAOvO3",
      "y": "AUtg3p6hVIL5RZj4I7FjbjZtRfAd-laDdPx-Fw6qG0s2MMFHu05X9bRYduPbFaz-YJj4Zsa7PzCRwZgqc_lP4LuE"
    }
  ]
}
2.691647 ------------ RegistrationRequest ------------
2.692064 --> URL: https://demo.c2id.com/c2id/clients
2.692072 --> BODY: {"subject_type": "public", "jwks_uri": "https://op.certification.openid.net:60784/export/jwk_60784.json", "contacts": ["roland.hedberg@umu.se"], "application_type": "web", "grant_types": ["authorization_code"], "post_logout_redirect_uris": ["https://op.certification.openid.net:60784/logout"], "redirect_uris": ["https://op.certification.openid.net:60784/authz_cb"], "response_types": ["code"], "require_auth_time": true, "default_max_age": 3600}
2.692084 --> HEADERS: {'Content-Type': 'application/json'}
3.096941 <-- STATUS: 200
3.097018 <-- BODY: {"post_logout_redirect_uris":["https:\/\/op.certification.openid.net:60784\/logout"],"grant_types":["authorization_code"],"subject_type":"public","default_max_age":3600,"application_type":"web","registration_client_uri":"https:\/\/demo.c2id.com\/c2id\/clients\/dvoncd4ztlpde","redirect_uris":["https:\/\/op.certification.openid.net:60784\/authz_cb"],"registration_access_token":"yG_WtfgBp4DljB0M1UIXrkkGG-npEz6IO_rqtP_BL3s.YSxpLHI","token_endpoint_auth_method":"client_secret_basic","client_id":"dvoncd4ztlpde","client_secret_expires_at":0,"require_auth_time":true,"client_id_issued_at":1481971817,"client_secret":"B9Y5Rp5Q544VdeBa0ojjq9oYpsVO9-u3PkTlAQHh3Xg","contacts":["roland.hedberg@umu.se"],"response_types":["code"],"id_token_signed_response_alg":"RS256"}
3.097897 RegistrationResponse: {
  "application_type": "web",
  "client_id": "dvoncd4ztlpde",
  "client_id_issued_at": 1481971817,
  "client_secret": "B9Y5Rp5Q544VdeBa0ojjq9oYpsVO9-u3PkTlAQHh3Xg",
  "client_secret_expires_at": 0,
  "contacts": [
    "roland.hedberg@umu.se"
  ],
  "default_max_age": 3600,
  "grant_types": [
    "authorization_code"
  ],
  "id_token_signed_response_alg": "RS256",
  "post_logout_redirect_uris": [
    "https://op.certification.openid.net:60784/logout"
  ],
  "redirect_uris": [
    "https://op.certification.openid.net:60784/authz_cb"
  ],
  "registration_access_token": "yG_WtfgBp4DljB0M1UIXrkkGG-npEz6IO_rqtP_BL3s.YSxpLHI",
  "registration_client_uri": "https://demo.c2id.com/c2id/clients/dvoncd4ztlpde",
  "require_auth_time": true,
  "response_types": [
    "code"
  ],
  "subject_type": "public",
  "token_endpoint_auth_method": "client_secret_basic"
}
3.118624 ------------ AuthorizationRequest ------------
3.119086 --> URL: https://demo.c2id.com/c2id-login-page-js?scope=openid&state=4s1bVmaQ5qfxYZrl&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A60784%2Fauthz_cb&response_type=code&client_id=dvoncd4ztlpde
3.119094 --> BODY: None
27.854436 <-- code=VB3Y5zRNUolgyieikKQh-A.ti2f4MsfEDzJRPuYiWJxTg&state=4s1bVmaQ5qfxYZrl
27.854876 AuthorizationResponse: {
  "code": "VB3Y5zRNUolgyieikKQh-A.ti2f4MsfEDzJRPuYiWJxTg",
  "state": "4s1bVmaQ5qfxYZrl"
}
27.855250 ------------ AccessTokenRequest ------------
27.855649 --> URL: https://demo.c2id.com/c2id/token
27.855657 --> BODY: code=VB3Y5zRNUolgyieikKQh-A.ti2f4MsfEDzJRPuYiWJxTg&grant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A60784%2Fauthz_cb
27.855669 --> HEADERS: {'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': u'Basic ZHZvbmNkNHp0bHBkZTpCOVk1UnA1UTU0NFZkZUJhMG9qanE5b1lwc1ZPOS11M1BrVGxBUUhoM1hn'}
28.260282 <-- STATUS: 200
28.260359 <-- BODY: {"access_token":"eyJraWQiOiJYUHZwIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhbGljZSIsInNjcCI6WyJvcGVuaWQiXSwiaXNzIjoiaHR0cHM6XC9cL2RlbW8uYzJpZC5jb21cL2MyaWQiLCJleHAiOjE0ODE5NzI0NDIsImlhdCI6MTQ4MTk3MTg0MiwidWlwIjp7fSwiY2lkIjoiZHZvbmNkNHp0bHBkZSJ9.MlcUbhQKiSnqN60ael_QFGNewbfFRpQ2vieRYEpDWUZLEqOhQjnn1oG7ZLnQokXXgoSAgkR2AWOuT2gSRNGL1lobeOUuSyz0lBM4L2sSHwMVlev-cTnCgtLt5dmAyajCwgODCNk5nJ-6OmmXUv5evBsODAMe_ym7H7LeHjV8Qg0b77XdHBCwbbSBH7Vmpb1azG2B6S5JSW0txvUM2_G22jigbNbdzm-Fh6gRiRENpBlIYavMUmVj56M0q32Ze5AHJldqle3a9x7XcmEJRvUpzSBl2gEOHcjsxJ0Bv1ul2ccRJtDr5Paugp3RUhx6HLelgLF8zpH1P3aAwfpO5dqH5g","refresh_token":"YWxpY2U.ZHZvbmNkNHp0bHBkZQ.nqOPBXbUJA2f9bJ_Go9-0A","scope":"openid","id_token":"eyJraWQiOiJYUHZwIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhbGljZSIsImF1ZCI6ImR2b25jZDR6dGxwZGUiLCJhY3IiOiJodHRwOlwvXC9sb2EuYzJpZC5jb21cL2Jhc2ljIiwiYW1yIjpbInB3ZCJdLCJhdXRoX3RpbWUiOjE0ODE5NzE3NzgsImJyb3dzZXIiOiJOZXRzY2FwZSIsImlzcyI6Imh0dHBzOlwvXC9kZW1vLmMyaWQuY29tXC9jMmlkIiwiZXhwIjoxNDgxOTcyNDQxLCJpYXQiOjE0ODE5NzE4NDEsImxvZ2luX2lwIjoiMTAuMjAuMzAuNDAifQ.mLuP-D-6YNdaOtNKuVOo7Ob2avxxZnqtWFDB3uXhO0L2Z4BiwayEt2aeSNMuNrMLUatjATt2pnSrNgQr0SuKFiGC42ugXKgbdYs_XvE9-fji_DD8dcPSfvhWGXLzS7wrewg2xYTw8ioit2zO5sZReVrLh6i9TPlIPQo30ekk64k7WhlMXFb5rdUCASVmbYZZhrBE4l1cQrQJV7GDUqes-kgj6GN90VDEmzDTV6snsSNjnJwagiU_2hMOb4yB-TSqsaXuIKNUxAtD5dzrLSsx8YutxwHGv6yM76ZOJvF1JZCCmF49VgE2PhEHpiHGnraFckL1dFCGAIHQYtmh19OKeg","token_type":"Bearer","expires_in":600}
28.637474 AccessTokenResponse: {
  "access_token": "eyJraWQiOiJYUHZwIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhbGljZSIsInNjcCI6WyJvcGVuaWQiXSwiaXNzIjoiaHR0cHM6XC9cL2RlbW8uYzJpZC5jb21cL2MyaWQiLCJleHAiOjE0ODE5NzI0NDIsImlhdCI6MTQ4MTk3MTg0MiwidWlwIjp7fSwiY2lkIjoiZHZvbmNkNHp0bHBkZSJ9.MlcUbhQKiSnqN60ael_QFGNewbfFRpQ2vieRYEpDWUZLEqOhQjnn1oG7ZLnQokXXgoSAgkR2AWOuT2gSRNGL1lobeOUuSyz0lBM4L2sSHwMVlev-cTnCgtLt5dmAyajCwgODCNk5nJ-6OmmXUv5evBsODAMe_ym7H7LeHjV8Qg0b77XdHBCwbbSBH7Vmpb1azG2B6S5JSW0txvUM2_G22jigbNbdzm-Fh6gRiRENpBlIYavMUmVj56M0q32Ze5AHJldqle3a9x7XcmEJRvUpzSBl2gEOHcjsxJ0Bv1ul2ccRJtDr5Paugp3RUhx6HLelgLF8zpH1P3aAwfpO5dqH5g",
  "expires_in": 600,
  "id_token": {
    "claims": {
      "acr": "http://loa.c2id.com/basic",
      "amr": [
        "pwd"
      ],
      "aud": [
        "dvoncd4ztlpde"
      ],
      "auth_time": 1481971778,
      "browser": "Netscape",
      "exp": 1481972441,
      "iat": 1481971841,
      "iss": "https://demo.c2id.com/c2id",
      "login_ip": "10.20.30.40",
      "sub": "alice"
    },
    "jws header parameters": {
      "alg": "RS256",
      "kid": "XPvp"
    }
  },
  "refresh_token": "YWxpY2U.ZHZvbmNkNHp0bHBkZQ.nqOPBXbUJA2f9bJ_Go9-0A",
  "scope": "openid",
  "token_type": "Bearer"
}
58.719147 ------------ AccessTokenRequest ------------
58.719599 --> URL: https://demo.c2id.com/c2id/token
58.719607 --> BODY: code=VB3Y5zRNUolgyieikKQh-A.ti2f4MsfEDzJRPuYiWJxTg&grant_type=authorization_code&redirect_uri=https%3A%2F%2Fop.certification.openid.net%3A60784%2Fauthz_cb
58.719622 --> HEADERS: {'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': u'Basic ZHZvbmNkNHp0bHBkZTpCOVk1UnA1UTU0NFZkZUJhMG9qanE5b1lwc1ZPOS11M1BrVGxBUUhoM1hn'}
59.105097 <-- STATUS: 400
59.105235 ErrorResponse: {
  "error": "invalid_grant",
  "error_description": "Invalid or expired authorization code, redirection URI mismatch, or PKCE verification failure"
}
59.122890 ==== END ====

Result

PASSED