3

有没有人成功地将 ADFS2 配置为使用 Live Id(或 Google、Yahoo 等)作为声明提供程序,如果是的话,您从哪里获得配置说明(请分享它们)我以前曾设法在 Azure 中使用 ACS连接到 Live Id 和 ADFS,但想将 ADFS 用作“HUB”

4

2 回答 2

2

AD FS 2.0 本身不允许针对自定义身份验证存储进行身份验证:它只能对 Active Directory 帐户进行身份验证。(此时请参阅我的这个答案以获取官方文档。)

在对另一个 StackOverflow 问题的回答中提出了一个解决方案,尽管措辞有点误导。如果您阅读实际的博客文章,您会发现他们添加了额外的 STS。AD FS 2.0 对该其他 STS 具有“声明提供者信任”,并重定向到它(如果“主域发现”设置正确)。然后,其他 STS 以它喜欢的任何方式执行身份验证(例如,使用 Google 或 Live 帐户),将令牌发送回 AD FS,然后运行其声明规则。

因此,在该解决方案中,不是 AD FS 2.0针对替代存储进行身份验证,而是重定向到 STS,后者针对该存储进行身份验证。

于 2012-06-20T20:18:42.477 回答
0

这可以通过与 ADFS 联合的自定义 STS 实现。

这个想法是构建一个 STS,它本身使用 OAuth2 来验证用户,然后(可选)执行自己的 Active Directory 查询以找到具有相同电子邮件地址的用户并从 AD 读取角色。然后自定义 Sts 将所有声明返回给您的应用程序。

正如 Marnix 指出的那样,在 adfs 页面而不是身份提供者页面上提供凭证的混合方法是可能的。这相当困难,因为它涉及在您的 sts 上设置 wstrustfeb2005 端点。我有一个关于如何做到这一点的六部分教程:http: //netpl.blogspot.com/2011/08/adfs-20-quest-for-customizing-adfs-sign.html

尽管如此,后一种方法要困难得多,而暴露与 adfs 联合的被动 sts 不会花费您很长时间。

于 2012-06-20T20:35:37.527 回答