【问题标题】:ACS Federation questionACS 联盟问题
【发布时间】:2011-11-19 19:25:47
【问题描述】:

我正在构建一个 Azure 托管的 WCF 服务,我想使用存储在 SQL Server 数据库中的凭据通过 ACS 来保护它。我查看了一堆 ADFS2 示例,但还没有弄清楚如何做到这一点。我敢肯定我在这里遗漏了一些明显的东西,所以任何建议都将不胜感激。谢谢...

【问题讨论】:

    标签: wcf azure wcf-security acs


    【解决方案1】:

    您应该能够创建自己的 STS,如下所示:

    http://dotnet.dzone.com/news/5-minutes-wif-make-your-aspnet

    只需添加代码以查找您的用户。

    这篇文章讨论了如何创建将 STS 添加到 Azure 访问控制服务所需的联合元数据:

    WIF manually generate federationmetadata.xml

    在您的原始项目中,您应该能够将访问控制服务添加为 STS,如果一切设置正确,您将看到新的 STS。

    【讨论】:

      【解决方案2】:

      如果您想使用 ACS(虽然在您的帖子中没有说明为什么需要它),您需要让您的 WCF 服务信任 ACS,然后将 ACS 配置为信任可以针对 SQL 对用户进行身份验证的 STS。您不能为此使用 ADFS,因为它目前仅支持使用 AD 进行身份验证。

      您的选择多种多样,但最简单的方法是创建您自己的 STS,就像 Richard 提到的那样,或者使用像 StarterSTS 或 CodePlex 中更现代的 Identity Server(两者都是开源的,由 Thinktecture 的 Dominick Baier 贡献) )。

      问题仍然存在:为什么需要 ACS?最简单的解决方案是让您的 WCF 服务直接信任(SQL 支持的)STS。

      以下是 ACS 何时有用的一些示例:

      • 您最终需要信任超过 1 个身份提供者
      • 您的服务期望的声明不是由身份提供者提供的(您需要转换/增强声明)。
      • 您需要令牌翻译(例如 SWT -> SAML)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-20
        • 2012-11-07
        • 2013-03-01
        • 2021-12-28
        • 2011-03-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多