Система единого входа Office365 из приложения ASP.NET без Active Directory

Мы хотим сделать единый вход в Office365 из веб-приложения ASP.NET, которое хранит имя пользователя и пароль в базе данных. У нас нет учетных записей Active Directory для этих пользователей.

Что я могу прочитать о SSO для office365, так это то, что он разрешает SSO только с локальной AD. Но вокруг этого должны быть какие-то обходные пути.

Любой, кто может дать мне указатель о том, как это сделать.


person Addeladde    schedule 07.02.2013    source источник


Ответы (1)


Это возможно, но сложно. Мы потратили около месяца, чтобы сделать это.

Что вам нужно сделать, так это настроить собственную службу маркеров безопасности ws-federation. Вы разрабатываете его с помощью WIF. Он должен предоставить точные метаданные и утверждения, которые делает ADFS2.0. Это одна из сложных частей, поскольку она нигде не задокументирована и требует обратного проектирования метаданных ADFS.

Когда sts готов и работает, O365 не увидит разницы между вашими sts и ADFS и с радостью аутентифицирует пользователей по вашим собственным sts. И sts может использовать любое пользовательское резервное хранилище, которое вы хотите.

Еще одна проблема заключается в том, как вы автоматизируете O365 для создания учетных записей пользователей. Это проще, так как API-интерфейс powershell хорошо документирован и позволяет вам имитировать работу DirSync, поэтому вам не нужны DirSync и AD.

Это только царапает поверхность и будьте готовы к жесткому исследованию. На любые конкретные вопросы можно ответить, но я бы не стал ожидать от кого-либо пошагового руководства. По крайней мере, мы ничего не нашли и все сделали сами.

person Wiktor Zychla    schedule 07.02.2013
comment
Спасибо, Виктор. Приятно знать, что по крайней мере есть способ сделать это. Мы создадим собственное создание учетной записи пользователя из API. Это не моя забота. - person Addeladde; 08.02.2013
comment
Ребята, если у вас есть конкретные вопросы, мы можем дать ответы. - person Wiktor Zychla; 08.02.2013
comment
Я был бы очень удивлен, если бы это работало просто из коробки. Несмотря на то, что IndentityServer — это приятная настраиваемая служба STS, O365 довольно капризен, когда дело доходит до приема заявок от настраиваемой службы STS. Вероятно, вам следует потратить некоторое время на исследование, чтобы попытаться заставить обоих разговаривать друг с другом. - person Wiktor Zychla; 13.02.2013
comment
Можно ли купить раствор у вас? - person Addeladde; 13.02.2013
comment
К сожалению, код не имеет производственного качества, так как это был исследовательский проект. Розничная реализация была перенесена на конец 2013 - начало 2014 года. - person Wiktor Zychla; 13.02.2013
comment
Как вы получили данные конфигурации из Office365? - person Addeladde; 30.03.2013