C# 如何将安全令牌添加到向WCF服务发出的请求的头中?

C# 如何将安全令牌添加到向WCF服务发出的请求的头中?,c#,wcf,C#,Wcf,我已经实现了wcf服务,并将使用TCP进行传输。我想知道,如何将安全令牌(在本例中为guid)粘贴到向wcf服务发出的请求的头上?有人能在这方面帮助我吗,或者给我一些方法吗?或者,如果有什么具体的概念需要我学习?希望这能对您有所帮助 如何:启用WCF身份验证服务 还有一个希望这会对你有所帮助 如何:启用WCF身份验证服务 还有另外一个看看这里的链接MSDN它向您展示了如何格式化安全标头 此MSDN站点将解释您可以使用的协议类型和标题内容 这就是Microsofts安全标头传递GUID时的样子 &

我已经实现了wcf服务,并将使用TCP进行传输。我想知道,如何将安全令牌(在本例中为guid)粘贴到向wcf服务发出的请求的头上?有人能在这方面帮助我吗,或者给我一些方法吗?或者,如果有什么具体的概念需要我学习?

希望这能对您有所帮助

如何:启用WCF身份验证服务


还有一个

希望这会对你有所帮助

如何:启用WCF身份验证服务


还有另外一个

看看这里的链接MSDN它向您展示了如何格式化安全标头 此MSDN站点将解释您可以使用的协议类型和标题内容

这就是Microsofts安全标头传递GUID时的样子

<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><u:Timestamp u:Id="_0">
  </u:Timestamp><o:UsernameToken u:Id="uuid-b96fbb3a-e646-4403-9473-2e5ffc733ff8-1">
</o:UsernameToken></o:Security>

在此处查看此链接MSDN它向您展示了如何格式化安全标头 此MSDN站点将解释您可以使用的协议类型和标题内容

这就是Microsofts安全标头传递GUID时的样子

<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><u:Timestamp u:Id="_0">
  </u:Timestamp><o:UsernameToken u:Id="uuid-b96fbb3a-e646-4403-9473-2e5ffc733ff8-1">
</o:UsernameToken></o:Security>

操作上下文提供了传入和传出头的集合,可用 通过IncomingMessageHeaders和OutgoingMessageHeaders属性:

public sealed class OperationContext : ...
{
   public MessageHeaders IncomingMessageHeaders {get;}
   public MessageHeaders OutgoingMessageHeaders {get;}
   //More members
}
每个集合的类型为MessageHeader(即MessageHeader的集合 对象):


操作上下文提供了传入和传出头的集合(如果可用) 通过IncomingMessageHeaders和OutgoingMessageHeaders属性:

public sealed class OperationContext : ...
{
   public MessageHeaders IncomingMessageHeaders {get;}
   public MessageHeaders OutgoingMessageHeaders {get;}
   //More members
}
每个集合的类型为MessageHeader(即MessageHeader的集合 对象):


你能给出一个你想要的标题布局的例子吗?我不确定hader应该是什么样子,它只需要包含安全令牌(在我们的例子中只是一个guid)。你能给出一个你想要标题布局的例子吗?我不确定hader应该是什么样子,它只需要包含安全令牌(在我们的例子中只是一个guid)。非常感谢。我想这可能对我有帮助:)如果我必须在wcf服务本身的消息头中设置guid,我可以在实现IDispatchMessageInspector的方法中这样做吗?非常感谢。我想这可能对我有帮助:)如果我必须在wcf服务本身的消息头中设置guid,我可以在实现IDispatchMessageInspector的方法中这样做吗?