2010-07-06 8 views
7

Betrachten Sie eine Website für ein Intranet, das auch über das Internet erreichbar sein sollte. Im Intranet möchten Sie die Windows-Authentifizierung verwenden und im Internet möchten Sie, dass die Benutzer mit der Formularauthentifizierung auf die Site zugreifen.Windows-Authentifizierung mit Formularauthentifizierung mischen

Ist es möglich, mit diesen beiden einen gemischten Modus einzurichten? Ich möchte nur bestätigen, dass der Benutzer bei beiden angemeldet ist, ohne zwei Sites zu verwenden.

Antwort

1

Hei, hatte ich diese Seite im Gespräch über 2 Level-Authentifizierung mit IIS7 gesehen: IIS 7.0 Two-Level Authentication with Forms Authentication and Windows Authentication, und diese anderen, die die gleichen Anforderungen wie Sie hat: IIS Authentifizierung im gemischten Modus für ASP.NET-Anwendungen - http://beaucrawford.net/post/IIS-ldquo3bmixed-moderdquo3b-authentication-for-ASPNET-Application.aspx, aber ich habe nicht versucht irgendwas, vielleicht funktioniert es für dich? Ich denke, Sie müssen es nur für Ihre Bedürfnisse anpassen.

+0

Die verknüpfte Lösung scheint gründlich zu sein, erfordert aber vollständige vertrauenswürdige oder gacced Provider-Assemblys. –

2

Ich kenne keine eingebaute Methode, dies zu tun. Sie können jedoch eine einfache Problemumgehung verwenden:

Wählen Sie die Formularauthentifizierung als primäre Authentifizierung aus, und weisen Sie ihr die Windows-Authentifizierung zu. Sie können dies in den Anwendungen AuthenticateRequest mit global.asax oder einem speziellen http-Handler oder -Modul tun. Identifizieren Sie Ihren Intranetbenutzer in dieser Anforderung, und legen Sie das Formularauthentifizierungs-Cookie mithilfe von FormsAuthentication.SetAuthCookie programmgesteuert fest.

Ich benutze dies tatsächlich für einen gemischten Modus Formen und IP-Nummer Authentifizierung, aber ich denke, es würde für Formulare und Windows Auth auch funktionieren.

Übrigens: Vielleicht Mischformen und IP-Nummer Authentifizierung ist eine zweite Lösung für Ihr Problem. Wenn Ihr Server Teil einer DMZ ist, können Sie Ihren Intranet-Benutzer anhand des IP-Nummer-Subnetzes erkennen.

Verwandte Themen