ich Httphandlers bin mit PDF-Report-Dateien zu generieren "on-the-fly" mit dem Benutzerkontext authentifiziert. Um jedoch die Bericht-PDF-Datei zu erstellen, muss ich eine Methode für einen sicheren WCF-Dienst mit dem Kontext des Aufrufers (des authentifizierten Benutzers) aufrufen.Impersonate FormsAuthenticated Benutzer in Httphandler für WCF Anruf
Ich sah viele Antworten für die Windows-Authentifizierung, aber ich bin mit plain old Authentifizierung Forms so die Antworten nicht gelten. Die Authentifizierung auf der Serviceseite erfolgt mithilfe der ASP.NET-Mitgliedschaft (derselbe Server, der den HttpHandler hostet).
Es sollte (hoffentlich) eine Möglichkeit für mich, auf den Anrufer Zusammenhang mit dem Dienst übergeben einfach.
Ich fürchte, ich habe mich nicht klar genug gemacht.
Was ich habe, ist ein WCF-Dienst und ein HttpHandler. Der Benutzer wird mit dem WCF-Dienst mit ASP-Mitgliedschaft authentifiziert.
Was ich tun möchte, ist, in der Httphandler, der Lage sein,
SetContextAsCaller();
myWCFService.MyMethodCall();
und MyMethodCall()
mit dem Kontext des HttpCaller genannt zu tun haben, auf seine ASP-Ticket/username passieren usw.
Danke für die schnelle Antwort, aber das ist nicht das, was ich brauche. Ich habe bereits einen sicheren WCF-Dienst. Dies ist mein Problem, weil ich im Dienst die ASP-Mitgliedschaft verwende, um den Aufrufer zu validieren und seine Benutzer-ID abzurufen. Wenn ich den Dienst über den HttpHandler anrufe, verliere ich den Kontext des Anrufers und der Dienstanruf schlägt fehl. Ich möchte den Anrufer von HttpHandler imitieren, wenn er den WCF-Dienst aufruft. – R4cOON
OK, habe meine Antwort mit einigen zusätzlichen Artikeln zum WCF-Identitätswechsel aktualisiert - helfen diese? –