SPEISEKARTE

SSO (Single Sign On) mit IIS-integrierter Windows-Authentifizierung

Inhaltsverzeichnis

Übersicht über die integrierte Windows-Authentifizierung

Die integrierte Windows-Authentifizierung (IWA) ist ein Mechanismus, der IIS automatisch Benutzerauthentifizierungsinformationen bereitstellt, wenn IIS und der Benutzer bei derselben Domäne angemeldet sind. Wenn Sie eine Site mit ASP.NET C# erstellen, können Sie eine Benutzerauthentifizierungsbestimmung und authentifizierte Benutzerinformationen erhalten.

Dies ermöglicht Benutzern den Zugriff auf von IIS gehostete (oder verknüpfte) Webanwendungen ohne zusätzliche Anmeldevorgänge und ermöglicht die SSO-Integration mit anderen Anwendungsservern.

*Wenn Sie nicht derselben Domäne angehören oder ein nicht authentifizierter Benutzer auf die IIS-Seite zugreift, wird ein Anmeldedialog angezeigt. Wenn Sie sich nicht korrekt authentifizieren, wird ein HTTP-Fehler 401.1 – Nicht autorisiert angezeigt.

SSO-Ablauf (Single Sign On).

Der Ultimate-Plan von Chat&Messenger On-Premise ermöglicht SSO mit integrierter Windows-Authentifizierung. Der SSO-Ablauf ist wie folgt.

  1. Der Client greift zunächst auf die integrierte Windows-authentifizierte Seite /cam-iissso zu
  2. Die Seite /cam-iissso verwendet ASP.NET, um zu bestimmen, ob sie authentifiziert ist und eine Verbindung zu CAMServer herstellt.
  3. CAMServer führt eine LDAP-Suche durch, um zu bestätigen, dass es sich um einen regulären AD-Benutzer handelt, generiert ein ssoToken (einen eindeutigen Zufallswert von 30 Bytes oder mehr) und eine URL für den Zugriff auf CAMServer und fordert eine Umleitung an.
  4. Greifen Sie auf CAMServer zu und authentifizieren Sie sich mit ssoToken. Bei erfolgreicher Authentifizierung wird eine Sitzungs-ID für den API-Zugriff zugewiesen.

Die Benutzer-ID des Benutzers, der SSO verwenden wird, muss mit dem UserPrincipalName im Active Directory übereinstimmen und vorab in Chat&Messenger registriert werden. UserPrincipalName ist Ich möchte eine Liste der Active Directory-Benutzer erhalten und eine CSV-Datei erstellen. Bitte beachten Sie auch Folgendes.

Voraussetzungen für das Erreichen von SSO

Windows Server einer Domäne hinzufügen

Bitte fügen Sie den Windows-Server, auf dem CAMServer/IIS läuft, der Active Directory-Domäne hinzu.

Um die Domäne zu überprüfen, der ein vorhandener Windows-Server beigetreten ist, gehen Sie zu „Server-Manager“ → klicken Sie im linken Menü auf „Lokaler Server“ → klicken Sie auf „Computername“ und sehen Sie in der Spalte „Domäne“ nach.

Außerdem sollte sich IIS auf demselben Server wie CAMServer befinden und auf Port 80 ausgeführt werden. Wenn Sie einen LoadBalancer vor den CAMServer setzen, wird der CAMServer auf Port 8080 ausgeführt, sodass IIS auch Port 443 verwenden kann.

IIS installieren

Installieren Sie IIS von der Serverrolle.

Überprüfen Sie bei der Installation von IIS Folgendes in den Auswahloptionen für Rollendienste.

  • Windows-Authentifizierung
  • ISAPI-Filter
  • Separate Installation von ISAPI-Erweiterungen

Bitte führen Sie IIS auf demselben Server wie CAMServer und auf Port 80 aus.

ISAPI-Filter: Unterstützt das Laden von Erweiterungsmodulen in IIS. Erforderlich zum Laden von AspNetCoreModuleV2.

ISAPI-Erweiterungen: ISAPI-Erweiterungen zu IIS hinzufügen. Erforderlich für den AspNetCoreModuleV2-Betrieb. IIS-Manager starten (iisreset)

Installieren Sie das ASP.NET Core-Hosting-Bundle

ASP.NET Core-Hosting-Bundle Bitte installieren.

Beim Hosten von ASP.NET Core-Anwendungen in einer IIS-Umgebung wird durch die einfache Installation des ASP.NET Core Hosting Bundle automatisch Folgendes installiert: .NET Runtime ASP.NET Core Runtime

Starten Sie IIS nach der Installation neu und stellen Sie sicher, dass AspNetCoreModuleV2 in der Handlerzuordnung vorhanden ist.

Starten Sie IIS neu
Handler-Zuordnung

Anwendung hinzufügen (cam-iissso)

Fügen Sie die Anwendung cam-iissso zur Standardwebsite hinzu.

  • Alias: cam-iissso
  • Physischer Weg: \sys\cam-iissso-net8.0

Gewähren Sie außerdem der Gruppe IIS_IUSRS Anzeigezugriffsrechte (Lesen und Ausführen, Ordnerinhalte auflisten, Lesen) für den Ordner cam-iissso-net8.0.

Aktivieren Sie die Windows-Authentifizierung

Klicken Sie mit der rechten Maustaste auf „Windows-Authentifizierung“ und wählen Sie „Aktivieren“.

Wenn „Anonyme Authentifizierung“ aktiviert ist, deaktivieren Sie sie bitte.

Internetoptionen einstellen

Fügen Sie die von IIS bereitgestellte Site zur Intranetzone hinzu

Wählen Sie „Internetoptionen“, klicken Sie auf die Registerkarte „Sicherheit“ und wählen Sie „Lokales Intranet“. Klicken Sie auf die Schaltfläche „Sites“, wählen Sie „Erweiterte Einstellungen“ und fügen Sie die Site-URL hinzu

Überprüfen Sie die automatische Anmeldung

Klicken Sie auf „Stufe anpassen“ und stellen Sie unter „Benutzerauthentifizierung“ → „Anmeldung“ sicher, dass „Automatisch in der Intranetzone anmelden“ ausgewählt ist.

Diese Einstellung ist für alle Client-Terminals von C&M-Benutzern erforderlich, kann aber zentral über die Gruppenrichtlinien-Verwaltungskonsole verwaltet werden.

LDAP-Einstellungen

Wenn Sie Single Sign-On mit IIS durchführen,LDAP-Einstellungen(LDAPUrl, LDAPBaseDN, AD-Benutzer, der die Proxy-Authentifizierung durchführt) ist erforderlich.

Zugriff über FQDN (Fully Qualified Domain Name) und Registrierung des SPN

IISのWindows統合認証ページへホスト名(NetBIOS名)でアクセスする場合は不要ですが、FQDN(完全修飾ドメイン名 例 sso.example.com)でアクセスする場合はSPN 登録が必要です。

SPN (Service Principal Name) ist ein Name, der einen bestimmten Dienst im Active Directory bei der Kerberos-Authentifizierung eindeutig identifiziert. Wenn Sie über einen FQDN auf den Dienst zugreifen, ermöglicht die Registrierung eines SPN dem Client, erfolgreich ein Kerberos-Ticket für den Dienst anzufordern, auf den Sie zugreifen.

Zum Beispiel https://sso.example.com Beim Zugriff fordert der Client (Browser) ein Ticket von Active Directory an und sagt: „Ich möchte eine Verbindung zum Dienst namens HTTP/sso.example.com herstellen.“ Active Directory ermittelt, mit welchem Konto der SPN verknüpft ist, und stellt das entsprechende Serviceticket aus. Wenn der SPN nicht richtig registriert ist, schlägt die Kerberos-Authentifizierung fehl und das Authentifizierungsdialogfeld wird angezeigt.

Die SPN-Registrierung erfolgt auf dem Computerkonto, auf dem IIS gehostet wird. Zum Beispiel,Anzeige Für IIS, das mit dem Hostnamen ausgeführt wird, registrieren Sie den SPN wie folgt:

setspn -S HTTP/sso.example.com ad$

Nach der Registrierung können Sie die Überprüfung mit dem folgenden Befehl durchführen:

setspn -L ad$

Dieses Ergebnis HTTP/sso.example.com Wenn es angezeigt wird, war die SPN-Registrierung erfolgreich.

Nicht verfügbar in der HTTP-Proxy-Verbindungsumgebung

Bitte beachten Sie, dass SSO nicht in einer HTTP-Proxy-Verbindungsumgebung verwendet werden kann.

Konfiguration in einer LoadBalancer + SSL-Umgebung

Wenn Sie die integrierte Windows-Authentifizierung von IIS in einer LoadBalancer + SSL-Umgebung verwenden, lesen Sie bitte den folgenden Blog-Artikel.

あわせて読みたい
So konfigurieren Sie die integrierte Windows-Authentifizierung von IIS für den Erfolg in einer Load Balancer + SSL-Umgebung 【統合Windows認証について】 統合Windows認証(Integrated Windows Authentication)は、 IISとユーザーが同じActive Directoryドメインに所属している場合に、自動的...
  • URLをコピーしました!
Inhaltsverzeichnis