Почему WSO2 требует имя пользователя / пароль клиента при анализе токенов с помощью OAuth2? - PullRequest
0 голосов
/ 17 мая 2018

Я работал с OAuth2 в течение последних нескольких дней, и я полагаю, что я в основном понял его, и мой код работает довольно хорошо. Я нахожу странным, что WSO2 не позволяет вам авторизовать самоанализ токенов OAuth2 с помощью client_id / client_secret. Есть ли причина, по которой это запрещено?

Насколько я понимаю в OAuth2, вы должны зарегистрировать своего клиента на сервере авторизации (зарегистрируйтесь в качестве поставщика услуг в WSO2). Это дает клиенту возможность идентифицировать себя с сервером. Что особенного в пользователе-арендаторе, что оно также должно быть предоставлено для анализа токена? Другие системы OAuth2 не имеют этого требования.

1 Ответ

0 голосов
/ 17 мая 2018

Я думаю, что это одно из их проектных решений. Просматривая документацию token introspection , я думаю, что они хотят сделать самоанализ независимым от клиента. Так что любое другое приложение, которое знает учетные данные для конечного пользователя (который находится в клиенте), может проанализировать токен для проверки. Я думаю, что есть варианты использования для таких нужд.

Независимо от этого, RFC7662 - Самоанализ токена не обязывает реализации использовать учетные данные клиента. Выбор метода зависит от исполнителя. Но да, в нем упоминаются учетные данные клиента и токены на предъявителя.

Чтобы предотвратить атаки сканирования токенов, конечная точка ДОЛЖНА также требовать некоторая форма авторизации для доступа к этой конечной точке, например, клиент аутентификация, как описано в OAuth 2.0 [RFC6749] или отдельном Токен доступа OAuth 2.0, такой как токен носителя, описанный в OAuth 2.0 Использование токенов на предъявителя [RFC6750]. Методы управления и проверка этих учетных данных выходит за рамки этого спецификация.

...