我正在尝试build立一个声明感知的Web应用程序开发环境。 我是ADFS 2.0的新手,最终我希望能够对两个不同的域进行身份validation。 我觉得我非常接近,但是我从其中一个ADFS服务器收到证书错误。
在处理联合身份validation服务configuration期间,发现元素“serviceIdentityToken”具有无效数据。 已configuration的证书的私钥无法访问。
在Web应用程序中input凭据后,此错误将logging在域1上的ADFS服务器事件日志中。 即使有工作证书,我也会被传递到401未经授权的访问页面。
运行ADFS服务的用户帐户具有权限到证书的私钥,所以我不知道为什么我得到此错误。
我到目前为止所做的:
我也没有在任何一个ADFS服务器上build立一个依赖方信任。 这是必要的吗? 我似乎无法find任何好文件解释这应该如何工作。
我遵循这个( http://blogs.msdn.com/b/alextch/archive/2011/06/27/building-a-test-claims-aware-asp-net-application-andintegrating-it-with –adfs-2-0-security-token-service-sts.aspx )设置这个指南,但我觉得可能有一个简单的步骤,我已经错过了某个地方。
总结:
在此先感谢您的帮助。 熟悉ADFS的人可以在几分钟之内设置它!
看起来你正在尝试做的事情是使用一个来自域1的adfs联合开发服务器,然后使用来自domain1的adfs使用声明提供程序信任接受来自domain2中的adfs的令牌。 这样,来自domain1和domain2的用户将能够login并访问开发者服务器的应用程序,只要声明规则configuration正确。
因此,第二个问题的答案是configurationdomain1中的adfs的声明提供程序信任以指向域2中的adfs,并声明规则以转换/传递从domain1中的adfs接收的声明。 然后,域2中的adfs也需要一个依赖方信任configuration指向adfs 1,您在哪里select要求收集和发送的信息。
至于question1,它肯定看起来像adfs中的服务通信证书的私钥是不可访问的。 如果您将adfs作为服务器场安装,则您将拥有一个基于域的服务帐户。 如果您将其作为独立adfs构build,则将使用内置networking服务帐户。 这个select决定了如何在证书上configuration权限。
你提到了adfsangular色和adfs 2.0,所以我不确定你是在两台服务器上使用adfs 2还是在windows 2008 / R2中附带的内置angular色。 请澄清。
这些一步一步的指导应该有所帮助。
所有的事情adfs请参阅
http://social.technet.microsoft.com/wiki/contents/articles/2735.ad-fs-2-0-content-map.aspx