Authentifizierungsmethoden

Authentifizierung und Berechtigungen

Um einen sicheren Zugriff auf die Daten des Portals über OData-Services zu gewährleisten, erfolgt die Benutzer-Authentifizierung über Login-Methoden des Portal Servers. Im Folgenden wird beschrieben, welche Arten von Authentifizierungsmethoden unterstützt werden und wie diese konfiguriert werden. Es kann dabei eine globale Methode für alle Services oder pro Service eine spezifische Methode definiert werden. Die Datengruppenberechtigungen eines Benutzers werden bei OData-Anfragen wie im Portal durch den Intrexx Portal Server geprüft. Besitzt ein Benutzer nicht ausreichende Berechtigung zum Lesen oder Ändern von Datensätzen, so antwortet der OData-Service entweder mit einer leeren Ergebnismenge oder einem Berechtigungsfehler.

Intrexx-Authentifizierung

Bei der Intrexx-Authentifizierung erfolgt die Anmeldung mit Benutzername und Passwort, wobei das Passwort mit einem vom Server bereitgestelltem Challenge-Key verschlüsselt übertragen wird. Dies ist die empfohlene Methode, um von einem Intrexx-Portal auf einen OData-Service in einem anderen Intrexx-Portal zuzugreifen.

Plain-Text-Authentifizierung

Die Plain-Text-Authentifizierung entspricht der HTTP-Basic-Authentifizierungsmethode. Damit kann eine Anmeldung am Service direkt im Browser erfolgen. Allerdings wird dabei das Passwort unverschlüsselt übertragen, weshalb diese Methode nur bei gleichzeitig aktivierter SSL-Verschlüsselung eingesetzt werden sollte.

Kombinierte Intrexx und Plain Text Authentifizierung

In der Regel wird für OData-Services eine Kombination aus Intrexx- und Plain-Text-Authentifizierung verwendet. Zunächst wird versucht, den Client via Intrexx-Authentifizierung anzumelden. Schlägt dies fehl, wird eine Plain-Text-Authentifizierung durchgeführt. Sollte auch diese zu einem Fehler führen, wird die Anfrage des Clients verweigert.

Windows-Integrierte-Authentifizierung

Bei der Windows-Integrierten-Authentifizierung werden die Benutzer über das Active Directory/LDAP ermittelt und über das Kerberos-Protokoll angemeldet. Dadurch lässt sich ein Single-Sign-On in Windows-Umgebungen realisieren. Diese Methode steht nur mit Microsoft Windows Server und einer Domänenumgebung zur Verfügung. Sobald für ein Portal die Windows-Integrierte-Authentifizierung aktiviert wird, müssen sich OData-Benutzer mit Ihrem Windows-Benutzernamen (Domäne/User) und Kennwort an einem OData-Service anmelden. Um auch OData-Anfragen direkt mit dem angemeldeten Windows-Benutzer und damit ohne zusätzliche Anmeldung zu authentifizieren, sind weitere Schritte notwendig. Zum einen ist eine Drittanbieter-Bibliothek erforderlich, die dem Installationsverzeichnis /lib hinzugefügt werden muss. Kopieren Sie dazu die Datei waffle-jna-1.6-with-dependencies.jar aus dem Installationsverzeichnis /adapter/odata/kerberos/ in das /lib-Verzeichnis. Anschließend führen Sie einen Neustart des Portalserver-Dienstes durch. Außerdem muss die Login-Methode für den OData-Server auf Windows-Integrierte-Authentifzierung umgestellt werden. Öffnen Sie dazu mit einem Texteditor die Datei om.cfg im Portalverzeichnis /internal/cfg. Suchen Sie darin nach der Zeile, die mit

<binding scope="odataservice" auth-type="IntegratedAuthClient"/>

beginnt und ändern Sie den Wert im Attribut auth-type zu IntegratedAuth.

<binding scope="odataservice" auth-type="IntegratedAuth"/>

Wiederholen Sie den Schritt für alle weiteren OData-Service-Einträge, für die die Kerberos-Authentifizierung aktiviert werden soll. Nach dem Speichern der Datei muss der Portaldienst neu gestartet werden.

Trusted Authentifizierung

Bei der Trusted-Authentifizierung kann ein Benutzer allein über die Benutzer-GUID angemeldet werden. Dabei wird erwartet, dass im HTTP-Request die Benutzer-GUID als Benutzername gesendet wird. Dies ist die unsicherste Methode und sollte ausschließlich in vertrauenswürdigen Umgebungen eingesetzt werden.

Konfiguration der Authentifizierungsmethode

Die globale oder service-spezifische Authentifizierungsmethode wird in der Datei om.cfg definiert. Als Default definiert Intrexx für alle OData-Dienste die Methode IntrexxAuth. Um eine andere Methode zu verwenden oder die Methode für einen spezifischen Service zu überschreiben, öffnen Sie die Datei im Portalverzeichnis /internal/cfg mit einem Texteditor.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<authentication anonymous="05CE8CE3035924F7D3088895F1D87DADD65CFAE4">
		<binding scope="web" auth-type="IntrexxAuth"/>
		<binding scope="client" auth-type="IntrexxAuth"/>
		...
		<binding scope="odataservice" auth-type="ODataAuth"/>
		...
	</authentication>
/configuration>

Der Eintrag "scope=odataservice" definiert die globale Methode für alle OData-Services. Im auth-type-Attribut wird die Authentifzierungsmethode hinterlegt. Zur Auswahl stehen:

  • ODataAuth

  • IntrexxAuth

  • PlainTextAuth

  • IntegratedAuth

  • IntegratedAuthClient

  • TrustedAuth

Um für einen Service die globale Methode zu überschreiben, kopieren Sie den Eintrag und ändern Sie das scope-Attribut wie folgt:

<binding scope="odataservice:MyService" auth-type="PlainTextAuth"/>

Nach dem Doppelpunkt ist der Name des OData-Services aus der Service-Konfiguration anzugeben. Nach dem Speichern der Konfigurationsdatei und einem Neustart des Portaldienstes wird die Service-spezifische Konfiguration verwendet.

Weitere Informationen

Allgemeines

Systemvoraussetzungen

Daten konsumieren

Daten anbieten

Integration in Applikationen

Verwendung in Prozessen

Expert-Settings

Appendix