如何从wcf请求拦截器获取授权标头

如何从wcf请求拦截器获取授权标头,wcf,Wcf,我需要对wcf服务的每个请求进行身份验证 public class AuthenticationInterceptor : RequestInterceptor { public AuthenticationInterceptor() : base(false) { } public override void ProcessRequest(ref System.ServiceModel.Channels.Reques

我需要对wcf服务的每个请求进行身份验证


 public class AuthenticationInterceptor : RequestInterceptor
    {
        public AuthenticationInterceptor() : base(false)
        {
        }

        public override void ProcessRequest(ref System.ServiceModel.Channels.RequestContext requestContext)
        {
          //How to access Request Header (Authorization header) from here?
        }
    }

您可以从
System.ServiceModel.Channels.Message
获取标题,因此请尝试

var message = requestContext.RequestMessage;
var request = (HttpRequestMessageProperty)message.Properties[HttpRequestMessageProperty.Name];

string authorization = request.Headers[HttpRequestHeader.Authorization];

我没有完全相同的设置,所以需要这个来让它工作:var requestContext=OperationContext.Current.requestContext;