我正在构建Azure托管的WCF服务,我希望使用存储在SQL Server数据库中的凭据来保护ACS。我查看了一堆ADFS2示例,但尚未弄清楚如何执行此操作。我敢肯定我在这里遗漏了一些明显的东西,所以任何建议都会非常感激。谢谢......
答案 0 :(得分:1)
您应该可以创建自己的STS,如下所示:
http://dotnet.dzone.com/news/5-minutes-wif-make-your-aspnet
只需添加代码即可查看您的用户。
本文讨论如何创建将STS添加到Azure访问控制服务所需的联合元数据:
WIF manually generate federationmetadata.xml
在原始项目中,您应该能够将访问控制服务添加为STS,如果一切设置正确,您将看到新的STS。
答案 1 :(得分:1)
如果您想使用ACS(在您的帖子中不清楚为什么需要它),您需要让您的WCF服务信任ACS,然后配置ACS以信任可以验证用户agaist SQL的STS。您不能使用ADFS,因为它目前仅支持使用AD进行身份验证。
您的选择多种多样,但最简单的方法是在Richard提及时创建您自己的STS,或者使用已经像StarterSTS或CodePlex中更现代的Identity Server的那些(两者都是开源的,由来自Thinktecture的Dominick Baier提供) )。
问题仍然存在:为什么需要ACS?最简单的解决方案是让您的WCF服务直接信任(SQL支持的)STS。
以下是ACS何时有用的一些示例: