在HttpBinding中进行HTTP身份验证之前,在WCF中操作HTTP标头

时间:2008-10-17 18:21:08

标签: .net wcf http-headers wcf-binding

这与this question

有关

我在自定义服务主机中托管此WCF服务。 IIS不是一种选择。

有没有办法在请求过程的早期在服务器堆栈中注入HTTP“Authenticate”头 (如果它丢失) - 这样默认用户就可以传入身份验证/我有匿名请求的授权流程吗?

我需要SERVER在接收端注入它 - 在进一步的WCF处理之前......

我很确定我可以使用自定义BindingElement,或通过扩展WebHttpBinding,但是任何示例或指导都将非常感激。我在WCF中找不到任何早期标头操作(预认证)的例子。

2 个答案:

答案 0 :(得分:1)

通过实现IDispatchMessageInspector,您可以插入管道服务器端;并操纵消息。

在AfterReceiveRequest方法中,您可以非常愉快地添加到Request.Headers。

使用行为属性换行并将其应用于您的服务。

答案 1 :(得分:-1)

我会输入它,但它很多。所以这是一个很好的参考。

Avner Kashtan的博客文章概述了我“想”你正在寻找的东西。希望这有帮助!

Adding Custom Headers To Every WCF Call