Возможно ли запросить токен oAuth с помощью POST и json body в authlib? - PullRequest
0 голосов
/ 19 июня 2020

Моя служба oAuth2 требует, чтобы я запрашивал токен доступа не через GET, а через POST и отправлял client_id, client_secret и token_endpoint в JSON теле.

Согласно документам, authlib кажется поддержка запросов аутентификации POST. Однако следующий код по-прежнему возвращает «недопустимый запрос» (в то время как запрос, сформированный вручную почтальоном, выполняется успешно):

session = OAuth2Session(
    settings.SECURE_M2M_CLIENT_ID, settings.SECURE_M2M_CLIENT_SECRET,
    token_endpoint_auth_method="client_secret_post"
)
token = session.fetch_token(settings.SECURE_M2M_TOKEN_ENDPOINT, verify=False)

1 Ответ

1 голос
/ 23 июня 2020

Стандартный client_secret_post отправляется в кодированном теле. Ваш случай может быть выполнен с помощью специального метода аутентификации, вы можете узнать здесь: https://docs.authlib.org/en/latest/client/oauth2.html?highlight=token_endpoint_auth_method#client -authentication

например, вы можете вызвать свой метод: client_secret_json_post.

...