Headerbasierte Authentifizierung¶
Bei dieser Methode werden der angemeldete Benutzername und die Rollen über HTTP-Header-Variablen des Requests ausgelesen.
Diese Methode eignet sich insbesondere, wenn das WebGIS Portal hinter einem Reverse Proxy betrieben wird. In diesem Fall übernimmt der Reverse Proxy die Authentifizierung und Autorisierung der Zugriffe. Beim Weiterleiten der Anfragen fügt er spezifische HTTP-Header hinzu, die Informationen über den angemeldeten Benutzer enthalten. Das WebGIS Portal liest diese Header-Variablen aus und verwendet sie zur Zugriffssteuerung für Karten und Kartendienste.
Gefahr
Wird diese Methode verwendet, darf das WebGIS Portal nur über den Reverse Proxy erreichbar sein! Ist das Portal direkt zugänglich, besteht die Gefahr, dass Angreifer diese Methode missbrauchen. Das WebGIS Portal überprüft nicht, ob die Header-Variablen tatsächlich vom Reverse Proxy gesetzt wurden.
Die headerbasierte Authentifizierung wird über die Sektion header-authentication
in der portal.config
-Datei aktiviert:
<section name="header-authentication">
<add key="use" value="true" /> <!-- default false -->
<add key="username-variable" value="X-username" />
<add key="roles-variable" value="X-roles" />
<add key="extract-role-parameters" value="none" /> <!-- none, insideBrackets -->
<add key="role-separator" value=";" /> <!-- default: , -->
<add key="role-parameters-separator" value="," /> <!-- default: , -->
<add key="user-prefix" value="header-user" />
<add key="role-prefix" value="header-role" />
</section>
Beschreibung der Konfigurationswerte¶
Attribut |
Beschreibung |
---|---|
|
Aktiviert die headerbasierte Authentifizierung. |
|
Definiert den Header-Namen, der den Benutzernamen enthält. |
|
Definiert den Header-Namen, in dem die Benutzerrollen übergeben werden. |
|
Rollenparameter ermöglichen eine zusätzliche Einschränkung von Rollen.
Wird beispielsweise einer Anwendergruppe die Rolle Beispiel für |
|
Trennzeichen zwischen mehreren Rollen im |
|
Trennzeichen für einzelne Rollenparameter beim Parsing.
Beispiel: |
|
Definiert Namensräume für Benutzer und Rollen, um Mehrdeutigkeiten bei mehreren Authentifizierungsmethoden zu vermeiden. Der Präfix wird mit Beispiel:
In der CMS-Berechtigungsverwaltung wird der vollständige Name inklusive Präfix verwendet ( |