我們有多個使用OpenLDAP進行身份驗證和存儲數據的應用程序。我們有很多來自多個應用程序的數據庫的OpenLDAP實體的鏈接(每個應用程序都有自己的數據庫),因此當您更改OpenLDAP實體時,您必須跟蹤對象更改(當前我們使用DN作爲參考鍵)。在LDAP內部,我們沒有幾個引用,比如用戶可以訪問哪些對象,因爲它們可以有非常特定的訪問權限(訪問權限不依賴於層次結構),LDAP也不會跟蹤這些更改,因此一旦這些引用的對象被移動我們需要在LDAP和多個數據庫中跟蹤它們。使用LDAP不僅用於身份驗證,而且用於存儲數據
我是linux和OpenLDAP的新手(我們有它在linux上運行),但對我來說,這似乎是一個錯誤的方式來處理事情,它似乎就像我們使用LDAP的方式,它沒有設計(像這樣使用它的想法來自高級開發人員)。
我的問題是:
有什麼壞在我所描述的方式來使用LDAP。
我該如何更改OpenLDAP架構來爲我們使用的所有對象類創建類似GUID的東西,這樣至少我們可以存儲對象GUID而不是DN,並且不必跟蹤更改。如果我更改模式,我將能夠執行搜索並通過此GUID篩選?
謝謝,但我不能添加entryUUID屬性,說posixAccount條目(它也有對象類頂部,orgPerson,人)。但是我可以更改模式以允許此屬性,但在這種情況下,Apache Directory Studio將此屬性編輯爲文件內容。只有在LDAP中使用觸發器才能完成引用完整性? – Felix
對我來說[entrUUID](http://tools.ietf.org/html/rfc4530)是一個操作屬性(添加到您的Ldapsearch命令中以查看它)。是的,據我所知,參照完整性總是使用某種觸發器,並在後端數據庫中引入一些要求。 – JPBlanc