我刚刚开始使用基于声明的安全性,并且有一个与身份委托相关的问题。我设法设置了一个本地虚拟 STS 和几个依赖它进行身份验证的 WCF 服务。Web 应用程序通过 STS 对用户进行身份验证,并代表用户调用服务 A (使用ChannelFactory.CreateChannelActingAs
)。这工作正常。
现在我想使用 Azure 访问控制服务 (ACS) 作为联合提供程序,并使用 Google 帐户(或其他)登录,完全摆脱虚拟 STS。我能够对 Web 应用程序进行身份验证,但在尝试调用 Web 服务时收到“错误请求”响应。
我意识到有很多事情可能是问题所在,但是我还没有真正检查过 ACS 是否支持这个 ActAs 的 WS-Trust 概念。我发现一个论坛帖子表明不支持 ActAs,但它大约有六个月的历史。
谁能确认 ACS 是否支持 ActAs?如果没有,是否有任何其他聪明的方式来实现支持的身份委托?