Uni-Logo
Sektionen
Sie sind hier: Startseite FAQ Beispiel einer Benutzerverwaltung mit LDAP
Artikelaktionen

Wie kann man die Benutzer vollständig mit LDAP verwalten?

Ziel dieses How-to

Dieses How-to beschreibt die entsprechenden Anpassungen um folgende Konfiguration der Benutzerverwaltung unter Plone zu erreichen:

  • Die Benutzer authentifizieren sich gegen den LDAP-Server (bv1.ruf.uni-freiburg.de) des Rechenzentrums.
  • Einen lokalen User mit Admin-Rechte wird angelegt. (Falls der LDAP-Server aus irgend einem Grund nicht erreichbar ist.)
  • Jeder Angemeldete User kann Dokumente editieren, erzeugen, kopieren usw. und dieses unabhängig von dem Zustand dieses Dokuments. (z.B. ein User kann ein veröffentlichtes Dokument bearbeiten.)

A. Permissions für eine neue Vollmacht setzen

  1. ZMI (Portal-Root) > Tab Security
    Eine neue Role (z.B. RZ) mit folgenden Rechten anlegen:
    • request review (Objekte zurueckziehen)
    • review portal content
    • Access Content Information
    • modify portal content
    • view
    • view management screen (um Objekte zu kopieren --> komisch aber so ist es...)
    • Add Portal Content
    • Copy or Move
    • Delete Objects (im Zusammenhang mit copy or move um Objekte auszuschneiden bzw. zu löschen)
    • List Folder Content
    • Manage properties
    • WebDAV Lock items
    • WebDAV Unlock items
  2. Wenn in ZMI > portal_workflow das Workflow "plone_workflow" als Default ausgewählt ist:
    Standard-Workflow (ZMI > Tool portal_workflow > Tab Contents > plone_workflow):
    • Status-Permissions ändern: > Tab States
      auf "visible" klicken > Tab Permissions: in der Spalte RZ, alle Permissions anklicken.
      Dasselbe für den Status "published" machen.
      --> dann müssen die Einstellungen in der ganzen Site übertragen werden: ZMI > Tool portal_workflow > auf "Update Security Settings" klicken
      Vorsicht: dabei können die Einstellungen verloren gehen und die site gesperrt werden...
    • Transitions: > Tab Transitions
      hide > Eingabefeld Roles mit "RZ" ergänzen
      show > das Gleiche
    Folder-Workflow (ZMI > Tool portal_workflow > Tab Contents > folder_workflow):
    • Status-permissions ändern: > Tab States
      auf "visible" klicken > Tab Permissions: in der Spalte RZ, alle Permissions anklicken.
      Dasselbe für den Status "published" machen.
      --> dann müssen die Einstellungen in der ganzen Site übertragen werden: ZMI > Tool portal_workflow > auf "Update Security Settings" klicken
      Vorsicht: dabei können die Einstellungen verloren gehen und die site gesperrt werden...
    • Transitions: > Tab Transitions
      publish > Eingabefeld Roles mit "RZ" ergänzen
      hide > dasgleiche
      show > dasgleiche
  3. Wenn in ZMI > portal_workflow das Workflow "simple_publication_workflow" als Default ausgewählt ist:
    Simple Publication Workflow (ZMI > Tool portal_workflow > Tab Contents > simple_publication_workflow):
    • Status-Permissions ändern: > Tab States
      auf "private" klicken > Tab Permissions: in der Spalte RZ, alle Permissions anklicken.
      Dasselbe für den Status "published" machen.
      --> dann müssen die Einstellungen in der ganzen Site übertragen werden: ZMI > Tool portal_workflow > auf "Update Security Settings" klicken
      Vorsicht: dabei können die Einstellungen verloren gehen und die site gesperrt werden...

B. Benutzerverwaltung: ZMI > Tool acl_users

  1. Einen lokalen User als Manager anlegen, was wahrscheinlich schon der Fall ist... > Tab Users.
    Falls die externe Authentifizierungsstelle nicht erreichbar ist oder fehlkonfiguriert ist, ist die Site immer mit diesem User konfigurierbar.
  2. Externe Authentifizierungsquelle (LDAP-Server) definieren
    • ZMI: acl_users  > "LDAP Multi Plugin" hiinzufügen
    • Zugangsdaten eingeben

      ID: ldap_plugin
      Title: LDAP Plugin
      LDAP Server(:port): bv1.ruf.uni-freiburg.de
      Use SSL: ja
      Read-Only: ja
      Login Name Attribute: UID (uid)
      User ID Attribute: UID (uid)
      RDN Attribute: UID (uid)
      User Base DN: ou=people,dc=uni-freiburg,dc=de
      Group storage: Groups not stored on LDAP server
      Groups Base DN: (nicht ändern)
      Default User Roles: Anonymous,Member,RZ

      ldap_neu1.jpg
      Zeige in voller Größe
  3. Konfiguration anpassen
    • ZMI: acl_users > ldap_plugin
      Hier müssen Sie das Plugin aktivieren
      ldap_neu2.jpg
      Zeige in voller Größe
    • ZMI: acl_users > ldap_plugin  > (Tab) Contents > acl_users > (Tab) LDAP Schema > "Add LDAP schema item"
      Zuerst löschen Sie die Zeile für "cn". Dann fügen Sie zwei "LDAP schema items" hinzu:

      - LDAP Attribute Name: cn
        Friendly Name: Canonical Name
        Map to Name (optional): fullname

      - LDAP Attribute Name: rufKostenstelle
        Friendly Name: rufKostenstelle

      ldap_neu3.jpg
      Zeige in voller Größe
    • ZMI: acl_users > ldap_plugin > (Tab) Contents > acl_users > (Tab) Configure
      Im Feld "Addtional user search filter" eine Kondition angeben, z.B.
      (rufKostenstelle=UFR-003100)
       Mit dieser Kondition kann Authentifizierung durch Kostenstellenummer eingeschränkt werden. Wildcard kann man hier auch verwenden:
      (rufKostenstelle=UFR-003*)
      Oder können mehrere Bedingungen verknüpft werden:
      (|(rufKostenstelle=UFR-003100)(rufKostenstelle=UFR-002725)) 
  4. (Optional) Einen User der externen Quelle als z.B. Manager setzen:
    • ZMI: acl_users > ldap_plugin > (Tab) Contents > acl_users > (Tab) Groups > unten, "Add LDAP group to Zope role mapping"
      Dabei wird die Role Manager für LDAP-User in Zope verfügbar (komisch, aber so ist es...)
      ldap_neu4.jpg
      Zeige in voller Größe
    • ZMI: acl_users > ldap_plugin > (Tab) Contents > acl_users > (Tab) Users > Mit der Suchfunktion, den gewünschten User suchen > auf diesen User klicken und dann ihn als Manager deklarieren

 

29.09.2010 15:38
Benutzerspezifische Werkzeuge