Authentifizierungsmethoden in IIS

Wer mit dem IIS (Microsoft Internet Information Service) arbeitet wird immer wieder mit den verschiedenen Authentifizierungsmethoden konfrontiert. Die nachfolgende Übersicht erläutert die einzelnen Möglichkeiten und deren Vor- und Nachteile.

Siehe dazu auch den Unterschied bezüglich Impersonation und Delegation.

  • Anomyous Authentication
  • Basic Authentication
  • Integrated Windows Authentication
    – NTLM
    – Kerberos
  • Forms Based Authentication

Anonymous Authentication

  • Keine technische Client Authentifizierung
  • Jedermann kann die Webressourcen zugreifen
  • Primärer Einsatzzweck für öffentlich zugängliche Webressourcen

Vorteil

  • Einfach aufzusetzen
  • Wird von allen Browsern unterstützt
  • keine Benutzerverwaltung notwendig

Nachteil

  • Die Benutzer sind nicht individuell authentifiziert

Basic Authentication

  • Teil der HTTP 1.0 Spezifikation
  • Benutzername und Passwort müssen eingegeben werden

Vorteil

  • wird praktisch von allen Webservern, Proxy Servern und Browser unterstützt
  • Der individuelle Benutzer ist identifiziert

Nachteil

  • By design unsicher (Übermittlung Passwort als Klartext bzw. “nur” base64 codiert)
  • Um die Sicherheit zu erhöhen muss SSL/TLS implementiert/aktiviert sein
  • Selbst mit SSL/TSL kennt der Webserver das aktuelle Passwort
  • Die einzelnen Benutzerkontos müssen verwaltet werden

Integrated Windows Authentication: NTLM

  • Intergrierte Windows Authentifizierung kann entweder mittels dem NTLM oder Kerberos Mechanismus eingesetzt werden.
  • Benutzername/Passwort muss entweder vom Benutzer oder dem Client eingegeben/übergeben werden.

Vorteil

  • Einfach zu implementieren für Intranet Umgebungen, die mit Windows betrieben werden.
  • Viel sicherer als Basic Authentication.

Nachteil

  • Kann nicht über Proxy Server oder Firewalls hinweg eingesetzt werden
  • Erlaubt keine Delegation zu anderen Ressourcen
  • Eingeschränkter Browser Support (wird nicht von allen Browsern unterstützt)

Integrated Windows Authentication: Kerberos

  • Based on the trusted third party scheme
  • Benutzername/Passwort muss entweder vom Benutzer oder dem Client eingegeben/übergeben werden.

Vorteil

  • Sicherster Authentifizierungsmechanismus
  • Gegenseitige Authentifizierung (Mutual Authenticiation), d.h. Benutzer UND Ressource werden authentifiziert
  • Delegation zu anderen Ressourcen ist möglich
  • Bessere Performance als NTLM
  • Basiert auf Standards und somit verbesserte Interoperabilität

Nachteil

  • Kann nicht über Proxy Server oder Firewalls hinweg genutzt werden
  • Eingeschränkter Browser Support (wird nicht von allen Browsern unterstützt)

Authentifizierungsszenarien und Impersonation

Die nachfolgende Übersicht zeigt den Zusammenhang der einzelnen Authentifizierungsszenarien und der Möglichkeit der Impersonation:

Basic Authentication
Zugriff: Benutzername / Kennwort muss eingegeben werden
Impersonation: nein
Einsatz: Internet Szenarien

NTLM Authentication
Zugriff: Single Sign on
Impersonation: nein
Einsatz: Intranet Szenarien (nicht für Internet Szenarien)

Kerberos Authentication
Zugriff: Single Sign on
Impersonation: Delegation nur möglich bei Aktivierung von SPN
Einsatz: Intranet Szenarien (nicht für Internet Szenarien)

Forms Authentication
Zugriff: Benutzer muss Benutzername und Kennwort im Formular eingeben
Impersonation: ja
Einsatz: Beste Lösung für Internet Szenarien