是否有人成功配置ADFS2以使用Live Id(或Google,Yahoo等)作为声明提供商,如果是,那么您在哪里获得配置说明(请与他人分享) 我以前曾在Azure中使用ACS来连接Live ID和ADFS,但是想使用ADFS作为“HUB”
答案 0 :(得分:2)
AD FS 2.0本身不允许对自定义身份验证存储进行身份验证:它只能对Active Directory帐户进行身份验证。 (此时请参阅this answer of mine了解官方文档。)
an answer to another StackOverflow question建议采用一种解决方案,但措辞有点误导。如果您阅读the actual blog post,您会看到他们添加了额外的STS。 AD FS 2.0为其他STS提供“声明提供商信任”,并重定向到它(如果“主域发现”设置正确)。然后,其他STS以其喜欢的方式执行身份验证(例如,使用Google或Live帐户),将令牌发送回AD FS,然后AD FS运行其声明规则。
因此,在该解决方案中,它不是针对替代商店的AD FS 2.0 身份验证,而是重定向到针对该商店进行身份验证的STS。
答案 1 :(得分:0)
使用自定义STS联合ADFS可以实现这一点。
我们的想法是构建一个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不应该花费很长时间。