无需重定向即可登录ADFS

时间:2014-05-09 15:44:31

标签: ajax single-sign-on adfs2.0

有没有办法在不重定向到ADFS登录页面的情况下使用ADFS进行身份验证?这是我们的情况。

我们有一个使用ADFS进行SSO的AngularJS应用程序。该应用程序是我们AD的依赖方,也与O365资源相关联。目前,它正在努力将用户重定向到ADFS登录页面(如果未经过身份验证),并使用适当的授权代码重定向回我们的应用程序,然后我们通过REST查询来访问O365资源以显示数据(来自Mail,我们的应用程序上的日历等。

我们希望将重定向步骤移除到ADFS,以便用户可以使用我们的应用并获得无缝的登录体验。 ADFS页面看起来使用基于表单的身份验证。我想知道是否有办法通过http请求或其他方法执行身份验证。

1 个答案:

答案 0 :(得分:1)

我们构建了一个门户页面来处理外部应用程序的ADFS身份验证。门户网站使用访问控制服务在Azure中注册。进入门户网站后,您可以点击指向我们任何O365网站的链接。

web.config中的此部分执行被动重定向:

  <system.identityModel.services>
    <federationConfiguration>
      <cookieHandler requireSsl="false" />
      <wsFederation passiveRedirectEnabled="true" issuer="https://{yourACSAccount}.accesscontrol.windows.net/v2/wsfederation" realm="https://{yourportal}" requireHttps="false" />
    </federationConfiguration>
  </system.identityModel.services>

然后,门户网站上转到O365的链接将链接到adfs登录页面。然后,adfs登录页面会自动将用户重定向到SharePoint。

<a href="https://login.{yourDomain}/adfs/ls/?cbcxt=&popupui=&vv=&mkt=&lc=1033&wfresh=&wa=wsignin1.0&wtrealm=urn:federation:MicrosoftOnline&wctx=wa%3Dwsignin1%252E0%26rpsnv%3D2%26ct%3D1390418246%26rver%3D6%252E1%252E6206%252E0%26wp%3DMBI%26wreply%3Dhttps%253A%252F%252F{yourO365}%252Esharepoint%252Ecom%2fsites%2%26LoginOptions%3D3">

我希望这有助于让您更接近目标。