4D v16Single Sign On (SSO) unter Windows |
||||||||||||||||||||
|
4D v16
Single Sign On (SSO) unter Windows
Single Sign On (SSO) unter Windows
4D Server ermöglicht, Ihre Client-Server Lösungen unter Windows mit SSO (Single Sign On - Einmalanmeldung) auszurüsten. Ist SSO in Ihre 4D Lösung integriert, können 4D Benutzer auf die 4D Anwendung unter Windows zugreifen und müssen ihr Kennwort nicht erneut eingeben, wenn sie bereits im Windows Domain ihres Unternehmens angemeldet sind (über Active Directory). Hinter den Kulissen kann die 4D Server Applikation auf das Login zur Authentifizierung der Windows Sitzung zugreifen, das Sie über Ihre standardmäßige Login-Methode zum Einloggen der 4D Benutzer in die Anwendung verwenden können. Hinweis: Einen Überblick über die Authentifizierung und andere Sicherheitsvorkehrungen in 4D finden Sie im 4D Security guide. Das SSO Feature ist verfügbar:
SSO Features sind in 4D Server standardmäßig nicht aktiviert. Um diese Funktionalität zu nutzen, müssen Sie in den Datenbank-Eigenschaften von 4D Server auf der Seite Client-Server/Netzwerk die Option Benutzer-Authentifizierung mit Domain Server setzen: Markieren Sie diese Option, verbindet sich 4D direkt mit der Active Directory Zone des Windows Domain Server und erhält die verfügbaren Tokens der Authentifizierung. Diese Option bietet Standard Authentifizierung über das NTLM Protokoll. 4D unterstützt NTLM und Kerberos Protokolle. Es wird gemäß der aktuellen Konfiguration von 4D automatisch ausgewählt (siehe Anforderungen für SSO). Um das Kerberos Protokoll zu verwenden, müssen Sie zusätzlich den Bereich Dienstprinzipalname ausfüllen (siehe unten). Wollen Sie Kerberos als Authentifizierungsprotokoll nutzen, müssen Sie auf der Seite Client-Server/Netzwerk der Datenbank-Eigenschaften auch die Option Dienstprinzipalnamen ausfüllen: Diese Option deklariert SPN als Set in der Active Directory Konfiguration. Ein Dienstprinzipalname ist eine einmalige Kennung der Service Instanz. Die Authentifizierung über Kerberos nutzt SPNs, um einem Service Logon Account eine Service Instanz zuzuweisen. So kann eine Client Anwendung den Service auffordern, ein Account zu authentifizieren, auch wenn der Client ohne Account Name ist. Weitere Informationen dazu finden Sie auf der msdn Web Site unter SPN.Der SPN Identifier muss folgendermaßen aufgebaut sein:
In 4D Anwendungen wird SPN an folgender Stelle eingerichtet:
Sind SSO Features aktiviert (siehe oben), ist die Benutzer-Authentifizierung, die auf den Anmeldedaten zur Windows Sitzung basiert, zum Öffnen einer Sitzung auf 4D Server zuverlässig. Beachten Sie, dass das SSO Feature nur das authentifizierte Login liefert, Sie müssen es in Ihre Standard 4D Login-Methode übernehmen. Versucht eine 4D remote Anwendung, sich an den Server anzumelden, müssen Sie die 4D Funktion Current client authentication aufrufen, die das Benutzer-Login gemäß der Definition in der Active Directory Zone zurückgibt. Dieses Login können Sie dann in Ihr eigenes Identifikationssystem übernehmen (über die eingebauten Benutzer und Gruppen, LDAP Befehle oder einen eigenen Mechanismus), um in Ihrer 4D Anwendung die passende Sitzung für den remote Benutzer zu öffnen. Folgende Übersicht zeigt die Vorgehensweise: Die Funktion Current client authentication muss in der Datenbankmethode On Server Open Connection aufgerufen werden. Sie wird jedes Mal aufgerufen, wenn ein remote 4D eine neue Verbindung zur 4D Server Datenbank öffnet. Schlägt die Authentifizierung fehl, können Sie in $0 einen nicht-Nullwert zurückgeben, um die Anmeldung abzuweisen. Die Funktion Current client authentication rufen Sie mit folgender Syntax auf: login:=Current client authentication(Domain;Protokoll)
Weitere Informationen dazu finden Sie unter der Funktion Current client authentication. 4D Server verwaltet verschiedene SSO Konfigurationen, die sich nach der aktuellen Architektur und Einstellungen richten. Das Protokoll zur Authentifizierung (NTLM oder Kerberos) sowie die von der Funktion Current client authentication zurückgegebene Information richten sich nach der aktuellen Konfiguration, wenn alle Anforderungen erfüllt sind. Der Parameter Protokoll von Current client authentication gibt das aktuell verwendete Protokoll für die Authentifizierung zurück. Nachfolgende Übersicht zeigt die verschiedenen Situationen:
(*) Folgende spezifische Konfiguration wird unterstützt: der 4D remote Benutzer ist ein lokaler Account auf dem Rechner, der zur selben AD Zone wie 4D Server gehört. In diesem Fall wird im Parameter Domain der Name des Rechners mit 4D Server eingesetzt. Beachten Sie, dass die Anzeige von den aktuellen Benutzereinstellungen abhängt: Ist keine verfügbar, werden leere Strings zurückgegeben. (**) Wurden alle Kerberos Anforderungen berücksichtigt, die Funktion Current client authentication gibt jedoch in Protokoll "NTLM" zurück, hat das folgende Gründe:
Hinweis: Eine gültige Syntax bedeutet nicht, dass die SPN Deklaration ansich korrekt ist; existiert SPN nicht in der AD Zone, gibt Current client authentication leere Strings zurück.
Siehe auch
|
EIGENSCHAFTEN
Produkt: 4D
GESCHICHTE
Erstellt: 4D v15 R5 ARTIKELVERWENDUNG
4D Server Handbuch ( 4D v16) |
||||||||||||||||||