3

客户端我需要将一条信息(对于这个例子让我们说一个字符串)传递给我所做的每个服务调用。服务使用此字符串 (currentRole) 以及用户/通行证凭据来检索与其当前角色相关联的用户声明集。

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

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

2)使用自定义凭据,据我了解,该凭据还需要自定义安全令牌来存储字符串。

我还缺少其他方法吗,例如将该信息添加到现有令牌/凭证中?上面提到的解决方案有什么优点/缺点吗?

谢谢。

4

1 回答 1

1

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

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

有关一些入门信息,请参阅此CodeProject 文章,有关更深入的知识,请参阅此博客文章。

马克

于 2009-09-16T16:25:45.683 回答