LDAP-Suchfilter konfigurieren

Verwenden Sie diesen Artikel, um die LDAP-Suchfilter zu konfigurieren. Diese Schritte sind erforderlich, um vorhandene Benutzer- oder Gruppenfilter für einen bestimmten LDAP-Verzeichnistyp zu ändern und um Zertifikatfilter zu definieren, mit denen Zertifikate Einträgen im LDAP-Server zugeordnet werden.

Vorbereitende Schritte

LDAP-Filter (Lightweight Directory Access Protocol) werden von WebSphere Application Server verwendet, um bei einem LDAP-Verzeichnisserver Informationen zu Benutzern und Gruppen anzufordern. Für jeden vom Produkt unterstützten LDAP-Server wird eine Gruppe von Standardfiltern bereitgestellt. Sie können diese Filter an Ihre LDAP-Konfiguration anpassen. Wenn Sie die Filter geändert und auf OK oder Anwenden geklickt haben, ändert sich der Verzeichnistyp in der Anzeige LDAP-Registry in Angepasst, um anzuzeigen, dass eigene Filter verwendet werden. Sie können auch Filter für zusätzliche Arten von LDAP-Servern entwickeln. Die Unterstützung zusätzlicher LDAP-Verzeichnisse ist optional. Andere LDAP-Verzeichnistypen werden nicht unterstützt. Führen Sie in der Administrationskonsole die folgenden Schritte aus.

Vorgehensweise

  1. Klicken Sie auf Sicherheit > Globale Sicherheit.
  2. Klicken Sie unter "Repository für Benutzeraccounts" auf Eigenständige LDAP-Registry und anschließend auf Konfigurieren.
  3. Klicken Sie unter "Weitere Eigenschaften" auf Erweiterte Einstellungen für LDAP-Benutzerregistry.
  4. Ändern Sie ggf. den Benutzerfilter. Der Benutzerfilter wird zum Durchsuchen der Registry nach Benutzern eingesetzt und in der Regel für die Zuordnung von Sicherheitsrollen zu Benutzern verwendet. Die im Filter angegebenen Attribute werden aber auch genutzt, um einen Benutzer zu authentifizieren. Der Filter legt die Eigenschaft fest, nach der Benutzer auf dem Verzeichnisserver gesucht werden.

    Im folgenden Beispiel muss die dem Benutzer mit dem Kurznamen %v zugeordnete Eigenschaft ein eindeutiger Schlüssel sein. Zwei LDAP-Einträge mit derselben Objektklasse können nicht denselben Kurznamen haben. Für die Suche nach Benutzern nach ihren Benutzer-IDs (uid) und mit der Objektklasse inetOrgPerson müssten Sie Folgendes angeben:

    (&(uid=%v)(objectclass=inetOrgPerson)

    Nähere Informationen zu dieser Syntax finden Sie in der Dokumentation zu Bestimmte Verzeichnisserver als LDAP-Server verwenden.

  5. Ändern Sie ggf. den Kerberos-Benutzerfilter. Der Kerberos-Benutzerfilter wird zum Durchsuchen der Registry nach dem Kerberos-Principal-Namen eingesetzt. Geben Sie das LDAP-Attribut an, das den Kerberos-Principal-Namen enthält.
    Standardfilter krbuser von IBM Lotus Domino:
    (&(krbPrincipalName=%v)(objectcategory=Person))
    Standardfilter krbuser von IBM SecureWay Directory:
    (&(krbPrincipalName=%v)(objectcategory=ePerson))
    Standardfilter krbuser von Microsoft Active Directory:
    (&(userprincipalname=%v)(objectcategory=user))
    Standardfilter krbuser von Sun Java System Directory:
    (&(krbPrincipalName=%v)(objectcategory=inetOrgPerson))
    Standardfilter krbuser von Novell eDirectory:
    (&(krbPrincipalName=%v)(objectcategory=Person))
  6. Optional: Wenn Sie systemübergreifendende Repositorys verwenden, modifizieren Sie ggf. den Namen des Kerberos-Attributs. Der Kerberos-Attributname wird zum Durchsuchen der Registry nach dem Kerberos-Principal eingesetzt. Geben Sie das LDAP-Attribut an, das den Kerberos-Principal-Namen enthält.
    Standardfilter krbuser von IBM Lotus Domino:
    krbPrincipalName
    Standardfilter krbuser von IBM SecureWay Directory:
    krbPrincipalName
    Standardfilter krbuser von Microsoft Active Directory:
    userprincipalname
    Standardfilter krbuser von Sun Java System Directory:
    krbPrincipalName
    Standardfilter krbuser von Novell eDirectory:
    krbPrincipalName
  7. Ändern Sie ggf. den Gruppenfilter. Der Gruppenfilter wird zum Durchsuchen der Registry nach Gruppen eingesetzt und in der Regel für die Zuordnung von Sicherheitsrollen zu Gruppen verwendet. Er legt außerdem die Eigenschaft fest, nach der Gruppen im Verzeichnisserver gesucht werden.

    Im folgenden Beispiel muss die der Gruppe mit dem Kurznamen %v zugeordnete Eigenschaft ein eindeutiger Schlüssel sein. Zwei LDAP-Einträge mit derselben Objektklasse können nicht denselben Kurznamen haben. Für die Suche nach Gruppen nach ihren allgemeinen Namen (CN) und mit der Objektklasse groupOfNames oder groupOfUniqueNames müssten Sie Folgendes angeben:

    (&(cn=%v)(|(objectclass=groupOfNames)(objectclass=groupOfUniqueNames)))

    Nähere Informationen zu dieser Syntax finden Sie in der Dokumentation zu Bestimmte Verzeichnisserver als LDAP-Server verwenden.

  8. Ändern Sie ggf. den Filter für die Zuordnung von Benutzer-IDs. Dieser Filter ordnet den Kurznamen eines Benutzers einem LDAP-Eintrag zu und gibt an, durch welche Einzelinformation diese Benutzer dargestellt werden, wenn sie mit ihrem Kurznamen angezeigt werden. Wenn beispielsweise Einträge des Typs objectclass = inetOrgPerson nach ihren IDs angezeigt werden sollen, müssen Sie inetOrgPerson:uid angeben. In diesem Feld können mehrere Paare aus Objektklassen und Eigenschaften (objectclass:property), jeweils durch ein Semikolon (;) voneinander getrennt, angegeben werden. Um für Methoden wie getCallerPrincipal und getUserPrincipal einen konsistenten Wert bereitzustellen, wird der mit diesem Filter ermittelte Kurzname verwendet. Der Benutzer CN=Bob Smith, ou=austin.ibm.com, o=IBM, c=US könnte sich beispielsweise mit einem beliebigen für ihn definierten Attribut ,wie E-Mail-Adresse, Sozialversicherungsnummer usw., anmelden. Werden jedoch die hier genannten Methoden aufgerufen, wird unabhängig von dem für die Anmeldung verwendeten Attribut die Benutzer-ID bob zurückgegeben.
    Anmerkung: Die Benutzer-ID-Zuordnung wird nur von der API "getUserDisplayName" berücksichtigt.
  9. Ändern Sie ggf. den Filter für die Zuordnung von Gruppenmember-IDs. Dieser Filter ordnet den Kurznamen einer Gruppe einem LDAP-Eintrag zu und gibt die Einzelinformation an, die Gruppen darstellt, wenn sie angezeigt werden. Geben Sie z. B. *:cn an, um Gruppen nach ihren Namen anzuzeigen. Das Zeichen * ist ein Platzhalterzeichen, mit nach allen Objektklassen in dieser Schreibweise gesucht wird. In diesem Feld können mehrere Paare aus Objektklassen und Eigenschaften (objectclass:property), jeweils durch ein Semikolon (;) voneinander getrennt, angegeben werden.
  10. Ändern Sie ggf. den Filter für die Zuordnung von Gruppenmember-IDs. Dieser Filter gibt die Zugehörigkeit von Benutzern zu Gruppen an. In SecureWay und Domino wird dieses Feld verwendet, um alle Gruppen abzufragen, die mit bestimmten Objektklassen übereinstimmen. Auf diese Weise lässt sich ermitteln, ob der Benutzer in dem angegebenen Attribut enthalten ist. Wenn Sie beispielsweise alle Benutzer abrufen möchten, deren Objektklasse groupOfNames ist, und die Benutzer, die in den memberattributen enthalten sind, geben Sie groupOfNames:member an. Mit dieser Syntax wird angegeben, unter welcher Eigenschaft einer Objektklasse sich die Liste von Membern der Gruppe befindet, die durch die Objektklasse angegeben wird. In diesem Feld können mehrere Paare aus Objektklassen und Eigenschaften (objectclass:property), jeweils durch ein Semikolon (;) voneinander getrennt, angegeben werden. Nähere Informationen zu dieser Syntax finden Sie im Artikel Bestimmte Verzeichnisserver als LDAP-Server verwenden.

    In IBM® Tivoli Directory Server, Sun ONE und Active Directory wird dieses Feld verwendet, um alle Benutzer in einer Gruppe unter Verwendung der in im Benutzerobjekt gespeicherten Informationen abzufragen. Mit dem Filter "memberof:member" (für Active Directory) wird beispielsweise das Attribut "memberof" des Benutzerobjekts abgerufen, um alle Gruppen zu ermitteln, zu denen der Benutzer gehört. Das Attribut member wird verwendet, um alle Benutzer einer Gruppe mit dem Gruppenobjekt abzurufen. Wird für die Ermittlung der Gruppeninformationen das Benutzerobjekt verwendet, erhöht sich der Durchsatz.

  11. Wählen Sie die Option Verschachtelte Gruppen durchsuchen aus, wenn der LDAP-Server keine rekursiven Suchoperationen auf Serverseite unterstützt.
  12. Ändern Sie ggf. den Modus für Zertifikatzuordnung. Wenn LDAP als Registry ausgewählt wird, können die X.590-Zertifikate für die Benutzerauthentifizierung verwendet werden. Dieses Feld gibt an, ob die X.509-Zertifikate einem LDAP-Verzeichnisbenutzer nach EXACT_DN oder CERTIFICATE_FILTER zugeordnet werden sollen. Bei Auswahl von EXACT_DN muss der DN im Zertifikat genau, auch hinsichtlich Groß-/Kleinschreibung und Leerzeichen, mit dem Benutzereintrag im LDAP-Server übereinstimmen.
    Wenn die Groß-/Kleinschreibung bei der Berechtigung nicht beachtet werden soll, verwenden Sie in den Einstellungen für die eigenständige LDAP-Registry das Feld Groß-/Kleinschreibung ignorieren. Führen Sie die folgenden Schritte auf, um die Anzeige "Eigenständige LDAP-Registry" aufzurufen:
    1. Klicken Sie auf Sicherheit > Globale Sicherheit.
    2. Klicken Sie unter "Repository für Benutzeraccounts" auf die Dropdown-Liste Verfügbare Realmdefinitionen, und wählen Sie Eigenständige LDAP-Registry aus.
  13. Wenn Sie CERTIFICATE_FILTER auswählen, geben Sie den LDAP-Filter an, um die Attribute im Clientzertifikat den Einträgen in LDAP zuzuordnen. Falls zur Laufzeit mehrere LDAP-Einträge der Filterspezifikation entsprechen, schlägt die Authentifizierung fehl, da die Übereinstimmung nicht eindeutig ist. Die Syntaxstruktur für diesen Filter sieht wie folgt aus: LDAP-Attribut=${Clientzertifikatattribut} (z. B. uid=${SubjectCN}).

    Eine Seite der Filterspezifikation ist ein LDAP-Attribut, das von dem Schema abhängig ist, für das Ihr LDAP-Server konfiguriert ist. Die andere Seite der Filterspezifikation ist eines der öffentlichen Attribute im Clientzertifikat. Die Filterspezifikation, die eines der öffentlichen Attribute in Ihrem Clientzertifikat ist, muss mit dem Dollarzeichen ($) und geschweifter Klammer auf ({) beginnen und mit geschweifter Klammer zu (}) enden. Verwenden Sie auf der Seite der Filterspezifikation, die eines der öffentlichen Attribute in ihrem Clientzertifikat ist, die folgenden Zertifikatsattributwerte. Die Groß-/Kleinschreibung der Zeichenfolgen muss beachtet werden.

    • ${UniqueKey}
    • ${PublicKey}
    • ${IssuerDN}
    • ${Issuer<xx>}

      <xx> wird durch die Zeichen ersetzt, die eine gültige Komponente des definierten Namens des Ausstellers darstellen. Als allgemeinen Namen des Ausstellers könnten Sie beispielsweise ${IssuerCN} verwenden.

    • ${NotAfter}
    • ${NotBefore}
    • ${SerialNumber}
    • ${SigAlgName}
    • ${SigAlgOID}
    • ${SigAlgParams}
    • ${SubjectDN}
    • ${Subject<xx>}

      <xx> wird durch die Zeichen ersetzt, die eine gültige Komponente des definierten Namens des Subjekts darstellen. Als allgemeinen Subject-Namen könnten Sie beispielsweise ${SubjectCN} verwenden.

    • ${Version}

    Wählen Sie zur Aktivierung dieses Felds CERTIFICATE_FILTER für die Zertifikatzuordnung aus.

    Fehler vermeiden Fehler vermeiden: SANs (Subject Alternative Names) werden (SANs) in Zertifikatsfilterelementen nicht unterstützt.gotcha
  14. Klicken Sie auf Anwenden.
    Wenn in der Anzeige Erweiterte LDAP-Einstellungen ein Filter für LDAP-Benutzer oder LDAP-Gruppen geändert wurde, klicken Sie auf Anwenden. Klicken Sie auf OK, wird die Anzeige Eigenständige LDAP-Registry aufgerufen, die wahrscheinlich den vorherigen LDAP-Verzeichnistyp und nicht den Verzeichnistyp "Angepasst" anzeigt. Wenn Sie in der Anzeige Eigenständige LDAP-Registry auf OK oder Anwenden klicken, wird der vorherige LDAP-Verzeichnistyp gespeichert und damit auch die Standardfilter für dieses Verzeichnis. Dadurch werden alle von Ihnen vorgenommenen Filteränderungen überschrieben. Mit einer der folgenden Maßnahmen können Sie das Überschreiben von Änderungen verhindern:
    • Klicken Sie in der Anzeige "Erweiterte Einstellungen für LDAP-Benutzerregistry" auf Anwenden. Klicken Sie auf Sicherheit > Globale Sicherheit, und ändern Sie den Repository-Typ des Benutzeraccounts in Eigenständige angepasste Registry.
    • Wählen Sie in der Anzeige "Eigenständige LDAP-Registry" den Typ Angepasst aus. Klicken Sie auf Anwenden. Rufen Sie die Anzeige "Erweiterte Einstellungen für LDAP-Benutzerregistry" auf und ändern Sie die Filter. Wenn Sie alle Änderungen vorgenommen haben, klicken Sie auf Anwenden oder OK.

    Die Gültigkeitsprüfung der vorgenommenen Änderungen erfolgt nicht in dieser Anzeige. Dies geschieht, wenn Sie in der Anzeige "Globale Sicherheit" auf OK oder Anwenden geklickt haben. Sollten Sie die Sicherheit zum ersten Mal aktivieren, führen Sie die verbleibenden Schritte aus, und rufen Sie die Anzeige Globale Sicherheit auf. Wählen Sie Eigenständige LDAP-Registry als Repository für Benutzeraccounts aus. Wenn die Sicherheit bereits aktiviert ist und Informationen in dieser Anzeige geändert werden, rufen Sie die Anzeige "Globale Sicherheit" auf, und klicken Sie dann auf OK oder Anwenden, um Ihre Änderungen zu validieren. Sollten bei der Validierung Unstimmigkeiten festgestellt werden, treten beim Serverstart möglicherweise Fehler auf.

Ergebnisse

Sie haben die LDAP-Suchfilter konfiguriert. Diese Schritte sind erforderlich, um vorhandene Benutzer- oder Gruppenfilter für einen bestimmten LDAP-Verzeichnistyp zu ändern. Mit diesen Schritten können Sie auch Zertifikatfilter definieren, um Einträgen im LDAP-Server Zertifikate zuzuordnen.

Nächste Schritte

  1. Validieren Sie die Konfiguration. Dazu klicken Sie in der Anzeige "Globale Sicherheit" auf OK oder Anwenden.
  2. Die in dieser Anzeige vorgenommenen Änderungen treten erst in Kraft, nachdem Sie alle Produktserver, einschließlich der Zellen, Knoten und aller Anwendungsserver gespeichert, gestoppt und gestartet haben.
  3. Wenn der Server initialisiert wird, gehen Sie alle sicherheitsrelevanten Tasks durch (Benutzer abfragen, Gruppen abfragen etc.), um sicherzustellen, dass die geänderten Filter funktionieren.

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_ldapfilter
Dateiname:tsec_ldapfilter.html