Untergeordnete Seiten
  • Crowd Dokumentation - Atlassian Bamboo mit Crowd verbinden
Zum Ende der Metadaten springen
Zum Anfang der Metadaten


Auf dieser Seite wird Ihnen erklärt wie Sie Atlassians Bamboo Integrations-Server mit einem oder mehreren Verzeichnis-Server(n) mit Crowd verbinden.

Im Moment unterstützt Crowd die zentrale Authentifizierung und das Single Sign-On für die Bamboo Versionen 1.2.2 und neuer.


Bitte überprüfen Sie, ob diese Dokumentation zu Ihrer Crowd-Version passt.

Bitte überprüfen Sie die Crowd Release-Nummer in dieser Dokumentation mit der Version Ihrer Crowd-Installation. Wenn Sie eine andere Crowd-Version verwenden, dann können Sie die entsprechende Dokumentation unter "Previous Versions" auf der Hauptseite der Crowd Dokumentation (auf Englisch) finden.


Grundvoraussetzungen

Aufgrund von inkompatiblen atlassian-user Bibliotheken sind Bamboo-Releases vor 1.2.2 nicht mit der neuesten Version von Crowd kompatibel. Bitte aktualisieren Sie Bamboo auf die neueste Version, bevor Sie es mit Crowd verbinden.

Setzen Sie nicht mehrere Atlassian-Applikationen in einem einzelnen Tomcat-Container ein!

Der Einsatz von mehreren Atlassian-Applikationen in einem einzelnen Tomcat-Container wird nicht unterstützt. Atlassian hat diese Konfiguration nicht getestet und das Upgraden dieser Applikationen (sogar bei Point-Releases) ist gleichzusetzen mit dessen Zerstörung. Es gibt außerdem eine Vielzahl an bekannten Problemen mit dieser Konfiguration. Sehen Sie sich die FAQs an, um mehr darüber zu erfahren.

Es gibt außerdem einige praktische Gründe, warum Atlassian nicht den Einsatz von mehreren Atlassian-Applikationen in einem einzelnen Tomcat-Container unterstützt. Erstens müssen Sie Tomcat herunterfahren, um eine Applikation zu aktualisieren und zweitens, wenn eine Applikation abstürzt, dann können Sie auf die anderen, laufenden Applikationen des Tomcat-Containers nicht zugreifen.

Schlussendlich empfehlen wir nicht irgendwelche anderen Applikationen im selben Tomcat-Container einzusetzen, in dem Crowd läuft, speziell wenn diese anderen Applikationen große Speicheranforderungen haben oder zusätzliche Bibliotheken in Tomcats Lib-Unterverzeichnis benötigen.

  1. Laden Sie Crowd herunter und installieren Sie es. Für Instruktionen lesen Sie bitte die Crowd Installationsanleitung. Zum besseren Verständnis werden wir uns im Folgenden mit "CROWD" auf den Crowd-Root-Ordner beziehen.
  2. Laden Sie Bamboo (Version 1.2.2 oder neuer) herunter und installieren Sie es. Für Instruktionen lesen Sie bitte die originale Bamboo Installationsanleitung auf Englisch. Den Bamboo-Root-Ordner werden wir nun "BAMBOO" nennen. In dieser Dokumentation gehen wir davon aus, dass Sie die Crowd-Distribution (nicht EAR-WAR), also die leichtere Installationsmethode von Bamboo, verwendet haben. Wenn Sie Bamboo als EAR/WAR installieren müssen, dann entpacken Sie einfach das EAR/WAR und nehmen Sie die notwendigen Änderungen, wie unten beschrieben, vor und verpacken Sie das EAR/WAR danach erneut.
  3. Starten Sie den Bamboo Einrichtungsassistenten, wie in der Bamboo Dokumentation beschrieben. Während des Einrichtungsprozesses werden Sie den Benutzernamen und das Passwort des Administrators festlegen. Es ist einfacher dies zu tun, bevor Sie Bamboo und Crowd verbinden.
  4. Nachdem Sie Bamboo installiert und eingerichtet haben, fahren Sie Bamboo herunter, bevor Sie mit dem unten beschriebenen Integrationsvorgang beginnen.


Schritt 1: Konfigurieren Sie Crowd, damit es mit Bamboo kommuniziert

1.1 Bereiten Sie Crowds Verzeichnisse/Gruppen/Benutzer für Bamboo vor

  1. Erstellen Sie ein Crowd-Verzeichnis: Die Bamboo-Applikation wird die Benutzer an einem in Crowd konfigurierten Verzeichnis authentifizieren. Sie werden also ein Verzeichnis für Bamboo in Crowd einrichten müssen. Für weitere Informationen darüber wie das funktioniert, lesen Sie die Seite "Ein Verzeichnis hinzufügen". Wir werden dieses Verzeichnis im gesamten Dokument Crowd Bamboo Verzeichnis nennen. Es ist möglich mehr als ein Verzeichnis zu einer Applikation zuzuweisen, aber in diesem Beispiel werden wir das Crowd Bamboo Verzeichnis für die Unterbringung der Bamboo-Benutzer verwenden.
  2. Fügen Sie Benutzer und Gruppen hinzu: Sie können Sie entweder aus Ihrer Bamboo-Instanz importieren oder sie manuell hinzufügen.
    • Benutzer und Gruppen aus Bamboo importieren: Wenn Sie eine vorhandene Bamboo-Instanz haben und die bestehenden Benutzer und Gruppen in Crowd importieren möchten, dann verwenden Sie das Bamboo-Importer-Tool, indem Sie zu Users > Import Users > Atlassian Importer navigieren. Wählen Sie "Bamboo" als Atlassian-Produkt aus und das Crowd Bamboo Verzeichnis als das Verzeichnis, in welches die Bamboo-Benutzer importiert werden. Für Details lesen Sie bitte die Seite "Benutzer aus Atlassian Bamboo importieren". 
      (Info) Wenn Sie Benutzer in Crowd importieren möchten, dann müssen Sie das jetzt tun, bevor Sie weiter fortfahren.
    • Benutzer und Gruppen manuell hinzufügen: Bamboo benötigt eine administrative Gruppe in dem Verzeichnis, damit auf die administrativen Features zugegriffen werden kann. Sie können außerdem noch eine optionale, zusätzliche Gruppe für andere Benutzer erstellen. Erstellen Sie die Gruppen im Crowd Bamboo Verzeichnis:
      • bamboo-admin
      • bamboo-user (optional)
        Lesen Sie die Dokumentation über das Hinzufügen einer Gruppe für weitere Informationen über die Definierung dieser Gruppen.
      • Erstellen Sie mindestens einen Benutzer im Crowd Bamboo Verzeichnis und weisen Sie diesen Benutzer zu den Gruppen bamboo-user und bamboo-admin zu. Die Crowd Dokumentation hat weitere Informationen über das Erstellen von Gruppen, Benutzern und dem Zuweisen von Benutzern zu Gruppen

1.2 Definieren Sie die Bamboo-Applikation in Crowd

Crowd muss wissen, dass die Bamboo-Applikation Authentifizierungs-Anfragen an Crowd stellen wird. Wir müssen die Bamboo-Applikation zu Crowd hinzufügen und sie zum Crowd Bamboo Verzeichnis zuweisen:

  1. Loggen Sie sich in Crowds Administrationskonsole ein und navigieren Sie zu Applications > Add Application.
  2. Schließen Sie den "Add Application" Assistenten für die Bamboo-Applikation ab. Lesen Sie hier die Instruktionen dazu.
    (Info) Die Werte für "Name" und "Password" im "Add Application" Assistenten müssen identisch zum "application.name" und "application.password" in der crowd.properties Datei sein, die Sie definieren werden. Sie können die crowd.properties Datei entweder in Bamboo/webapp/WEB-INF/classes/ (bei Bamboo 3.1 und früher) oder in $BAMBOO_HOME/xml-data/configuration (bei Bamboo 3.2 oder neuer) finden. Sehen Sie Schritt 2 weiter unten.

1.3 Spezifizieren Sie welche Benutzer sich in Bamboo einloggen können

Sobald Crowd die Bamboo-Applikation kennt, muss Crowd noch wissen welche Benutzer sich bei Bamboo via Crowd authentifizieren (einloggen) können. Ein Teil des "Add Application" Assistenten ist es, dass Sie Ihre Verzeichnis- und Gruppen-Autorisierungen für die Applikation einrichten. Wenn nötig, können Sie diese Einstellungen anpassen nachdem Sie den Assistenten abgeschlossen haben. Unten finden Sie einige Beispiele.

Sie können ganzen Verzeichnissen die Authentifizierung erlauben oder nur bestimmten Gruppen innerhalb der Verzeichnissen. In unserem Beispiel werden wir den bamboo-user und bamboo-admin Gruppen innerhalb des Crowd Bamboo Verzeichnisses die Authentifizierung erlauben:


Wenn Sie nicht die bamboo-user Gruppe als Sicherheitseinschränkung verwenden, dann müssen Sie beim Mapping des Verzeichnisses "Allow all to authenticate" auf "true" setzen, andernfalls werden sich nur die Mitglieder der bamboo-admin Gruppe bei Bamboo einloggen können.

1.4 Spezifizieren Sie die Adresse mit der sich Bamboo bei Crowd einloggen kann

Im "Add Application" Assistenten werden Sie Bamboos IP-Adresse einrichten. Mit dieser wird sich Bamboo bei Crowd authentifizieren. Falls nötig, können Sie zusätzlich zur IP-Adresse einen Hostnamen hinzufügen, nachdem Sie den Assistenten fertiggestellt haben. Lesen Sie die Seite "Die Adresse oder den Hostnamen einer Applikation definieren".


Schritt 2: Konfigurieren Sie Bamboo, damit es mit Crowd kommuniziert

Bevor Sie mit dem 2. Schritt beginnen:

  • Wenn Sie Bamboo 3.2 oder neuer verwenden, dann beziehen Sie sich bitte auf die Bamboo-Instruktionen auf der Seite "Atlassian Bamboo mit Crowd verbinden" und überspringen Sie den 2. Schritt (und alle untergeordneten Schritte) auf dieser Seite.
  • Wenn Ihre Bamboo-Version früher als 1.2.2 ist, dann aktualisieren Sie bitte auf die neueste, stabile Version von Bamboo.

2.1 Installieren Sie die Crowd Client-Libraries zu Bamboo herüber

Bamboo braucht Crowds Client-Libraries damit es in der Lage ist die Benutzer-Authentifizierung an die Crowd-Applikation zu delegieren. In manchen Fällen werden Sie die Bamboo-Applikation modifizieren müssen, die in BAMBOO/webapp gespeichert ist.

  1. Bitte überprüfen Sie die Versionen von Crowd und Bamboo:
    • Wenn Sie Bamboo 1.2.2 bis 1.2.4 verwenden, dann müssen Sie die Bamboo-Libraries, wie unten in diesem Schritt beschrieben, aktualisieren. 
    • Wenn Sie Bamboo 2.0 oder neuer verwenden, dann sind die Crowd Client-Libraries und die crowd.properties Datei im Bamboo 2.0 Installations-Download enthalten. Bitte überprüfen Sie ob Ihre Crowd-Version dieselbe ist wie die Version der Crowd Client-Library, die im Bamboo 2.x.x Installations-Download enthalten ist (z. B. enthält Bamboo 2.0 aktuell die Client-Library für Crowd 1.3).
      • Wenn die Crowd-Library Versionen unterschiedlich sind, dann werden Sie die Bamboo-Libraries, wie unten in diesem Schritt beschrieben, aktualisieren müssen.
      • Wenn die Crowd-Library Versionen dieselben sind, können Sie diesen Schritt überspringen.
    • Bitte kopieren Sie die CROWD/client/crowd-integration-client-X.X.X.jar in das BAMBOO/webapp/WEB-INF/lib Verzeichnis.
    • Wenn Sie die Crowd WAR-Distribution verwenden, dann werden Sie die CROWD Client-Libraries von der Crowd-Distribution, die auf Atlassians Download-Seite verfügbar ist, herunterladen müssen. 
    • Kopieren Sie die Crowd Client-Libraries und die Konfigurationsdateien zu Bamboo herüber:

      Kopieren Sie von...Fügen Sie ein in...
      CROWD/client/crowd-integration-client-X.X.X.jarBAMBOO/webapp/WEB-INF/lib (Es besteht kein Bedarf die crowd.jar Dateien für die neuesten Bamboo-Versionen (nach 4.0) herüber zu kopieren, da sie bereits die benötigen jar-Dateien für Crowd beinhalten)
      CROWD/client/conf/crowd.propertiesBAMBOO/webapp/WEB-INF/classes (Bamboo 3.1 und früher) oder $BAMBOO_HOME/xml-data/configuration (Bamboo 3.2 oder neuer)
      CROWD/client/conf/crowd-ehcache.xmlBAMBOO/webapp/WEB-INF/classes (Bamboo 3.1 und früher) oder $BAMBOO_HOME/xml-data/configuration (Bamboo 3.2 oder neuer)
  2. Gilt nur für Bamboo 1.2.4: Sie werden die seraph-0.7.23.jar Datei aus Bamboos WEB-INF/lib/ Verzeichnis entfernen müssen und es mit der folgenden Datei ersetzen müssen: http://repository.atlassian.com/maven2/com/atlassian/seraph/atlassian-seraph/0.10/atlassian-seraph-0.10.jar
    (Beachten Sie: Die Version 0.10 der Seraph JAR-Datei ist neuer als 0.7.23.)

2.2 Editieren der crowd.properties Datei von Bamboo

Konfigurieren Sie die Eigenschaften der Bamboo-Applikation, um zu bestimmen wie Crowd mit Bamboo interagieren wird.

  1. Editieren Sie crowd.properties in BAMBOO/webapp/WEB-INF/classes (Bamboo 3.1 und früher) oder $BAMBOO_HOME/xml-data/configuration (Bamboo 3.2 oder neuer). Ändern Sie die folgenden Eigenschaften:

    SchlüsselWert
    application.namebamboo Der application.name und das application.password müssen übereinstimmen mit Name und Passwort, die Sie während der Definierung der Applikation in Crowd spezifiziert haben (sehen Sie Schritt 1 oben).
    application.passwordDer application.name und das application.password müssen übereinstimmen mit Name und Passwort, die Sie während der Definierung der Applikation in Crowd spezifiziert haben (sehen Sie Schritt 1 oben).
    crowd.server.url

    http://localhost:8095/crowd/services/

    Wenn der Port Ihres Crowd-Servers vom Standard (8095) abweichend konfiguriert ist, dann stellen Sie ihn demzufolge ein.

    session.validationintervalSetzen Sie es auf 0, wenn Sie die Authentifizierungs-Checks bei jeder Anfrage erfolgen lassen möchten. Andernfalls setzen Sie die Anzahl an Minuten, die zwischen den Anfragen vergehen sollen, bis validiert wird ob ein Benutzer in Crowds SSO Server ein- oder ausgeloggt ist. Wenn dieser Wert auf 1 oder höher gesetzt ist, vergrößert das die Performance der Crowd-Integration.

Sie können mehr über die optionalen Einstellungen auf der Seite über die crowd.properties Datei lesen.

2.3 Konfigurieren Sie Bamboo, damit es Crowds Authenticator verwendet

Da nun die Crowd Client-Libraries existieren, müssen wir Bamboo dahingehend konfigurieren, dass es diese nutzt.

  1. Editieren Sie die atlassian-user.xml Datei (finden Sie unter BAMBOO/webapp/WEB-INF/classes (Bamboo 3.1 und früher) oder unter $BAMBOO_HOME/xml-data/configuration (Bamboo 3.2 oder neuer)), sodass die Inhalte der Datei wie folgt sind:

    <atlassian-user>
        <repositories>
    
            <crowd key="crowd" name="Crowd Repository"/>
    
        </repositories>
    </atlassian-user>
  2. An diesem Punkt ist Bamboo für die zentrale Authentifizierung konfiguriert. Wenn Sie das Single Sign-On (SSO) bei Bamboo aktivieren möchten, dann lesen Sie bitte den Abschnitt 2.5 dieses Dokuments.

2.4 Konfigurieren Sie die externe Benutzerverwaltung in Bamboo

Damit Bamboo erfolgreich in Crowd integriert wird, muss Bamboos "External User Management" Option:

  • Ausgewählt sein, wenn Sie ein LDAP-Verzeichnis mit Crowd verwenden und Sie keinen Schreibzugriff in LDAP haben.
  • Nicht ausgewählt sein, wenn Sie interne Crowd-Verzeichnisse verwenden oder Crowd mit LDAP verwenden und Schreibzugriff haben.
  • Nicht ausgewählt sein, wenn Sie ein delegiertes Authentifizierungs-Verzeichnis verwenden.

Weitere Informationen:

  • Bitte ignorieren Sie die Formulierungen in manchen Bamboo-Versionen, die andeuten, dass Sie diese Option auswählen sollten.
  • In neueren Bamboo-Versionen heißt diese Option "Read-Only External User Management".
  • Beziehen Sie sich für alle Details zur Konfiguration von Bamboos externen Verwaltung auf die Bamboo Dokumentation (auf Englisch).

2.5 (Optional) Aktivieren Sie das Single Sign-On

Das SSO ist optional.

Das Single Sign-On (SSO) ist bei der Integration von Bamboo und anderen Atlassian-Produkten mit Crowd optional. Um die zentrale Authentifizierung ohne SSO zu verwenden, überspringen Sie die Schritte unten.

Um das Single Sign-On (SSO) zu aktivieren, werden Sie Bamboos Authentifizierungs- und Zugriffsanfragen, um Seraph zu verwenden, konfigurieren. So konfigurieren Sie die seraph-basierte Authentifizierung:

  1. Editieren Sie die \BAMBOO\webapp\WEB-INF\classes\seraph-config.xml
  2. Kommentieren Sie den Authenticator-Knoten aus:

    <!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->

    Bitte entfernen Sie die Kommentarzeichen vom Authenticator "com.atlasian.crowd.integration.seraph.v25.BambooAuthenticator":

    <!-- 
    If you're authenticating against a Crowd server you can use this authenticator for single sign-on.
    Enable it after configuring your Crowd properties through user management and restart Bamboo. 
    It does not support Crowd property changes at runtime. If you need to switch back to local users,
    revert the change and restart Bamboo again.
     -->
    <authenticator class="com.atlassian.crowd.integration.seraph.v25.BambooAuthenticator"/>

    Bamboos Authentifizierungs- und Zugriffsanfragen werden nun unter der Verwendung von Seraph durchgeführt.

2.6 (Optional) Stimmen Sie den Cache ab

Wenn Sie das atlassian-user und Crowd Framework gemeinsam mit Bamboo verwenden, wird dringend empfohlen, dass das Caching aktiviert ist. Mehrere, redundante Aufrufe des atlassian-user Frameworks werden bei allen Anfragen gemacht. Diese Resultate können lokal zwischen den Aufrufen gespeichert werden, indem das Caching über das Crowd-Optionsmenü aktiviert wird. (Beachten Sie, dass das Caching in der Crowd-Applikation standardmäßig aktiviert ist.)

Bamboo wird alle notwendigen Informationen einer Periode beziehen, so wie es in der Cache-Konfiguration definiert wurde - lesen Sie dafür die Seite "Das Caching für eine Applikation konfigurieren". Wenn Änderungen oder Ergänzungen in Crowd an den Benutzern, Gruppen und Rollen vorgenommen werden, dann werden diese Änderungen in Bamboo nicht sichtbar sein, bis der Cache für ein bestimmtes Item ausläuft (d. h. für den bestimmten Benutzer, die Gruppe oder die Rolle).

(Info) Der Standardwert für den Applikaitons-Cache beträgt 5 Minuten (300 Sekunden). Wenn Sie die Performance Ihrer Applikation steigern möchten, erwägen Sie den Cache-Wert auf eine oder zwei Stunden zu ändern (3600 oder 7200 Sekunden).


Erleben Sie Crowd in Aktion

Willkommen zu Bamboo mit Crowd!

  • Benutzer, die in der bamboo-user Gruppe sind, sollten sich nun in Bamboo einloggen können. Versuchen Sie einen Benutzer mit Crowd zur Gruppe hinzuzufügen - Sie sollten in der Lage sein sich mit dem neu erstellten Benutzer in Bamboo einzuloggen. Das ist die zentrale Authentifizierung in Aktion!
  • Wenn Sie SSO aktiviert haben, können Sie versuchen das Crowd Bamboo Verzeichnis und die bamboo-admin Gruppe zu Ihrer Crowd-Applikation hinzuzufügen (lesen Sie dazu die Seite "Ein Verzeichnis zu einer Applikation zuweisen" und "Definieren welche Gruppen auf eine Applikation zugreifen können").
    Dadurch wird den Bamboo-Administratoren das Einloggen in Crowds Administrationskonsole ermöglicht. Versuchen Sie sich in Crowd als Bamboo-Administrator einzuloggen und danach mit Ihrem Browser zu Bamboo zu navigieren. Sie sollten in Bamboo als gleicher Benutzer eingeloggt sein. Das ist Single Sign-On in Aktion!




Crowd Dokumentation Übersicht:




Crowd Doku

  • Keine Stichwörter