wcf - WCF通过所有服务调用传递额外的安全性数据

标签 wcf security wcf-security wcf-client

在客户端,我需要向我进行的每个服务调用传递一条信息(在此示例中,我们说一个字符串)。服务使用此字符串(currentRole)以及用户/通过凭证来检索与其当前角色相关联的用户声明集。

到目前为止,我遇到的解决方案是:

1)修改消息头,使其从客户端发出,并验证消息头在服务端。

2)使用自定义凭据,据我所知,该凭据也需要自定义安全 token 来存储字符串。

我还缺少其他任何方法,例如仅将该信息添加到现有 token /凭证中吗?上面提到的解决方案是否有优点/缺点?

谢谢。

最佳答案

您还可以编写一个客户端行为,将此 header 添加到消息中(这样就不必考虑自己在代码中进行操作了)。

您可以实现IClientMessageInspector,并在BeforeSendRequest方法覆盖中添加消息 header 。当您将此行为添加到每个客户端端点时,它将自动将该消息 header 添加到每个外发消息中。

有关某些入门信息,请参见此CodeProject article;有关其他更深入的专门知识,请参见此blog post

马克

关于wcf - WCF通过所有服务调用传递额外的安全性数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1433885/

相关文章:

c# - WCF 异常 : Cannot load the X. 509 配置中指定的证书标识,如何解决?

wcf - 如何根据发布设置文件发布 WCF?

c# - .NET 4.5 中的 WCF 不安全响应

php - 限制 PHP 执行?

web-services - 使用 ColdFusion 创建安全的 Web 服务

wcf - 服务器使用用户帐户的 WCF Kerberos 客户端模式

wcf - WCF 中的同时调用处理

wcf - 使用 Net.TCP 托管 WCF 服务

javascript - 让 api 调用只监听 localhost

c# - 来自 WCF 请求的 IPrincipal