2010-12-10 9 views
1

Wir arbeiten an einer maschinellen Authentifizierung, damit jeder Benutzer auf bestimmten Computern auf unsere .Net-Site zugreifen kann. Die Liste der Maschinen ändert sich, aber alle befinden sich in einem internen Netzwerk. Ihre IP-Adressen werden als nicht statisch angenommen.Einschränken des Zugriffs auf die .Net-Website durch die Active Directory-Computergruppe

Um die Verwaltung zu vereinfachen, möchten wir den Zugriff auf eine Active Directory-Computergruppe beschränken können.

Ich kann die AD-Abfrage verwalten, meine Frage ist wo ist der beste Ort, um den Namen der Maschine zu ziehen und die gesamte Sitzung zu authentifizieren?

Ich schaute in die Erstellung eines neuen HttpModule, aber es scheint, ich muss jede Anfrage authentifizieren. Das Authentifizieren jeder Anforderung scheint nicht ideal, wenn eine AD-Abfrage beteiligt ist.

Antwort

3

Das Web ist zustandslos, daher wird jede Anfrage immer authentifiziert, egal welche Technologie Sie verwenden. Der Trick, AD nicht zu hämmern, ist jedoch ein Session-HTTP-Cookie. Sie würden diesen Cookie bei der ersten Anfrage setzen und bei nachfolgenden Anfragen danach suchen. Sie würden eine Art kryptografischen Schutz für das Cookie benötigen, aber glücklicherweise ist dies in ASP.NET fertig gerollt. Ich würde sagen, dass Sie die Forms Authentication-Infrastruktur nutzen können, um einen Cookie zu setzen und zu validieren - Sie würden die ursprüngliche Authentifizierung einfach auf AD verlagern, anstatt von einem geposteten Formular zu lesen.

Hier ist ein guter Ausgangspunkt:

die Formularauthentifizierung Ticket und Cookie- http://support.microsoft.com/kb/910443

1

Sie nicht jede Anforderung authentifizieren müssen Verständnis. Authentifizieren Sie die erste Anforderung mit Ihrem HttpModule, und fügen Sie entweder den Anforderer zu der Sitzung hinzu, oder speichern Sie die An-Meldeinformation für einen kurzen Zeitraum.

Verwandte Themen