ldap新增自定義類(schema)

2021-07-30 03:35:05 字數 1584 閱讀 7622

參考:澳公尺科技的部落格,**:

ldap安裝位置:

/etc/ldap,如果想新增自定義類,則需在schema中新增新schema或者修改主core.schema。

如:#屬性

attributetype ( 1.3.6.1.4.1.7914.1.2.1.1 name 'username' 

desc 'name of the user on the mailsystem' 

equality caseignoreia5match 

syntax 1.3.6.1.4.1.1466.115.121.1.26 

single-value ) 

#類objectclass ( 1.3.6.1.4.1.7914.1.2.2.1 name 'myuser' 

desc 'ldap user' sup top structural 

must ( username $ cn ) 

may ( maildir $ home ) ) 

其中:類myuser,username 和cn為必須項,maildir 和home為可選。desc 為說明專案, sup表示父類,top表示沒有父類。caseignoreia5match和caseignorematch為 大小寫不敏感,空格不敏感(具體再查查);integermatch可以整數匹配。

結構型別(structural)是最基本的型別。

物件類有三種型別:結構型別(structural)、抽象型別(abstract)和輔助型別(auxiliary)。結構型別是最基本的型別, 它規定了物件實體的基本屬性,每個條目屬於且僅屬於乙個結構型物件類。抽象型別可以是結構型別或其他抽象型別父類,它將物件屬性中共性的部分組織在一起, 稱為其他類的模板,條目不能直接整合抽象型物件類。輔助型別規定了物件實體的擴充套件屬性。每個條目至少有乙個結構性物件類。

屬性說明:single-value表示這個屬性只有乙個值,否則預設有多個值

注:1.3.6.1.4.1.7914.1.2.2.1和1.3.6.1.4.1.7914.1.2.1.1都表示序號,如 2.5.6.17    、2.5.6.18、 2.5.6.19等等序號。

其他:substr是字串匹配,equality是相等性匹配,syntax是表示欄位的資料型別。這個admin guide裡面也有說明。 

在/tmp下建立myconf.conf檔案,內容為新增的schema,但前面新增core.schema作為依賴,如

include /etc/ldap/schema/core.schema

include /etc/ldap/schema/myscheme.schema

注:如果/tmp下有cn=config,則先刪除。

之後執行,slapcat -f /tmp/myconf.conf -f /tmp/ -n0

把生成的的cn=config/cn=schema目錄下對應的ldif檔案去替換ldap中原先cn=config/cn=schema中的ldif檔案。

位置在:/etc/ldap/slapd.d/cn=config/cn=schema

《3》重啟伺服器

重啟之前,對剛替換的ldif檔案進行賦予許可權。

伺服器啟動:service slapd restart

新增自定義欄位類

欄已經為一般使用者和開發者提供了非常好的可重用的能力。更進一步,你可以定義乙個可重用的欄定義,這將為我們帶來更大的靈活性。配合microsoft sharepoint foundation 2010,你可以將建立自定義字段型別的門檻降得很低。建立乙個自定義字段控制項的過程為 1.建立乙個public...

android自定義控制項新增自定義屬性

1 如果是自定義控制項,請在style.xml中或attrs.xml中宣告屬性 attr declare styleable 2 在theme中使用自定義的屬性,可以再多個主題中定義不同的屬性值 customize your theme here.color colorprimaryitem col...

MFC程式新增自定義命名空間和自定義類的步驟

源專案 被新增的專案 目標專案 新增專案的原專案 假設目標專案要新增源專案的 類 一 自定義專案的自定義類 1 右擊mfc解決方案,選擇新增 現有專案 目標檔案 目標檔案.vcproj 2 設定目標專案的附加包含目錄 選擇專案屬性 配置屬性 c c 常規 附加包含目錄,在附加包含目錄上新增 solu...