我有两个使用相同STS进行身份验证的MVC站点。我需要创建一个WCF服务作为其中一个站点的一部分,允许其他站点检索数据。
这些网站可能位于可通过互联网访问的不同计算机上(尽管目前它们位于同一台计算机上),并且只能从客户端站点访问WCF服务。用于登录客户端站点的身份验证令牌应传递给WCF服务。
我一直在关注可用的不同WS-Security选项(传输,消息等),并且它不是100%下沉,我觉得我最终会实现某些功能这看起来很安全,但由于缺乏了解,实际上并不安全。任何帮助非常感谢。
编辑:
我的第一次尝试是使用传输层安全性,并在IIS中使用require SSL设置WCF服务虚拟目录。但是这给我留下了错误:
"根据验证程序,远程证书无效。"
我无法确保特定客户端连接到该服务,只是客户端拥有来自可信CA的证书。至少据我所知。我可能在这里缺少一些重要的东西。
答案 0 :(得分:1)
用于登录客户端站点的身份验证令牌应该是 传递给WCF服务。
在这种情况下,你应该要求" ActAs"来自STS的令牌:
复杂性的动机:Delegation, or traversing multilayer architectures
既然你提到了WS标准: Requesting Delegation (ActAs) Tokens using WSTrustChannel (as opposed to Configuration Madness)
不知道你的STS很难说更多,但谷歌搜索" ActAs令牌"可能会给你你需要的东西。