在openLdap上添加memberOf屬性

我爲openldap添加memberof屬性的時候參考了這個文章:http://www.adimian.com/blog/2014/10/how-to-enable-memberof-using-openldap/api

可是文章上用的ldap的版本有些舊了,有些屬性的名字在新的版本的ldap裏邊已經變動了,因此記錄一下。測試

變動有如下兩點:
用戶組的objectClass從 groupOfNames 變成了 groupOfUniqueNamesui

組裏邊的用戶的屬性的名稱從member變成了uniqueMembercode

配置的方法:blog

編輯 memberof_config.ldif 內容以下:get

dn: cn=module,cn=config
    cn: module
    objectClass: olcModuleList
    olcModuleLoad: memberof
    olcModulePath: /usr/lib/ldap

    dn: olcOverlay=memberof,olcDatabase={1}hdb,cn=config
    objectClass: olcConfig
    objectClass: olcMemberOf
    objectClass: olcOverlayConfig
    objectClass: top
    olcOverlay: memberof
    olcMemberOfDangling: ignore
    olcMemberOfRefInt: TRUE
    olcMemberOfGroupOC: groupOfUniqueNames
    olcMemberOfMemberAD: uniqueMember
    olcMemberOfMemberOfAD: memberOf

編輯 refint1.ldif 內容以下:class

dn: cn=module{1},cn=config
    add: olcmoduleload
    olcmoduleload: refint

編輯 refint2.ldif 內容以下:test

dn: olcOverlay=refint,olcDatabase={1}hdb,cn=config
    objectClass: olcConfig
    objectClass: olcOverlayConfig
    objectClass: olcRefintConfig
    objectClass: top
    olcOverlay: refint
    olcRefintAttribute: memberof uniqueMember  manager owner

而後執行命令進行添加:module

sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f  memberof_config.ldif

    sudo ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f  refint1.ldif

    sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f  refint2.ldif

完成以後,參照連接裏的文章,新建一個組,往組裏新建一個用戶,而後執行測試:mobile

ldapsearch -x -LLL -H ldap:/// -b uid=test,ou=users,dc=abc,dc=chinamobile,dc=com dn memberof

若是出現了memberof屬性,則說明添加成功

相關文章
相關標籤/搜索