3.8. Konfigurációs fájl példa

A következőkben magyarázó szövegrészekkel megszakítva bemutatok egy konfigurációs állományt. Két adatbázist definiál, az X.500-as fa különböző részeinek kezelésére. Mindkettő BDB adatbázis. A sorok számozása csak a tájékozódást és a magyarázatot hivatott segíteni, a működő fájlban nincsenek sorszámok. Nézzük először az általános beállításokat! ( global configuration section)


1.    # example config file - global configuration section     példa konfig fájl - általános beállítások rész
2.    include /usr/local/etc/schema/core.schema
3.    referral ldap://root.openldap.org
4.    access to * by * read

Az első sor megjegyzés. Az alap-séma leírásokat tartalmazó külső fájl befoglalása a második sorban történik meg. A harmadik sorban található utalás (referral) utasítás azt jelenti, hogy az összes olyan keresési kérelem, amelyet a helyi adatbázis nem tud kiszolgálni, át lesz irányítva a hagyományos LDAP kapun (389) keresztül a root.openldap.org szerverre.

A negyedik sor az általános elérést biztosítja. Minden bejegyzésre érvényes (minden más, használható adatbázis hozzáférés korlátozás után).

A beállítófájl következő szakaszában a "dc=example,dc=com" ágban történő kérések kiszolgálására szolgáló BDB háttér leírása jön. Az adatbázis két szolga slapd-re lesz megkettőzve. Az első egy tényleges, míg a második egy "vészhelyzeti" tükrözés. Az indexelések több attribútum szerint is karbantartásra kerülnek. A userPassword tulajdonság védett a jogosulatlan hozzáférésektől.


5.     # BDB definition for the example.com
6.     database bdb
7.     suffix "dc=example,dc=com"
8.     directory /usr/local/var/openldap-data
9.     rootdn "cn=Manager,dc=example,dc=com"
10.    rootpw secret
11.    # replication directives
12.    replogfile /usr/local/var/openldap/slapd.replog
13.	   replica uri=ldap://slave1.example.com:389
14.            binddn="cn=Replicator,dc=example,dc=com"
15.            bindmethod=simple credentials=secret
16.    replica uri=ldaps://slave2.example.com:636
17.            binddn="cn=Replicator,dc=example,dc=com"
18.            bindmethod=simple credentials=secret
19.    # indexed attribute definitions
20.    index uid pres,eq
21.    index cn,sn,uid pres,eq,sub
22.    index objectClass eq
23.    # database access control definitions
24.    access to attr=userPassword
25.            by self write
26.            by anonymous auth
27.            by dn.base="cn=Admin,dc=example,dc=com" write
28.            by * none
29.    access to *
30.            by self write
31.            by dn.base="cn=Admin,dc=example,dc=com" write
32.            by * read

Az 5. sor megjegyzés. Az adatbázis definíció kezdetét a 'database' kulcsszó jelzi (6.sor). A 7. sor határozza meg a helyi adatbázishoz továbbítandó keresések DN-utótagját. A 8. sor jelzi az adatbázis fájlok helyét.

A 9. és 10. sor az adatbázis felügyelőt azonosítja és a hozzárendelt jelszót. This entry is not subject to access control or size or time limit restrictions. Please remeber to encrypt the rootpw using slappasswd.

Example: rootpw {SSHA}Jq4xhhkGa7weT/0xKmaecT4HEXsdqiYA

11-18. sorok a többszörözési feladatot írják le. Bővebben: Replication angol nyelvű oldalon.

A 20. és 22. sorok a különböző attribútumokért felelős indexeket jelzik

A 24-től a 32. sorok hozzáférési jogosultságokat szabályoznak az adabázison. Minthogy ez az első adatbázis, a szabályozók életbe lépnek minden más bejegyzésre is, amelyek nincsenek még adatbázisban (mint pl. a root DSE). Minden alkalmazható bejegyzésre érvényes, hogy a userPassword attribútum írható a bejegyzés és az 'admin' bejegyzés által. Ezt azonosítási célokra lehet használni, máskülönben nem olvasható. Minden más attribútum írható a bejegyzés és az 'admin' bejegyzés által (mások által nem), és olvashatja minden bejegyzés (akár autentikált, akár nem).

A példa konfigurációs fájl következő része egy másik BDB adatbázist is definiál. Ez az adatbázis a dc=example, dc=net alág kereséseit kezeli, de ugyanaz a lényeg, mint az első adatbázis esetében. Figyeljük meg, hogy a 39. sor nélkül olvasási jogot mindenki, az általános beállítások 4. sorának megfelelően kap.


33.    # BDB definition for example.net
34.    database bdb
35.    suffix "dc=example,dc=net"
36.    directory /usr/local/var/openldap-data-net
37.    rootdn "cn=Manager,dc=example,dc=com"
38.    index objectClass eq
39.    access to * by users read