2014-08-27 3 views
4

Я читал о OAuth, и обнаружили, что он грубо выполняет следующиеOAuth и возможности SSO

- client sends request token during redirect to server 
- Server displays authorization screen to resource owner 
- Resource owner provides uid and pw (not passed to client) 
- Server sends access token back to client 
- clients then users the Access token to gain access to a 
    resource 

Основываясь на моем Reding не кажется, что OAuth не позволяет SSO или федерации, но на некоторые Блоги подразумевает, что он выполняет SSO

Это правильно или неверно. Может ли он выполнять SSO без помощи других протоколов?

Thanks

ответ

6

Да, он поддерживает SSO с этим потоком.

У нас есть 2 приложения А и В.

  • Пользователь хочет получить доступ к приложению
  • Он перенаправляется на profider идентичности (IDP)
  • Он зайдет со своими учетными данными.
  • idp выдает токен OAUTH и файл cookie
  • Клиент теперь добавляет маркер oauth к запросу для приложения A и разрешен.
  • Когда клиент хочет получить доступ к приложению B, он снова перенаправляется на idp
  • В этом вызове idp добавлен кокет, который idp вернул в поток с приложением A.
  • Из-за этого idp немедленно возвращает токен для приложения B, клиенту не нужно снова входить в систему.
  • Клиент gan теперь получает доступ к приложению B с вновь созданным токеном.

Надеюсь, что поток exmaple станет более понятным.

Смежные вопросы