- Angelegt von //SEIBERT/MEDIA Employee, zuletzt geändert am Mär 15, 2018
Crowd bietet eine Vielzahl von Modulen an, mit denen Sie Crowd für die Authentifizierung von HTTP Basic Authentication Anfragen an einem Apache Web Server konfigurieren.
Die folgenden Features werden unterstützt:
- Authentifizierung: Benutzen Sie Crowd um die Ressourcen auf Ihrer Website mit einem Passwort zu schützen.
- Autorisierung: Konfigurieren Sie Website-Locations, um den Zugriff auf bestimmte Crowd-Gruppen oder -Benutzer zu beschränken.
Diese Version des Konnektors (3.0) wird von Linux unterstützt. Bitte lesen Sie für Details und Alternativen die Seite über das Auswählen des richtigen Apache Konnektors für Ihr Betriebssystem.
Beachten Sie: Diese Instruktionen beziehen sich auf Crowd 2.1 und neuer. Etwas Wissen über UNIX-Systeme und die Apache-Konfiguration wird vorausgesetzt.
Grundvoraussetzungen
Downloaden und konfigurieren Sie Crowd. Beziehen Sie sich für detaillierte Informationen darüber auf die Crowd Installationsanleitung.
Schritt 1: Deaktivieren Sie vorherigen Versionen des Crowd-Apache Konnektors
Wenn Sie von einer älteren Version des Konnektors upgraden, dann müssen Sie die ältere Version deaktivieren, bevor Sie weiter fortfahren.
Schritt 2: Konfigurieren Sie Crowd für die Kommunikation mit Apache
Wenn Sie von einer älteren Version des Apache Konnektors upgraden, dann haben Sie diesen Schritt bereits erledigt und können ihn somit überspringen.
Crowd muss darüber bescheid wissen, dass Apache Authentifizierungs-Anfragen an Crowd stellen wird. Sie müssen also folgendes tun:
- Definieren Sie Apache als Crowd-verbundene Applikation in Crowd.
- Fügen Sie die Verzeichnisse hinzu und machen Sie sie für Apache sichtbar.
- Fügen Sie die Gruppen hinzu, denen es erlaubt ist sich mit Apache zu authentifizieren und mappen Sie sie.
Schritt 3: Wählen Sie den korrekten Apache Konnektor für Ihr Betriebssystem aus
Der Installationsvorgang für den Apache und den Crowd Apache Konnektor variieren je nach Ihrem Betriebssystem. Finden Sie weiter unten die Links zu den passenden Installationsanleitungen für Ihr Betriebssystem. Wenn Sie bisher noch kein Betriebssystem ausgewählt haben, dann ist eine der Linux-Varianten empfehlenswert, denn sie sind am einfachsten in der Konfiguration.
Die 2.x Version des Crowd Apache Konnektors unterstützt erweiterte Features, wie verschachtelte Gruppen und das Single Sign-On, aber sie wird im Moment nur von bestimmten Betriebssystemen unterstützt.
Hinweis zum Crowd Apache 1.4 Konnektor
Diese Dokumentation gilt für die 2.x Version des Crowd Apache Konnektors. Wenn Sie keine kompatible Version der 2.x Subversion für Ihr Betriebssystem in der unten stehenden Tabelle finden können, dann sehen Sie sich die 1.4 Version (auf Englisch) des Crowd Apache Konnektors an.
Frühere Versionen des Crowd Apache Konnektors unterstützten nicht die SVNParentPath Richtlinie. Crowd 2.9.1 ist nicht kompatibel mit der Version 1.4 des Crowd Apache Konnektors.
Betriebssystem | Crowd Apache Konnektor 2.0 | Crowd Apache Konnektor 1.4 |
---|---|---|
Red Hat Enterprise Linux | 6.0 5.5 Installationsanleitung. | Installationsanleitung für andere OS-Versionen (auf Englisch). |
CentOS Linux | 5.5 Installationsanleitung. | Installationsanleitung für andere OS-Versionen (auf Englisch). |
Ubuntu Linux | 11.04 10.10 10.04 Installationsanleitung. | Installationsanleitung für andere OS-Versionen (auf Englisch). |
Debian | 6.0 Installationsanleitung. | Installationsanleitung für andere OS-Versionen (auf Englisch). |
Andere UNIX-ähnliche Systeme | *Nicht unterstützt. | Installationsanleitung (auf Englisch). |
Windows | *Nicht unterstützt. | Installationsanleitung (auf Englisch). |
*Der Crowd-Apache Konnektor 2.0 Quellcode ist mit den Instruktionen für das Kompilieren vom Quellcode verfügbar.
Schritt 4: Konfiguration der Authentifizierung
In diesem Abschnitt werden Sie in Apache einstellen, dass Crowd für die Authentifizierungs-Anfragen einer bestimmte Location verwendet werden soll. Editieren Sie die Apache Config-Datei und fügen Sie die folgenden Befehle zu einem <Location> oder <Directory> Abschnitt hinzu.
<Directory "/var/mysite/"> . . . AuthName "Atlassian Crowd" AuthType Basic AuthBasicProvider crowd CrowdAppName myappname CrowdAppPassword mypassword CrowdURL http://localhost:8095/crowd/ Require valid-user . . . </Directory>
Das ist die mindeste Konfiguration, die für eine Passwort-geschützte Location mit Crowd benötigt wird.
Diese Befehle müssen zur Apache Config hinzugefügt werden. Es funktioniert nicht mit .htaccess.
Befehl | Erläuterung |
---|---|
<Directory "/var/mysite/"> . . . </Directory> | Lesen Sie die Apache Dokumentation, um mehr über die Formate der <Directory> und <Location> Direktive zu erfahren. Wir verwenden den Verzeichnispfad /var/mysite/, weil es am einfachsten ist. Sie können hier Ihren eigenen, alternativen Verzeichnispfad verwenden. |
AuthName "Atlassian Crowd" | Definiert den Bereich der Authentifizierung. Diese Information wird dem Benutzer typischerweise durch das Aufpoppen einer Dialog-Box in Ihrem Browser bereitgestellt. Es muss ein einzigartiger Name für jede Crowd-Applikation sein. |
AuthType Basic | Vermittelt Apache die HTTP Basic Authentifizierung zu verwenden. Die HTTP Digest Authentifizierung wird derzeit nicht unterstützt. |
AuthBasicProvider crowd | Vermittelt Apache die Authentifizierung an den Apache-Crowd Konnektor zu delegieren. |
CrowdAppName myappname | Setzen Sie bei "myappname" die Applikation ein, als die sich Apache authentifizieren soll. |
CrowdAppPassword mypassword | Setzen Sie bei "mypassword" das Passwort für die Applikation ein. |
CrowdURL http://localhost:8095/crowd/ | Die URL des Crowd Servers. |
Require valid-user | Vermittelt Apache, dass die Clients eine gültige Passwort- und Benutzernamen-Kombination zur Verfügung stellen müssen, um auf die Location zugreifen zu können. |
Die folgenden Konfigurationsbefehle sind optional und können für die weitere, benutzerdefinierte Konfiguration verwendet werden:
Befehl | Erklärung | Standard |
---|---|---|
CrowdAcceptSSO Off | Wenn dieser Befehl auf "On" gestellt ist, dann wird der Apache Crowd Konnektor die Single Sign-On (SSO) Token aus den Anfragen für die Validierung verwenden, um zu vermeiden, dass sich der Benutzer erneut einloggen muss, wenn er bereits in einer anderen Applikation eingeloggt ist. | On |
CrowdCreateSSO Off | Wenn dieser Befehl auf "On" gestellt ist, dann wird der Apache Crowd Konnektor immer einen Single Sign-On (SSO) Token erstellen, wenn ein Benutzer sich erfolgreich authentifiziert und damit vermeiden, dass sich der Benutzer in anderen Applikationen einloggen muss. | On |
CrowdBasicAuthEncoding ISO-8859-1 UTF-8 | Legt die Liste der Zeichen für die Verschlüsselungs-Schemen fest, die der Apache Crowd Konnektor für die Entschlüsselung der Benutzernamen und Passwörter verwenden wird. Jedes wird nacheinander ausprobiert, bis die Authentifizierung erfolgreich ist. Diese Einstellung muss geändert werden, wenn Sie Benutzer haben, die keine ASCII-Zeichen in deren Benutzernamen oder Passwörtern haben, da die Browser sich in den Verschlüsselungs-Schemen unterscheiden. Beachten Sie, dass fehlgeschlagene Authentifizierungs-Versuche mit einem oder mehreren Verschlüsselungen, möglicherweise vom Verzeichnis als fehlgeschlagene Logins aufgezeichnet werden, bevor mit den weiteren Verschlüsselungen fortgefahren wird. | ISO-8859-1 |
CrowdTimeout 5 | Die maximale Dauer in Sekunden, die der Apache Crowd Konnektor auf eine Antwort von Crowd warten soll. Wenn auf 0 gesetzt, wird der Konnektor unbegrenzt lange warten. | 0 |
CrowdCacheMaxAge 120 | Die maximale Dauer in Sekunden, die der Apache Crowd Konnektor eine Antwort von Crowd zwischenspeichert. | 60 |
CrowdCacheMaxEntries 1000 | Die maximale Anzahl von Einträgen, die gleichzeitig vom Apache Crowd Konnektor zwischengespeichert werden. Wenn auf 0 gesetzt, ist das Zwischenspeichern deaktiviert. | 500 |
Für weitere Details zu der Apache-Konfiguration lesen Sie bitte die Apache Dokumentation (auf Englisch).
Schritt 5: Konfiguration der Autorisierung
Wenn Sie den Zugriff auf ein bestimmtes Apache <Directory> oder eine <Location> einschränken möchten, sodass nur ein Teil der Crowd-Benutzer und/oder -Gruppen die Berechtigungen haben, dann fügen Sie die folgenden Zeilen zu Ihrer Konfiguration hinzu:
<Location URL_to_restrict> . . . Require user johnh kevinr Require group developers crowd-administrators AuthzUserAuthoritative Off . . . </Location>
Beachten Sie, dass Sie alle Require valid-user Befehle aus <Directory> oder <Location> entfernen müssen, damit die neuen Einschränkungen wirksam werden.
Befehl | Erklärung |
---|---|
Require user johnh kevinr | Dem Benutzer johnh oder kevinr wird der Zugriff auf die Location erlaubt. |
Require group developers crowd-administrators | Den Mitgliedern der developers oder crowd-administrators Gruppe wird der Zugriff auf die Location erlaubt. |
Wenn beides verwendet wird, also "Require user" und "Require group", dann werden diese als "OR" anstelle von "AND" verwendet. Das heißt jeder Benutzer, der sich erfolgreich authentifiziert, kann sich auf die Ressource zugreifen.
Wenn Sie die "Require user" und "Require group" Direktiven in Kombination verwenden, dann müssen Sie die folgende Einstellung hinzufügen:
Befehl | Erklärung | Standard |
---|---|---|
AuthzUserAuthoritative Off | Wenn dieser Befehl auf "On" ist, dann sind die Authorisierungs-Entscheidungen, die vom mod_authz_user auf Basis der "Require user" Direktive getroffen werden, final. Wenn er auf "Off" gestellt ist, dann werden diese womöglich von anderen Apache Autorisierungs-Anbietern überschrieben. | On |
Wenn Sie zusätzlich zum Crowd Apache Konnektor noch weitere Autorisierungs-Anbieter konfiguriert haben, dann müssen Sie die folgenden, optionalen Einstellungen hinzufügen:
Befehl | Erklärung | Standard |
---|---|---|
AuthzCrowdAuthoritative Off | Wenn dieser Befehl auf "On" gesetzt ist, dann sind die Autorisierungs-Entscheidungen, die von Crowd gemacht werden, final. Wenn dieser Befehl auf "Off" gesetzt ist, dann werden sie womöglich von anderen Apache Autorisierungs-Anbietern überschrieben. | On |
Schritt 6: Konfiguration von Subversion
Wenn Sie Subversion unter Apache verwenden, dann erlaubt Ihnen der Crowd Subversion Konnektor ein Subversion-Verzeichnis mit einem Passwort zu schützen und außerdem den Zugriff nach Gruppen oder Benutzer zu steuern.
Befolgen Sie den Instruktionen auf der Seite Crowd in Subversion integrieren.
Hinweise
- Normalerweise ist nur eine der Require user oder Require group Befehle für eine bestimmte Location notwendig. Sie können jedoch beide definieren. Wenn Sie das tun, dann wird der Zugriff gewährt, wenn einer der beiden Befehle erfüllt wird.
- Wenn die CrowdCacheMaxEntries Einstellung fehlt oder der Wert hier höher als 0 beträgt, dann werden die Anfragen an Crowd zwischengespeichert, um die Performance zu steigern. Das bedeutet, dass Änderungen an Passwörtern, Gruppenzugehörigkeiten und abgelaufene Sitzungen in Crowd nicht sofort beim Benutzerzugriff wiedergegeben werden.
Obwohl der Apache Connector nicht die Digest-Authentifizierung unterstützt, kann die Verbindung zu Crowd mit https gesichert werden, um die SOAP-Verbindungen herzustellen.
CrowdURL https://localhost:8095/crowd/
Für Informationen darüber wie Sie die Crowd-Verbindungen sichern, lesen Sie bitte die Dokumentation über das Konfigurieren von SSL für Crowd.
- Wenn Sie Crowd 2.0 oder früher verwenden, dann müssen Sie den Instruktionen für Crowd 2.0 befolgen (auf Englisch).