Как подойти к многосайтовой аутентификации

У нас есть продукт SaaS, брендированный для каждого из наших клиентов вместе с их собственным доменом. Мы находимся на этапе разработки API, который позволил бы сторонним разработчикам создавать виджеты или совершенно другие веб-сайты для наших клиентов. Одна из первых и самых сложных задач - правильная аутентификация.

Я не совсем разбираюсь в том, как с этим справляются сайты Stack Exchange, но на первый взгляд это похоже на похожий сценарий. Каждый сайт имеет свои собственные учетные записи и аутентификацию, но каким-то образом они связаны друг с другом. Когда я вхожу в систему на stackoverflow.com, а затем посещаю serverfault.com, он автоматически выполняет вход.Есть ли у кого-нибудь какие-нибудь подробности того, как они это реализовали?

Мы рассматриваем несколько моментов:

  • Делаем ли мы каждую учетную запись учетной записью уровня «Stack Exchange», а затем авторизуем каждого клиента и каждое приложение?
  • Допустим ли мы, чтобы у каждого клиента был собственный провайдер oauth, а затем просто разрешили пользователю авторизовать каждое приложение?
  • Как мы можем обрабатывать автоматический вход в систему, как это происходит при обмене стеками?

Опять же, мы все еще на ранней стадии процесса. и хочу получить это прямо из ворот. Будем признательны за любые предложения и передовой опыт.

6
задан Micah 27 October 2011 в 17:55
поделиться