如何使用Windows Azure访问控制服务(ACS)和自定义STS修复“不是已知主体”错误

时间:2011-10-03 16:16:11

标签: azure federated-identity wif saml-2.0

我正在研究联邦身份验证的概念验证。

我创建了一个自定义STS(基本上是对Windows Identity Foundation Basic STS示例的重写)并设置了依赖方以成功使用它。

PoC的下一个阶段是使用Azure ACS允许使用Google / LiveID / etc凭据以及自定义STS提供的凭据进行联合登录。

一切正常但我无法让Azure ACS接受来自自定义STS的令牌。

给出的错误是:

ACS20001: An error occurred while processsing a WS-Federation sign-in response
ACS50008: SAML token is invalid
ACS50026: Principal with name 'mysts.mycorp.co.uk' is not a known principal

现在,对我来说,这似乎是ACS无法从自定义STS解密SAML令牌,但Azure ACS中安装的唯一解密证书是用于通过自定义STS签名和加密响应令牌的证书。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

答案当然是盯着我......

ACS要求STS 完全 的联合元数据中的颁发者名称与令牌中的匹配...

在我的app.config中,我错过了发布者名称的http:// - ACS正在解释缺少介绍人作为证书参考并正在寻找发行人{{1}的证书而不是CN=mysts.mycorp.co.uk