Wie kann ich in das aktuelle FormsAuthenticationModule in einem Medium Trust-Umgebung Haken?
-
08-07-2019 - |
Frage
Ich habe ein Httpmodule in meiner Anwendung, die die FormsAuthenticationModule das Authentifizieren Ereignis mit dem folgenden Code hakt in:
public void Init(HttpApplication context)
{
FormsAuthenticationModule faModule =
(FormsAuthenticationModule)context.Modules["FormsAuthentication"];
faModule.Authenticate +=
new FormsAuthenticationEventHandler(faModule_Authenticate);
}
Leider schlägt der Aufruf zu context.Modules weil die App in einer Medium-Trust-Umgebung ausgeführt werden muss. Gibt es eine andere Art und Weise, die ich in diesem Fall kann der Haken?
Lösung
Das ist eine schwierige Frage - Sie nicht einmal die Module Sammlung aus Ihrer globalen Anwendungsdatei zugreifen können
.Sie könnten versuchen, Ihren eigenen Code aus dem AuthenticateRequest Handler in globalem Aufruf:
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
// Call your module's code here..
}
Sie können nicht Ihre benutzerdefinierten Modul aus der Sammlung packen, entweder, so würden Sie einen statischen Verweis auf das Modul der Bibliothek benötigen.
Anders als die AspNetHostingPermission Gewährung ( wie hier für andere Berechtigungen detailliert < in der Maschinenebene web.config auf Ihre Website / a>), ich bin aus Ideen!