2013-05-06 2 views
2

Обычно пользователь сначала посещает клиентский сайт (например, stackoverflow) и перенаправляется на провайдер OpenID (OP) и перенаправляется обратно клиенту после аутентификации.openId - Возможно ли инициировать вход с сайта поставщика OpenId?

Представьте себе, что у нас есть портал, который действует как OP. После входа в портал он должен показывать ссылки на приложения. Эти приложения управляют входами с OpenID-клиентами. Можно ли создать ссылки (или перенаправить заголовки) в приложение (клиент OpenID)?

шаг за шагом, как это:

  1. Fresh Browser (старые куки и т.д. удалены)
  2. Посещать OpenID провайдер
  3. Вход в Provider сайт OpenID.
  4. Нажмите на ссылку в вашем профиле на другой веб-сайт, который обеспечивает OpenId клиента механизм
  5. Вы получаете сразу же вошли в систему без каких-либо дополнительных действий со стороны пользователя

возможно ли это? Или мне всегда нужно сначала посетить OpenId Client, чтобы начать сеанс или что-то вроде этого?

(если он отличается от OpenId v1 и v2, неплохо было бы услышать об этом)

ответ

4

Да. Это возможно, однако это не входит в спецификацию OpenID, спецификация не говорит об инициированном потоке аутентификации IDP. Уловка у IDP. Позвольте мне подвести итог этому.

Есть два взаимодействия ОР сделать с пользователем:

  1. Задать пароль. (Если OP может использовать cookie или значение сеанса для запоминания аутентифицированного пользователя, то это взаимодействие может быть пропущено при последующих входах)

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

Так поток будет работать так:

  1. журналы пользователей в ОП (затем OP запоминает пользователя)
  2. Пользователь нажимает на приложение, например, приложение перенаправляет пользователя на OP. (OP пропускает аутентификацию, а затем OP идентифицирует, что есть конфигурация, позволяющая пропустить приглашение для получения согласия на это приложение для этого пользователя, OP skip согласия).
  3. OP перенаправляет пользователя обратно на применение и выполнил вход.
+0

thx для вашего детального ответа. – Janning