Microsoft Active Directory backend

A MaYoR keretrendszer az azonosítók és csoportok adatait képes AD-ből is venni. Mi szükséges ehhez?

Módosítások az AD-ben

Néhány egyszerű módosítást, bővítést el kell végeznünk az AD címtárban.

mayor szervezeti egység létrehozása

Nem kötelező, de célszerű lehet külön szervezeti egységet (OU) felvenni a mayor-hoz kapcsolódó csoportok, esetleg az admin felhasználó tárolására.

OU=mayor,DC=your,DC=domain

A keretrendszer működtetéséhez szükséges felhasználói fiókok létrehozása

Egyes műveletekhez szükséges, hogy a keretrendszer egy emelt jogosultságú felhasználóval tudjon csatlakozni az AD-hoz. Ehhet hozzunk létre külön azonosítót:

CN=MaYoROperator,OU=mayor,DC=your,DC=domain

Majd tegyük be az Account Operators (Fiókfelelősök) csoportba.

A biztonságot fokozhatja, ha létrehozunk a keretrendszer számára egy olyan azonosítót is, amelyik csak normál olvasási joggal rendelkezik a címtárban. Ekkor a program azokhoz a feladatokhoz, melyekhez elegendő az olvasási jog, ezt az azonosítót fogja használni.

CN=MaYoRUser,OU=mayor,DC=your,DC=domain

Csoportok létrehozása

A MaYoR rendszer igényel néhány felhasználói csoportot. Ezeket létrehozhatjuk a mayor tároló alatt:

CN=diak,OU=mayor,DC=your,DC=domain
CN=tanar,OU=mayor,DC=your,DC=domain
CN=titkarsag,OU=mayor,DC=your,DC=domain
CN=diakadmin,OU=mayor,DC=your,DC=domain
CN=uzenoadmin,OU=mayor,DC=your,DC=domain
CN=vezetoseg,OU=mayor,DC=your,DC=domain
CN=naploadmin,OU=mayor,DC=your,DC=domain
...

Az oktatási azonosító tárolása

A MaYoR keretrendszer az oktatási azonosítót használja arra a célra, hogy a felhasználói azonosítókat és a naplóban szereplő diákokat, tanárokat megfeleltesse egymással. Ezért szükséges, hogy a felhasználói fiókok egy attribútumát az oktatási azonosító tárolására használjuk. Hogy melyik attribútumot használjuk erre a célra, az szabadon megválasztható, a konfigurációs file-ban megadható (adsStudyIdAttr). A javasolt, alapértelmezett mező erre a célra a serialnumber.

Ellenőrzés 1: LDAP lekérdezés

Ellenőrzés képpen aa MaYoR szerverről próbáljunk lekérdezni AD adatokat parancssorból, valahogy így:

ldapsearch -H ldap://ad.your.domain -u -x -D "CN=MaYoRUser,OU=mayor,DC=your,DC=domain" -b DC=your,DC=domain '(&(objectclass=person)(cn=MaYoRUser))' -w jelszó

Ha a lekérdezés eredményes, akkor továbbléphetünk. A fenti lekérdezés kódolatlan LDAP kapcsolatot használt, jelszavunk tehát titkosítatlanul utazott a hálózaton. Ezen mindenképp változtatni kell, a módosításokhoz a Microsoft AD - nagyon helyesen - meg is követeli a biztonságos kapcsolatot.

Tanűsítvány telepítése

Első körben tehát biztosítani kell, hogy LDAPS protokollal elérhető legyen az AD. Ehhez készítenünk/vásárolnuk és telepítenünk kell egy tanúsítványt a címtárba. Egy leírás erről: http://support.microsoft.com/kb/321051

Ha saját (pl. MaYoR Hungary által hitelesített) tanúsítványt használtunk, akkor a hitelesítőt is el kell fogadtatnunk, fel kell vennünk a Windows szerveren.

Kliens oldali beállítások

/etc/ldap/ldap.conf

BASE    dc=your,dc=domain
URI     ldaps://ad.your.domain:636
TLS_CACERTDIR /etc/ssl/certs

Ha saját (pl. MaYoR Hungary által hitelesített) tanúsítványt használtunk, akkor a hitelesítőt is el kell fogadtatnunk, fel kell vennünk a kliensen is. Ehhez másoljuk a hitelesítő tanúsítványát a /usr/share/ca-certificates/ alá új alkönyvtárba (pl. mayor.hu), majd készítsünk szimbolikus linket az elhelyezett file-ra a /etc/ssl/certs alá (pl. MaYoR.pem.crt néven), és egészítsük ki a /etc/ldap/ldap.conf állományt:

TLS_CACERT /etc/ssl/certs/MaYoR.pem.crt

Ellenőrzés 2: Lekérdezés LDAPS-sel

A korábbihoz hasonlóan ellenőrizzük, hogy a telepített tanúsítványokkal megy-e LDAPS-sel a lekérdezés:

ldapsearch -H ldaps://ad.your.domain:636 -u -x -D "CN=MaYoRUser,OU=mayor,dc=your,dc=domain" -b dc=your,dc=domain '(&(objectclass=person)(cn=MaYoRUser))' -w jelszó

MaYoR konfigurálás

Az utolsó lépés, hogy a /var/mayor/config/private-conf.php állományban az erre vonatkozó konfigurációs beállításokat felvegyük, kitöltsük:

      #Active Directory Backend példa konfig
      'backend'          => 'ads',
      'adsHostname'      => 'ldaps://your.domain:636',                      // Jelszóváltoztatáshoz kötelező az ldaps
      'adsBaseDn'        => 'DC=your,DC=domain',
      'adsUser'          => 'CN=MaYoRUser,OU=mayor,DC=your,DC=domain',      // Olvasási jog az AD-ben - Normál user
      'adsPw'            => 'jelszó',
      'adsAccountOperatorUser' => 'CN=Operator,OU=mayor,DC=your,DC=domain', // Account Operators (Fiókfelelősök) csoport tag pl (jelszóváltoztatás)
      'adsAccountOperatorPw'   => 'jelszó',
      'adsUserObjectClass'     => 'person',                            // Userek objectum osztálya
      'adsGroupObjectClass'    => 'group',                             // Csoportok objectum osztálya
      'adsStudyIdAttr'   => 'serialnumber',                            // Az oktatási azonosítót tároló attribútum (studyId)
      'adsContainers'        => array(
          'ou=diak,dc=your,dc=domain'        // Azok a tárolók, amikebe kerülhetnek a létrehozandó csoportok és felhasználói azonosítók
          'ou=tanar,dc=your,dc=domain'       // - már ha a MaYoR-ból szeretnénk azonosítókat felvenni - 
          'ou=titkarsag,dc=your,dc=domain'
      ),
      'adminGroup'       => 'Fiókfelelősök', // A felhasználói azonosítókat kezelők köre a MaYoR-ban - lehet szűkebb csoport is
      'cacheable'        => true, // bizonyos lekérdezések eredményét egy ideig eltárolja a MaYoR ...

Korlátok, kérdések

  • A jelszavakra vonatkozó szabályok az AD és a MaYoR együttes szabályozásából adódnak, konkurens szabályok esetén a szigorúbb érvényesül.
  • A diakadmin csoport tagjainak arra kell jogot adni, hogy a diákok jelszavait tudja változtatni, erre a funkcióra lett kitalálva ez a csoport. De hogy ezt hogy kell, azt valaki MS guru megírhatná :) …
  • Tapasztalataink szerint a Fiókfelelősök jelszavát nem engedi LDAP-n keresztül megváltoztatni az AD. Tud ilyen korlátozásról valaki valamit?
  • Az Napló/Admin/Azonosító generálás oldal valamiért nagyon lassú. De legalább működik. :-)
base/backend/ad.txt · Utolsó módosítás: 2019/05/28 19:52 (külső szerkesztés)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0