2017-01-09 5 views
0

Может кто-то пролить свет на прецедент для меня. Мы волнуем пользователей, которые будут подписываться на сторонние клиентские приложения. Используя инфраструктуру OAUTH2, клиентское приложение будет перенаправлено на наш сайт для аутентификации. Из моего непонятного сервера авторизации будет возвращен токен доступа и id_token (OpenID Connect).Как работает OpenID Connect?

1) Если пользователь аутентифицирован у нас и перенаправлен в клиентское приложение, если они покидают клиентское приложение и возвращаются в клиентское приложение через несколько часов, они все еще проходят через весь перенаправление к нашей/авторизации конечная точка для повторной аутентификации?

2) Если пользователь аутентифицирован у нас и перенаправлен в клиентское приложение, если они покидают клиентское приложение и переходят на наш сайт, им нужно снова войти в систему для аутентификации?

В принципе, OpenID Connect over OAUTH2 позволяет пользователю войти в систему один раз, а затем не нужно регистрироваться после последующего посещения стороннего приложения или нашего приложения?

Спасибо.

ответ

1
  1. Это зависит от двух вещей:

    а. если клиентское приложение поддерживает сеанс и этот сеанс еще не истек, пользователь не будет перенаправлен вообще

    b. в случае истечения времени ожидания клиента, пользователь будет перенаправлен, но если у IDP все еще будет сеанс проверки подлинности, пользователь не будет аутентифицироваться и будет немедленно отправлен в клиентское приложение с новым токеном.

  2. Это зависит от IDP сеанса существования/тайм-аут снова

По существу Идентичность провайдер проверяет подлинность пользователей и решает, как сделать это. Он может запрашивать учетные данные, но также может создавать и поддерживать сеансы аутентификации для пользователя (обычно) с ограниченным периодом времени, что позволяет использовать True Single Sign On (SSO).

Также обратите внимание, что это поведение не зависит от точного протокола (OpenID Connect, OAuth или даже SAML): он будет работать одинаково для любого протокола, который перенаправляет пользователя в Identity Provider в объединенной системе единого входа.

0

В OpenID Connect сеанс на RP обычно начинается, когда RP проверяет идентификатор конечного пользователя. Токен Token.ID состоит из времени истечения. Поэтому, если пользователь просто уходит (не выходил из системы) и id_token истек, когда он обращается к RP, конечный пользователь должен повторно аутентифицироваться.

Если конечный пользователь вышел из доверенной стороны и поддерживал механизмы выхода из системы OpenID, такие как управление сеансом OIDC, выход из строя OIDC или выход из системы OIDC, тогда все RP-серверы, использующие один и тот же сеанс браузера, будут (SLO). Итак, конечный пользователь должен снова войти в OP для доступа к RP.