Как проверить токен доступа для потока OAuth2 + PCKE - PullRequest
0 голосов
/ 24 апреля 2019

Согласно этому документу https://developers.onelogin.com/openid-connect/guides/auth-flow-pkce

Конечная точка токена для потока PCKE равна Нет (не Basic или POST)

enter image description here

Итак, как я могу использовать API токена проверки https://developers.onelogin.com/openid-connect/api/validate-session, потому что он поддерживает Basic authentication или POST, но не для None (PCKE) Я не могу найти какую-либо информацию, относящуюся к этому.

ПРИМЕЧАНИЕ: Я пытался запросить с базовой аутентификацией и без + client_id, client_secret в качестве параметра, но не работает.

ответ 401 Не авторизован

{
    "error": "invalid_client",
    "error_description": "client authentication failed"
}

Ответы [ 2 ]

2 голосов
/ 26 апреля 2019

Я использую OIDC с PKCE, и мне удалось вызвать конечную точку https://openid -connect.onelogin.com / oidc / token / introspection с токеном, полученным через поток кода авторизации:

$ curl -i -d "token=...&token_type_hint=access_token&client_id=..." https://openid-connect.onelogin.com/oidc/token/introspection

HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Content-Length: 304
Content-Type: application/json; charset=utf-8
Date: Thu, 25 Apr 2019 23:37:42 GMT
Pragma: no-cache
X-Powered-By: Express
Set-Cookie: ol_oidc_canary_040819=false; path=/; domain=.onelogin.com

{"active":true,"sub":"...","client_id":"...","exp":1558819177,"iat":1556227177,"sid":"...","iss":"https://openid-connect.onelogin.com/oidc","jti":"...","scope":"openid profile email"}

И access_token, и refresh_token вернулись из потока кода авторизации https://developers.onelogin.com/openid-connect/api/authorization-code-grant, и access_token вернули {"active":false} только после истечения срока его действия.

Убедитесь, что вы не устанавливаете заголовок Authorization, а только установите client_id в полезной нагрузке.

1 голос
/ 26 апреля 2019

Используйте client_id и code_verify в теле сообщения POST. Это будет аутентифицировать запрос на этой конечной точке.

...