我们有一个Web应用程序(asp.net mvc 3),它应该支持通过AD进行内部使用的SSO。我们还有一个庞大的外部用户社区,我们希望为所有Web应用程序提供SSO。例如:external_user1使用相同的登录访问webappA,webappB和webappC。此外,domain \ user1可以访问所有三个webapps。我们计划使用WIF和ADFS 2.0。
我们不希望所有外部用户拥有AD帐户,所以过去我们可能尝试过使用ADFS 1.x和ADAM的解决方案。但是,我们在Windows Server 2008 R2和ADFS 2.0上无法使用AD LDS(ADAM的后继者)来验证用户。
什么是SSO方法(使用微软产品)?
答案 0 :(得分:6)
关键问题是您是否可以利用external_user1帐户存储。如果可以,那么您只需要在ADFS和STS之间添加另一个信任关系就可以了!这种方法是理想的,因为那时你不再需要维护external_user1了。基本上就是这样:
如果您无法利用其他用户帐户,那么您仍然可以使用ADFS v1.1并对自己有信任:
答案 1 :(得分:2)
您是否可以创建一个允许对ADAM进行身份验证且与ADFS v2.0具有信任关系的自定义STS?
答案 2 :(得分:1)
除了Eugenios的回答,您还应该调查Microsoft Azure ACS。这将为您提供Gooogle,Facebook,Yahoo和其他OpenId提供商的联盟。
您的身份验证链如下所示:
您的应用 - > ADFS - >活动目录 要么 你的应用 - > ADFS - > ACS - >谷歌。
在此站点中搜索ADFS标记,您会发现许多相关帖子。
答案 3 :(得分:0)
虽然这个问题适用于ADFS 2.0,其中对LDS作为身份提供者的支持被删除,但看起来这将在ADFS 4.0中重新引入