客户端我需要向我发出的每个服务调用传递一条信息(例如,这个例子就是一个字符串)。服务使用此字符串(currentRole)以及用户/通过凭据来检索用户与其当前角色关联的声明集。

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

1)修改邮件标题,使其从客户端发出并验证邮件标题是否存在服务端。

2)使用自定义凭据,根据我的理解,需要自定义安全令牌以存储字符串。

我是否还缺少其他方法,例如只将信息添加到现有令牌/凭证中?是否有上述解决方案的优缺点?

感谢。

有帮助吗?

解决方案

您还可以编写一个客户端行为,将此标题添加到消息中(因此您不必考虑在代码中自行执行此操作)。

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

请参阅此 CodeProject文章对于一些初学者信息,这个博客文章提供更深入的专业知识。

马克

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top