WCF REST RequestInterceptor-Authentifizierung

Ich versuche, eine grundlegende Authentifizierung in einem WCF RequestInterceptor durchzuführen. Ich benutzeDieser Artike Als Start

Das Problem, auf das ich stoße, besteht in der Kommunikation zwischen dem Interceptor und dem Dienst. Nichts, was ich versucht habe, scheint zu funktionieren. Bisher habe ich versucht:

OperationContext.Current requestContext.RequestMessage.Properties [HttpRequestMessageProperty.Name] ["foo"] = value HttpContext.Current.Request

Aber egal, was ich eingestellt habe, ich kann anscheinend nicht im Dienstverhalten selbst darauf zugreifen:

[AspNetCompatibilityRequirements( RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed )]
[ServiceBehavior( InstanceContextMode = InstanceContextMode.Single )]
public class AdvertiserService : ApiServiceBase<AdvertiserDataAccessor>, IAdvertiserService
{
    [WebGet( UriTemplate = "" )]
    public List<Advertiser> GetAdvertisers()
    {
        var request = HttpContext.Current.Request;
        var headers = HttpContext.Current.Request.Headers;
        var p = HttpContext.Current.Request.Headers["Principal"];

        OperationContext ctx = OperationContext.Current;
     }
}

Meine Fragen sind:

Wie kann ich Daten zwischen dem Interceptor und dem Dienst übertragen?

Gibt es eine kanonische Möglichkeit, Authentifizierungsinformationen zwischen ihnen zu übertragen (beachten Sie, dass die Authentifizierungsinformationen eine UID in der Datenbank und keine Windows-Identität sind)?

Vielen Dan

Antworten auf die Frage(2)

Ihre Antwort auf die Frage