LDAP登録
このページは更新が必要です。終了したら、このテンプレートを削除してください。
場所: [サイトの管理]> [プラグイン]> [登録]> [登録プラグインの管理]の[ LDAP編集設定]リンク
内容
LDAP登録を設定する方法
これはMoodleでライトウェイトディレクトリアクセスプロトコル(LDAP)登録を設定する方法を説明しています(Lars Jensenによって最初に書かれました)。 LDAP 認証は 、MoodleでLDAP認証と組み合わせて使用すると最も効果的に機能します 。MoodleをLDAP認証用に設定済みであることを前提とします。
仮定
- あなたはMoodleの最新版を実行しています。
- 主要な認証方法としてLDAP認証を使用しています。
- 各ユーザーはユーザーLDAPレコードにuid属性を持っています。これは同じユーザーのMoodleプロファイルの "ID番号"と一致します(これはMoodle LDAP認証設定ページのマッピングで簡単に調整できます - Active Directoryでは 'distinguishedNameを使用してください)。 '、引用符なし)
コース設定
私たちのセットアップは、次のコースとユーザー定義を含みます。
- Math101とEng201の 2つのコース。
- 2人の教師、教師Aと教師B。
- 3人の学生、 StudentD 、 StudentE 、およびStudentF 。
- StudentDとStudentEはMath101の学生として登録され、TeacherAはMath101の教師として登録されています。 StudentEとStudentFはEng201の学生として登録され、TeacherAとTeacherBはどちらもEng201の教師として登録されています。
LDAPコンテナの設定
- 2つのLDAPコンテナou = StudentEnrollmentとou = TeacherEnrollmentを定義します。
- コースごとに、StudentEnrollmentコンテナとTeacherEnrollmentコンテナにLDAPグループエントリ(posixGroupエントリなど)を定義します。したがって、StudentEnrollmentの下にMath101のposixGroupを定義し、TeacherEnrollmentの下にMath101のposixGroupを定義します。同様に2つのEng201グループを定義します。注意してください、posixGroupの名前はMoodleコースのコースID番号と一致しなければなりません。コースの短い名前を使用しないでください、それは動作しません。 (Windows 2000以前のグループ名ウィンドウでグループ名をわずかに変更すると、MS-ADで同じ名前の2つのセキュリティグループを持つことができます)
- 先ほど定義したLDAPグループのメンバーとして学生と教師を登録します。これは、関連グループのmemberUid属性にusers uid属性(idnumber)を入力することによって行われます。
- TeacherAは、TeacherEnrollmentの下のMath101グループのメンバーです。
- StudentDとStudentEは、StudentEnrollmentの下のMath101グループのメンバーです。
- TeacherAとTeacherBは、TeacherEnrollmentの下のEng201グループのメンバーです。
- StudentEとStudentFは、StudentEnrollmentのEng201グループのメンバーです。
MoodleのLDAP登録設定
上記の設定に対応するMoodleのLDAP登録設定は以下の通りです。
LDAP登録変数: | 値: |
---|---|
enrol_ldap_student_contexts: | ou = StudentEnrollment、dc = ldapserver、dc = tmcc、dc = edu |
enrol_ldap_student_memberattribute: | memberUid(Active Directoryの場合は、引用符なしで 'member'を使用します) |
enrol_ldap_teacher_contexts: | ou = TeacherEnrollment、dc = ldapserver、dc = tmcc、dc = edu |
enrol_ldap_teacher_memberattribute: | memberUid(Active Directoryの場合は、引用符なしで 'member'を使用します) |
enrol_ldap_objectクラス: | posixGroup(Active Directoryの場合は、引用符なしで 'group'を使用します) |
enrol_ldap_course_idnumber: | cn |
enrol_ldap_course_shortname: | cn |
enrol_ldap_course_fullname: | cn |
enrol_ldap_autocreate: | はい |
さらに、LDAP認証を使用しているので、ユーザのMoodle ID番号をLDAPエントリの "uid"にマッピングする必要があります。これはMoodle LDAP認証ページ(LDAP登録ページではありません)で行われます。
自動コース作成
まだMoodleに存在しないコースへのLDAP登録がある場合、コースは自動的に作成されます。これを有効にするには、 enrol_ldap_autocreateをYesに設定します。
enrol_ldap_categoryフィールドは、自動的に作成されたコースのカテゴリを設定します。
enrol_ldap_templateフィールドは、自動コースの作成時にテンプレートとして使用されているコースの短縮名を含めることができます。
開始日、フォーマットなどの基本コースのみがテンプレートコースからコピーされます。コンテンツやブロック構成はコピーされません。
ノート:
- Moodleでコースを手動で作成する必要はありません。存在しない場合は、最初に登録されたユーザーがログインしたときに作成されます。
- ユーザーのLDAPレコードで同じ文字列cnとuidを使用しています。これは必要ではないと思います。ただし、異なる値を使用する場合は、LDAP認証設定でldap_user_attributeをuidに定義する必要があります。
- 上記のLDAPコンテナ設定のステップ2でグループに定義されたグループID番号(gidNumber)の値は重要ではありません。この設定では使用されていません。
- 添付の.ldifファイルは、ユーザーがLDAPのou = Peopleコンテナーにいると想定しています。これを反映するようにLDAP認証設定を構成する必要があります(ldap_contexts変数)。
- このセットアップ用のユーザーパスワードは、添付の.ldifファイルに定義されています。
- 添付の.ldifファイルを使用する場合は、LDAPサーバー情報( "dn ="行)を編集する必要があります。
その他のLDAPレイアウト
moodleCourseなど、新しいLDAPオブジェクトを作成することをお勧めします。これには、すべての情報、および教師、学生などのコースのメンバー(OpenLDAPなど)が含まれます。
attributetype(oidAttrBase:44 NAME( 'teacherUid')SUP memberUid DESC 'この人はこの講師の教師です' ) objectclass(oidObjRoot:14 NAME 'moodleCourse' SUPトップ構造 DESC「Moodleで利用可能なコース」 しなければならない(cn) MAY(所有者$ gn $ sn $参照$説明$ memberUid $ teacherUid) ) 注:Openldap 2.xには以下のものが必要です。 attributetype(1.2.1.1.1.1.2.1 NAME 'teacherUid' SUPメンバーID DESC 'この人はこの講師の教師です' 等式caseExactIA5Match SUBSTR caseExactIA5SubstringsMatch 構文1.3.6.1.4.1.1466.115.121.1.26) オブジェクトクラス(1.2.1.1.1.1.1.1 NAME 'moodleCourse' SUPトップ構造 DESC「Moodleで利用可能なコース」 しなければならない(cn) MAY(所有者$ gn $ sn $参照$説明$ memberUid $ teacherUid) )
設定はこのようなものです、 太字で必要な変更を、 斜体で便利な変更を確認します。
LDAP登録変数: | 値: |
---|---|
enrol_ldap_student_contexts: | ou =ムードル、ou =グループ、dc = ldapserver、dc = tmcc、dc = edu |
enrol_ldap_student_memberattribute: | memberUid |
enrol_ldap_teacher_contexts: | ou =ムードル、ou =グループ、dc = ldapserver、dc = tmcc、dc = edu |
enrol_ldap_teacher_memberattribute: | teacherUid |
enrol_ldap_objectクラス: | moodleGroup |
enrol_ldap_course_idnumber: | cn |
enrol_ldap_course_shortname: | 名 |
enrol_ldap_course_fullname: | sn |
enrol_ldap_course_summary: | 説明 |
enrol_ldap_autocreate: | はい |
注意: Moodle v1.8では、 enrol_ldap_course_idnumber (私の設定ではcn )はLDAP登録スクリプトでコースを識別するために使用され、データベースはここでは整数を使用します。あなたが
コールcd enroll / ldap / && php -f enrol_ldap_sync.php同じID番号を持つコースはすべて更新されます。
これはLDAP同期にとって非常に重要であり、一意である必要があります。
moodleCourse LDAPオブジェクトのサンプル:
dn:cn = 851、ou = moodle、ou =グループ、dc = ldapserver、dc = tmcc、dc = edu objectClass:moodleCourse cn:851 givenName:LV851 sn:2007S / Moodleの紹介 説明:Jahr:2007年夏、<A TARGET=_blank HREF="https://other_server/display/851">お知らせ</A> teacherUid:ユーザA memberUid:user1
同じ方法で、他のすべてのロールマッピングを追加できます。
関連情報
- LDAP認証および登録設定ガイド (PDF 227KB)
Moodleフォーラムディスカッションを使用する:
- Lars Jensenによる2005年の投稿に対するLDAP登録HOWTO
- LDAP自動登録
- LDAPの悪夢パートII
- Moodle + AD + LDAP =混乱 - ヘルプが必要で提供される
- LDAPに関するWikiペディア: Moodleの文脈を超えた大量の情報