【问题标题】:Create Custom STS service创建自定义 STS 服务
【发布时间】:2016-08-18 05:02:29
【问题描述】:

我正在研究 WIF 在 SSO 方面的功能。实际上,我们在 SQLServer 下有一个“旧版”用户和权限管理数据库,我们希望在这个现有数据库之上构建一个全新的 SSO 系统。

在许多教程中,我发现他们谈论使用 ADFSv2 等现有 STS 进行 Active Directory 授权,但它不符合我的需求,因为我的用户/权限不是通过 AD 公开,而是在自定义的面向特定业务的 SQL Server 数据库中公开。

所以,我觉得我需要一个自定义安全令牌服务才能发出我自己的自定义令牌,但我不知道该怎么做。

我需要一些帮助或有关如何实现此目的的示例。

谢谢

【问题讨论】:

    标签: wif sts-securitytokenservice


    【解决方案1】:

    您可以在 WIF SDK 中找到 STS 示例。它包含一个带有自定义令牌的示例。看here

    我在“Programming Windows Identity Foundation”一书中看到了有关 SSO 的更多详细信息

    【讨论】:

    • 链接指向过时的 WIF 3.5。
    【解决方案2】:

    您可以利用底层 SQL Server 数据库构建自己的自定义安全令牌服务。您必须定义在用户进行单点登录后需要共享的范围和声明。下面是一些链接到下面的一些文章,这些文章帮助我建立了我的。我很确定通过以下链接,您将能够构建满足您需求的自定义 STS。

    WIF:http://chris.59north.com/post/Building-a-simple-custom-STS-using-VS2012-ASPNET-MVC

    http://www.primaryobjects.com/2013/08/08/using-single-sign-on-with-windows-identity-foundation-in-mvc-net/

    【讨论】:

      【解决方案3】:

      想解释一下为什么@paullem 的答案被删除了吗?

      其实是正确的答案!

      问题是关于使用 SQL DB 进行身份验证的 STS。这正是IdentityServer 所做的完全

      由于它是开源的,因此您可以按照自己的方式对其进行自定义,或者将其用作指南。

      所以重复答案 - “看看 Thinktecture.IdentityServer........”。

      更新

      您想要一个支持 SAML 协议并针对 SQL DB 进行身份验证的自定义 STS?

      WIF 不会为您执行此操作。

      您需要查看 Shibboleth 或 simpleSAMLphp 之类的东西,但它们不是基于 .NET 的。

      或者使用 IdentityServer 并向其添加 SAML 堆栈。

      参考:SAML : SAML connectivity / toolkit

      请注意:这不是一个简单的练习!

      【讨论】:

      • 问题是 IdentityServer3(如果我理解的话)是基于 OpendID 协议的。我们的客户使用的是 SAML2.0 协议。
      • 它基于 OpenID Connect、OAuth2 和 WS-Federation。不 - 它不支持 SAML。您为什么不在问题中指定这一点?
      • 好的。抱歉,鉴于 WIF 支持 SAML 和 OpenID,我认为没有必要。就我而言,我必须符合 SAML。那你就没有别的想法了吗?谢谢。
      • 否 - WIF 不支持 SAML 协议(仅支持 SAML 令牌)。它也不支持 OpenID。它只支持 WS-Federation。
      • 实现 SAML 身份提供者比服务提供者复杂得多。通常,您需要花在支持所有可能的现实生活用例上的时间将比购买商业产品花费更多。像safewhere.com/products/safewhere-identify-server 这样的产品为您在任何商店再次验证用户提供了必要的可扩展点。全面披露:我为该产品工作:)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-15
      • 2020-10-02
      • 1970-01-01
      • 2021-09-28
      • 2017-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多