Azure Active Directory和联合身份验证

时间:2015-10-14 15:31:50

标签: azure active-directory windows-authentication adfs azure-active-directory

我们正在使用Azure Active Directory和联合身份验证。这没有问题 - 但是我们需要能够让用户使用除登录的Windows凭据之外的凭据登录。

现在发生的事情是

  

此电子邮件似乎与多个帐户一起使用   微软。你想用哪一个?工作或学校帐户工作   或您的工作或学校指定的学校帐户

  • 点击"工作或学校帐户"后,会向用户显示
  

重定向我们会将您带到您组织的登录页面。

  • 页面重定向到网址

https://ds1.mydomain.com/adfs/ls/auth/integrated/?username=me%40mydomain.com&wa=wsignin1.0&wtrealm=urn%3afederation%3aMicrosoftOnline&wctx=estsredirect%3d2%26estsrequest%xxxxx&popupui=1

  • 用户使用其活动的Windows凭据自动登录(即使他们在上一页输入了不同的用户名)。

如果我使用带有非域(本地)帐户的Windows会话导航到URL https://ds1.mydomain.com/adfs/ls/auth/integrated/?username=me%40mydomain.com&wa=wsignin1.0&wtrealm=urn%3afederation%3aMicrosoftOnline&wctx=estsredirect%3d2%26estsrequest%xxxxx&popupui=1,我会收到标准的集成身份验证提示

enter image description here 所以 - 看起来我们的ADFS服务器在IIS网站上使用集成Windows身份验证。

我的问题是 - 如何允许用户以Web应用程序的其他域用户身份登录。我可以使用特殊的ADFS登录URL吗?如果是这样,我如何告诉Azure应用程序使用该URL。或者有没有办法按需要以其他方式禁用集成身份验证?

谢谢。

更新:

我看到如果我将ADFS URL指向基本的auth端点

https://ds1.mydomain.com/adfs/ls/auth/ 基本 /用户名=我%40mydomain.com&安培; WA = wsignin1.0&安培; wtrealm =瓮%3afederation%3aMicrosoftOnline&安培; wctx = estsredirect %3D2%26estsrequest%XXXXX&安培; popupui = 1

我被提示进行基本身份验证(正是我想要的)...那么如何告诉我的Azure AD或Azure AD App使用哪个登录URL?我怎样才能有条件地控制它?

2 个答案:

答案 0 :(得分:2)

您需要从相关计算机上的本地Intranet区域中删除AD FS,以便他们提示或更好地查看AD FS中基于用户代理的目标,并配置这些计算机以发送触发表单的用户代理基于AuthN。

有关详细信息,请查看https://technet.microsoft.com/en-us/library/dn727110.aspx

答案 1 :(得分:1)

答案实际上很简单(在Fiddler的帮助下):

在重定向到login.microsoftonline.com时,添加& prompt =登录ADAL JavaScript生成的查询字符串。这会导致MS门户重定向到ADFS Forms Auth URL,而不是使用集成安全性的URL。