我可以使用ADFS将自定义站点充当Idp

时间:2011-02-14 17:38:17

标签: single-sign-on adfs

我正在开发一个Portal Style应用程序(使用asp.net/mvc),它将链接到其他应用程序。我正在考虑使用ADFS和支持AD进行身份验证。我想为门户网站和这些单独的应用程序启用单点登录。这些单独的应用程序(一些和Java和一个在ruby中)将信任ADFS并且可以接收SAML令牌进行身份验证。

用户必须登录此门户网站应用程序,门户网站中其他应用程序的链接将无缝地工作,因为用户已登录门户网站。本质上,我的门户网站是身份提供商。这种情况是否可以使用ADFS?

1 个答案:

答案 0 :(得分:0)

是的,这是可能的。但是,您的问题中的术语并不完全正确:您的门户网站应用程序将不是身份提供者,而是AD FS。

会发生以下情况:

  • 用户浏览门户网站应用程序。
  • 门户网站应用程序重定向到AD FS。
  • 用户使用Forms或NTLM或其他方式以静默方式或交互方式对AD进行AD身份验证。 AD FS是IP / STS,即身份提供者。 此操作是单点登录。作为响应,AD FS将“AD FS cookie”发回给浏览器。
  • AD FS还使用安全令牌重定向回门户应用程序。
  • 门户网站应用程序将其主页与“门户网站cookie”一起发送到浏览器。作为该主页的一部分,它将应用程序X的“主页”发送到浏览器。

现在历史大多重复,点到点:

  • 浏览器检索应用程序X主页。
  • 应用程序X重定向到AD FS。
  • 浏览器将“AD FS cookie”发送到AD FS,证明用户对AD FS的身份。 此时没有登录。
  • AD FS使用新的安全令牌重定向回应用程序X.
  • 应用程序X将其“主页”与“app X cookie”一起发送到浏览器。

当对门户应用程序或应用程序X进行返回访问时,浏览器会发送“门户cookie”或“app X cookie”。应用程序识别cookie,并且不再将浏览器重定向到AD FS。因此,与AD FS的对话仅在应用程序启动时发生,每个应用程序启动一次。