Поток OAuth без запроса авторизации у пользователя - PullRequest
1 голос
/ 02 августа 2020

Я подумываю об использовании OAuth для предоставления приложению доступа к пользовательским ресурсам. Все работает в среде закрытой компании.

Первый поток, о котором я подумал, был поток кода авторизации, и все выглядит так, как мне нужно, но я не хочу просить пользователя авторизовать доступ, потому что это внутреннее приложение и учетная запись компании и у пользователя нет причин не предоставлять его. Я хочу попросить пользователя ввести логин и пароль, go обратно в приложение с кодом авторизации и запросить токен доступа к ресурсу с этим кодом авторизации, идентификатором клиента и секретом клиента. Что-то подобное описано в OAuth? Или удаление шага, на котором я прошу пользователя авторизоваться, нарушает OAuth, и это будет моя реализация, которая выглядит так же, как OAuth?

Я знаю, что существует поток учетных данных клиента, но мне придется предоставить доступ к приложению для каждого пользовательского ресурса право? Или что-то мне не хватает?

1 Ответ

1 голос
/ 03 августа 2020

OAuth2 действительно разработан, чтобы позволить пользователям (владельцам ресурсов) предоставлять доступ стороннему клиенту к своим ресурсам. Для этих вариантов использования согласие имеет смысл.

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

Поток учетных данных клиента дает самому клиенту доступ к ресурсам в API (сервер ресурсов). API не будет знать, какой пользователь обращался к ресурсам, что не работает, если доступ зависит от того, кем является пользователь, например, когда пользователи могут получить доступ только к своим собственным ресурсам или их уровень доступа зависит от того, кто они.

...