2016-07-01 3 views
1

Мы добавляем возможность входа в федеративные аккаунты в SharePoint онлайн из нашего не-веб-приложения.Аутентификация адреса outlook.com через SAML для входа в sharepoint

Как правило, нет проблем с использованием SAML, чтобы позвонить в https://login.microsoftonline.com/extSTS.srf для учетных записей Office365.

У нас есть клиент, который использовал федеративную безопасность, но затем также разрешает доступ к некоторым другим учетным записям пользователей, в частности к адресам http://outlook.com.

Поскольку это объединенная учетная запись, передача учетных данных в login.microsoftonline.com/extSTS.srf не работает. Я читал некоторые примеры кода, которые показали, федеративные вызовы размещения на

login.microsoftonline.com/GetUserRealm.srf 

с handler=1&login={0}

Когда мы что за счет http://outlook.com пользователя, мы получаем назад этот JSON ответ:

{ "State":1, "UserState":2, "Login": "[email protected]", "FederationGlobalVersion": -1, "DomainName": "OUTLOOK.COM", "AuthURL": "https://login.live.com/login.srf?cbcxt=&popupui=&vv=&username=&mkt=&lc=&wfresh=", "NameSpaceType": "Federated", "FederationBrandName": "OUTLOOK.COM", "AuthNForwardType": 0} 

примеры кода, которые мы видим, затем предлагают опубликовать информацию SAML на сайт, построенный на AuthURL:

String.Format("https://{0}/adfs/services/trust/2005/usernamemixed/", adfsAuthUrl.Host); 

Это будет: https://login.live.com/adfs/services/trust/2005/usernamemixed/

Однако мы получаем ошибку 404, попавшую в нее. Если бы мы вызвали GetUserRealm, используя учетную запись пользователя AD, мы знаем, что мы получили бы фирменный AuthURL.

Есть ли другой путь, который должен быть реализован специально для учетной записи без домена (например, от http://outlook.com) при попытке аутентификации сайта ADFS-enabledOffice365?

ответ

0

Если вы действительно хотите, чтобы ваши пользователи проходили аутентификацию для SharePoint Online, вы должны использовать: a) Azure AD - получить токен доступа и получить доступ к контенту через API-интерфейс REST Office 365 или b) приложение SharePoint, в котором вы может выбрать, использовать ли вообще контекст пользователя ... в этом случае ему по-прежнему нужен токен доступа или контекст приложения. Вы можете увидеть множество примеров обоих из них в моем блоге на SamlMan.wordpress.com.

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