【问题标题】:How to implement SAML for SSO using ADFS as identity Provider如何使用 ADFS 作为身份提供者为 SSO 实施 SAML
【发布时间】:2015-07-02 18:29:15
【问题描述】:

经过 2 天的研究,现在我假设 ADFS 可以用作身份提供程序,它使用 Active Directory 作为其存储库(这意味着我们可以存储用户名、密码......识别用户所需的)。我的困惑是

  • 当用户在 SP 中打开登录页面时,如果存在信任 SP和ADFS(IP)的关系,IP是否占用windows 登录 UserId 以检查活动目录中的用户?
  • 如果认证成功,那么 IP 发送 对 SP 的用户信息(作为 SAML 响应),以便我可以创建 登录用户的会话?
  • 我应该怎么做,如果用户从 SP 注销,我是否也必须 清除 IP 中的会话(现在是 ADFS)

如果我的假设是正确的,如何将 ADFS 实现为身份提供者(IP)并在 Asp.net 应用程序(服务提供者)中使用其服务?

【问题讨论】:

    标签: asp.net .net active-directory saml-2.0 adfs


    【解决方案1】:
    1. 当 SP 注意到用户未登录时,它会将用户发送给 IDP。这是显示登录页面的地方。 ADFS 可以配置为根据登录的 windows 用户对用户进行身份验证。
    2. 是的,可以将 ADFS 配置为在 SAML 响应中返回用户信息。这被定义为 ADFS 中的声明
    3. 当用户在 SP 中注销时,SP 应向 IDP 发送 SAML LogoutRequest 以删除 IDP 上的会话。

    Here is a library I have seen others use for .net 另一种选择是在您的应用程序前面使用诸如Shibboleth 之类的产品

    【讨论】:

    • ,所以当用户通过活动目录用户名和密码登录到他的PC时,打开服务提供商URL时,他不必重新输入他的用户名和密码(这意味着不会有windows安全弹出窗口),ADFS可以这样配置吗?如果是的话,你能解释一下吗? :)
    【解决方案2】:

    您的问题是:“如何将 ADFS 实现为身份提供者 (IP) 并在 Asp.net 应用程序(服务提供者)中使用其服务”

    那么你已经用 SAML 标记了它?

    为什么要使用 SAML? (这里我说的是 SAML 协议而不是 SAML 令牌)。

    只需使用支持 OOTB 的 WS-Federation 和 WIF。 WS-Fed 也使用 SAML 令牌。

    如果您想使用 SAML,请参考 SAML : SAML connectivity / toolkitSAML : ASP.NET MVC application talking to SAML IDP

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-10
      • 1970-01-01
      • 2021-01-06
      • 2020-03-09
      • 2016-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多