Я разрабатываю API, который использует oauth2 для аутентификации пользователей. Требуется разработать систему единого входа для 3 различных веб-приложений.
Давайте возьмем этот сценарий:
Каков наилучший способ создания токена для второго приложения без необходимости входа пользователя?
Любое предложение было бы здорово. Правильный ли я подход?
Я использую symfony2 (FriendsOfSymfony / FOSOAuthServerBundle)
Если ваш Сервер авторизации поддерживает сеанс единого входа, пользователям не нужно будет снова регистрироваться при выдаче токенов для application2. Конечно, пользователи должны будут дать согласие областям, которые запрашивает application2, потому что это другое приложение (или «клиент» в терминологии OAuth 2.0), которое не имеет ничего общего с application1 и нуждается в собственных токенах и разрешениях.
Если вы хотите рассматривать два приложения как одну сущность, поскольку они контролируются одной и той же сущностью и / или вам все равно, вы можете использовать их одинаково. client_id
а также client_secret
и зарегистрируйтесь 2 redirect_uri
Это для этого (одного) клиента.
Других решений пока нет …