LDAP-Einschreibung: Unterschied zwischen den Versionen

Wechseln zu: Navigation, Suche

Hinweis: Sie sind auf den Seiten der Moodle 3.1 Dokumentation. Die Dokumentation der aktuellsten Moodle-Version finden Sie hier: LDAP-Einschreibung.

(Notes:)
Zeile 90: Zeile 90:
 
:Hier können Sie den Kurznamen eines vorhandenen Moodle-Kurses angeben, der als Vorlage für neu anzulegende Kurse dienen soll.
 
:Hier können Sie den Kurznamen eines vorhandenen Moodle-Kurses angeben, der als Vorlage für neu anzulegende Kurse dienen soll.
  
=== Notes: ===
+
===Hinweise===
  
# You do not need to create the courses manually in Moodle. If they don't exist, they will be created when the first enrolled user login.
+
#Sie müssen die Kurse nicht manuell in Moodle anlegen. Wenn sie nicht existieren, werden sie automatisch angelegt, sobald sich die erste eingeschriebene Person in Moodle anmeldet.
# We are using the same string cn and uid in a users LDAP record. This is not necessary, I believe. However, if you use different values, you will need to define the ldap_user_attribute to uid in the LDAP authentication setup.
+
#Wir verwenden hier in dem Beispiel denselben String <code>cn</code> und <code>uid</code> in LDAP-Nutzer-Datensatz. Das ist nicht zwingend erforderlich. Wenn Sie jedoch verschiedene Bezeichnungen verwenden, müssen Sie das <code>ldap_user_attribute</code> bei den [[LDAP-Server|Einstellungen zur Authentifizierung über LDAP]] auf <code>uid</code> setzen.
# The value of the group id number (gidNumber) defined for the groups in step 2 of the LDAP Container Setup above is not critical. It is not used in this setup.
+
#Der Wert der Gruppen-ID (<code>gidNumber</code>) ist nicht relevant, er wird in diesem Beispiel nicht verwenden.
# The attached .ldif file assumes that users are in the ou=People container in LDAP. You will need to configure your LDAP Authentication setup to reflect this (ldap_contexts variable).
+
# Es wird angenommen, dass die Nutzer/innen in LDAP im Container <code>ou=People</code> eingetragen sind. Das muss in der [[LDAP-Server|Einstellung zur Authentifizierung über LDAP]] <code>ldap_contexts variable</code> entsprechend eingetragen werden.
# User passwords for this setup are defined in the attached .ldif file.
 
# If you use the attached .ldif file, you'll need to edit the ldap server information (the "dn=" lines).
 
  
 
==Other LDAP Layout==
 
==Other LDAP Layout==

Version vom 2. Mai 2012, 13:57 Uhr


Baustelle.png Diese Seite ist noch nicht vollständig übersetzt.

Die LDAP-Einschreibung wird auf der Seite Einstellungen > Website-Administration > Plugins > Einschreibung > Übersicht aktiviert (siehe Einschreibungs-Plugins verwalten).

Dieser Artikel beschreibt, wie die LDAP-Einschreibung in Moodle konfiguriert wird. Die LDAP-Einschreibung funktioniert am besten, wenn auch für die Authentifizierung der Nutzer/innen ein LDAP-Server verwendet wird.


Voraussetzungen

  1. Sie verwenden einen LDAP-Serverals erste Authentifizierungsmethode.
  2. Alle Nutzer/innen haben ein uid Attribut im ihrem LDAP-Nutzer-Datensatz, das mit der Nutzer-ID in ihrem Moodle-Nutzerprofil übereinstimmt.

Beispiel

Wir betrachten das folgende einfache Beispiel:

  • Zwei Kurse Math101 und Eng201.
  • Zwei Trainer/innen TrainerA und TrainerB.
  • DreiTeilnehmer/innen TeilnehmerD, TeilnehmerE und TeilnehmerF.
  • TeilnehmerD und TeilnehmerE sind Teilnehmer/innen im Kurs Math101 und TrainerA ist Trainer/in im Kurs Math101. TeilnehmerE und TeilnehmerF sind Teilnehmer/innen im Kurs Eng201, und TrainerA und TrainerB sind beide Trainer/in im Kurs Eng201.

LDAP-Server-Konfiguration

  1. Definieren Sie zwei LDAP Container
    ou=TeilnehmerEinschreibung
    und
    ou=TrainerEinschreibung
    .
  2. Für jeden Kurs definieren Sie einen LDAP-Gruppeneintrag (z.B. einen
    posixGroup
    Eintrag) in den Containern
    TeilnehmerEinschreibung
    und
    TrainerEinschreibung
    . D.h. Sie definieren eine
    Math101 posixGroup
    unter
    TeilnehmerEinschreibung
    und eine
    Math101 posixGroup
    unter
    TrainerEinschreibung
    . Analog definieren Sie zwei
    Eng201
    Gruppen. Achtung: Der Name der
    posixGroup
    muss mit der Kurs-ID des entsprechenden Moodle-Kurses übereinstimmen. Sie dürfen nicht die Kurzbezeichnung des Kurses verwenden - das würde nicht funktionieren!
  3. Tragen Sie die entsprechenden Teilnehmer/innen und Trainer/innen als Mitglieder (
    member
    ) in den soeben definierten LDAP-Gruppen ein: Tragen Sie das
    uid
    Attribut der Nutzer/innen (idnumber) in das
    memberUid
    Attribut der entsprechenden Gruppe ein:
    • TrainerA
      ist Mitglied in der
      Math101
      Gruppe unter
      TrainerEinschreibung
      .
    • TeilnehmerD
      und
      TeilnehmerE
      sind Mitglieder der
      Math101
      Gruppe unter
      TeilnehmerEinschreibung
      .
    • TrainerA
      und
      TrainerB
      sind Mitglieder der
      Eng201
      Gruppe unter
      TrainerEinschreibung
      .
    • TeilnehmerE
      und
      TeilnehmerF
      sind Mitglieder der
      Eng201
      Gruppe unter
      TeilnehmerEinschreibung
      .

Konfiguration der LDAP-Einschreibung in Moodle

Die Einstellungen für die LDAP-Einschreibung nehmen Sie auf der Seite Einstellungen > Website-Administration > Plugins > Einschreibung > LDAP-Einschreibung vor. Für das obige Beispiel wählen Sie folgende Einstellungen:

Einstellungen für LDAP-Server

Host-URL
Tragen Sie hier die Adresse Ihres LDAP-Servers ein, z.B. ldap://ldap.meinserver.de oder ldaps://ldap.meinserver.de.
Version
Wählen Sie hier die Version des LDAP-Protokolls auf Ihrem LDAP-Server.
LDAP-Codierung
Geben Sie hier die Codierung an, die Ihr LDAP-Server verwendet.

Bind-Einstellungen

Anmeldename des Bind Users
Tragen Sie hier den Anmeldenamen des Bind-Nutzers ein, mit dem sich Moodle mit dem LDAP-Server verbindet.
Kennwort
Tragen Sie hier das Kennwort des Bind-Nutzers ein, mit dem sich Moodle mit dem LDAP-Server verbindet.

Rollenabbildung

Hier tragen Sie für die jeweiligen Rollen die LDAP-Kontexte und die zugehörigen LDAP-Mitgliedsattribute ein.

Im obigen Beispiel tragen Sie bei der Rolle Trainer/in folgendes ein:

  • LDAP Kontexte:
    ou=TrainerEinschreibung,dc=ldapserver,dc=tmcc,dc=edu
  • LDAP-Mitgliedsattribut:
    memberUid
    (falls Sie ActiveDirectory verwenden, tragen Sie
    member
    ein).

Bei der Rolle Teilnehmer/in tragen Sie ein:

  • LDAP Kontexte:
    ou=TeilnehmerEinschreibung,dc=ldapserver,dc=tmcc,dc=edu
  • LDAP-Mitgliedsattribut:
    memberUid
    (falls Sie ActiveDirectory verwenden, tragen Sie
    member
    ein).

Die weiteren Einstellungen hängen von der Konfiguration Ihre LDAP-Servers ab, siehe LDAP-Server.

Einstellungen für Kurse

In diesem Abschnitt nehmen Sie die Einstellungen für die Kurse vor.

Im obigen Beispiel würden Sie folgende Eintragungen machen:

ObjectClass
posixGroup
(falls Sie ActiveDirectory verwenden, tragen Sie
group
ein) - das ist die Objektklasse für die Kurssuche im LDAP-System.
ID-Nummer
cn
- das ist die Kurs-ID.
Kurzname
cn
- das ist der Kurzname des Kurses.
Vollständiger Name
cn
- das ist der vollständige Name des Kurses.

Einstellungen für automatisiertes Anlegen von Kursen

Kurse, die es in Moodle noch nicht gibt, können automatisch angelegt werden:

Automatische Erstellen
Wählen Sie hier Ja, dann werden nicht vorhandene Kurse in Moodle neu angelegt.
Kategorie
Tragen Sie hier den Kursbereich ein, in dem Kurse neu angelegt werden sollen.
Vorlage
Hier können Sie den Kurznamen eines vorhandenen Moodle-Kurses angeben, der als Vorlage für neu anzulegende Kurse dienen soll.

Hinweise

  1. Sie müssen die Kurse nicht manuell in Moodle anlegen. Wenn sie nicht existieren, werden sie automatisch angelegt, sobald sich die erste eingeschriebene Person in Moodle anmeldet.
  2. Wir verwenden hier in dem Beispiel denselben String
    cn
    und
    uid
    in LDAP-Nutzer-Datensatz. Das ist nicht zwingend erforderlich. Wenn Sie jedoch verschiedene Bezeichnungen verwenden, müssen Sie das
    ldap_user_attribute
    bei den Einstellungen zur Authentifizierung über LDAP auf
    uid
    setzen.
  3. Der Wert der Gruppen-ID (
    gidNumber
    ) ist nicht relevant, er wird in diesem Beispiel nicht verwenden.
  4. Es wird angenommen, dass die Nutzer/innen in LDAP im Container
    ou=People
    eingetragen sind. Das muss in der Einstellung zur Authentifizierung über LDAP
    ldap_contexts variable
    entsprechend eingetragen werden.

Other LDAP Layout

I do suggest to create a new LDAP object, say moodleCourse, which contains all information,& members of the course, including teachers, students a.s.o. For instance (OpenLDAP):

attributetype ( oidAttrBase:44 NAME ( 'teacherUid' ) SUP memberUid
        DESC 'which person is a teacher of this course'
    )


objectclass ( oidObjRoot:14 NAME 'moodleCourse' SUP top STRUCTURAL
        DESC 'course available in Moodle'
        MUST ( cn  )
        MAY ( owner $ gn $ sn $ seeAlso $ description $ memberUid $ teacherUid )
        )

Note: Openldap 2.x will need something like:

attributetype   ( 1.2.1.1.1.1.2.1 NAME 'teacherUid'
                SUP memberUid
                DESC 'which person is a teacher of this course'
                EQUALITY caseExactIA5Match
                SUBSTR caseExactIA5SubstringsMatch
                SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

objectclass     ( 1.2.1.1.1.1.1.1
                NAME 'moodleCourse'
                SUP top STRUCTURAL
                DESC 'course available in Moodle'
                MUST ( cn  )
                MAY ( owner $ gn $ sn $ seeAlso $ description $ memberUid $ teacherUid )
                )

The configuration is like this, in bold you see required changes, in italic you see useful changes.

LDAP Enrollment Variable: Value:
enrol_ldap_student_contexts: ou=moodle,ou=groups,dc=ldapserver,dc=tmcc,dc=edu
enrol_ldap_student_memberattribute: memberUid
enrol_ldap_teacher_contexts: ou=moodle,ou=groups,dc=ldapserver,dc=tmcc,dc=edu
enrol_ldap_teacher_memberattribute: teacherUid
enrol_ldap_objectclass: moodleGroup
enrol_ldap_course_idnumber: cn
enrol_ldap_course_shortname: givenname
enrol_ldap_course_fullname: sn
enrol_ldap_course_summary: description
enrol_ldap_autocreate: Yes

Note: The enrol_ldap_course_idnumber (cn in my setup) is used to identify the course by the LDAP enrolment script and the database uses an INTEGER numeric here, in Moodle v1.8 anyway. When you

call
cd enrol/ldap/ && php -f enrol_ldap_sync.php
any course with the same idnumber is updated, hence,

it is quite important for the LDAP synchronisation and needs to be unique.

Sample of an moodleCourse LDAP object:

dn: cn=851,ou=moodle,ou=groups,dc=ldapserver,dc=tmcc,dc=edu
objectClass: moodleCourse
cn: 851
givenName: LV851
sn: 2007S/Introduction to Moodle
description: Jahr: 2007 Sommer, <A TARGET=_blank HREF="https://other_server/display/851">Announcement</A>
teacherUid: userA
memberUid: user1

In the same fashion one can add all the other role mappings.

Siehe auch

Diskussionsbeiträge im Kurs Using Moodle auf moodle.org