1. 程式人生 > >《LDAP》LDAP自定義objectclass和屬性

《LDAP》LDAP自定義objectclass和屬性

在幾乎所有的 LDAP伺服器中,都要根據需要擴充套件基本的LDAP目錄的功能,建立新的物件類或者擴充套件現存的物件類。所有物件類都從其父物件類繼承。

objectClass有著嚴格的等級之分,最頂層是top和alias。例如,organizationalPerson這個objectClass就隸屬於person,而person又隸屬於top。

objectClass可分為以下3類:

結構型(Structural):如person和organizationUnit;

輔助型(Auxiliary):如extensibeObject;

抽象型(Abstract):如top,抽象型的objectClass不能直接使用。

1.  D:\OpenLDAP\schema目錄 下新建 my.schema

# Attribute Type Definitions	

attributetype ( 2.5.4.72 NAME 'aafUserTableUserId'
	DESC 'aafUserTableUserId'
	SUP name
	)

attributetype ( 2.5.4.75 NAME 'aafUserOrganId'
	DESC 'aafUserOrganId'
	SUP name
	)

attributetype ( 2.5.4.76 NAME 'aafUserUserName'
	DESC 'aafUserUserName'
	SUP name
	)

attributetype ( 2.5.4.77 NAME 'aafUserPassword'
	DESC 'aafUserPassword'
	SUP name
	)

# Object Class Definitions

objectClass ( 2.5.6.44 NAME 'aafUserTable'
	DESC 'aafUser'
	SUP person STRUCTURAL
	may ( aafUserTableUserId $ aafUserOrganId $ aafUserUserName $aafUserPassword)
	)

注意: 

 1. oid   需要保證全域性唯一   如:  2.5.4.56      2.5.6.24   

具體參考:

https://blog.csdn.net/bjd14/article/details/4331133

 2.  屬性名和類名 需避免關鍵詞

如: person  user  等

3.自定義schema,最好繼承 person  或者  organizationalUnit

 

2.  D:\OpenLDAP\slapd.conf  中引入my.schema

include		./schema/my.schema

3. 重啟ldap