मैं वर्तमान में LDAP प्रमाणीकरण को एक प्रणाली में एकीकृत करने पर काम कर रहा हूं और मैं LDAP समूह के आधार पर पहुंच को प्रतिबंधित करना चाहूंगा। ऐसा करने का एकमात्र तरीका खोज फ़िल्टर के माध्यम से है और इसलिए मेरा मानना है कि मेरे खोज फ़िल्टर में "मेंबरऑफ़" विशेषता का उपयोग करने का मेरा एकमात्र विकल्प है। यह मेरी समझ है कि "सदस्यऑफ" विशेषता एक परिचालन विशेषता है जो सर्वर द्वारा मेरे लिए कभी भी बनाई जा सकती है, सर्वर पर किसी भी "ग्रुपऑफनेम" प्रविष्टि के लिए एक नया "सदस्य" विशेषता बनाई जाती है। मेरा मुख्य लक्ष्य एक मौजूदा "groupOfNames" प्रविष्टि में "सदस्य" विशेषता जोड़ने में सक्षम होना है और एक मिलान "सदस्यओफ़" विशेषता है जिसे मैं प्रदान करने वाले डीएन में जोड़ा जा सकता हूं।
मैंने अब तक क्या हासिल किया है:
मैं अभी भी एलडीएपी प्रशासन के लिए बहुत नया हूं, लेकिन ओपनडैप एडमिन के गाइड में मुझे जो मिला है, उसके आधार पर, यह रिवर्स ग्रुप मेंबरशिप मैनटेंस उर्फ "मेंडॉफ़ ओवरले" जैसा दिखता है, ठीक वैसा ही प्रभाव प्राप्त करेगा जैसा मैं देख रहा हूं।
मेरा सर्वर वर्तमान में Openldap 2.4.15 का एक पैकेज इंस्टालेशन (ubuntu पर थप्पड़) चला रहा है जो "cn = config" स्टाइल रनटाइम कॉन्फ़िगरेशन का उपयोग करता है। अधिकांश उदाहरण मुझे अभी भी पुराने "slapd.conf" स्थैतिक विन्यास के संदर्भ में मिलते हैं और मैंने नई निर्देशिका आधारित मॉडल के विन्यास को अनुकूलित करने की पूरी कोशिश की है।
मैंने निम्नलिखित प्रविष्टियाँ जोड़ दी हैं ताकि मेम्बरऑफ ओवरले मॉड्यूल को सक्षम किया जा सके:
OlcModuleLoad के साथ मॉड्यूल सक्षम करें
cn=config/cn\=module\{0\}.ldif
dn: cn=module{0}
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof.la
structuralObjectClass: olcModuleList
entryUUID: a410ce98-3fdf-102e-82cf-59ccb6b4d60d
creatorsName: cn=config
createTimestamp: 20090927183056Z
entryCSN: 20091009174548.503911Z#000000#000#000000
modifiersName: cn=admin,cn=config
modifyTimestamp: 20091009174548Z
डेटाबेस के लिए ओवरले को सक्षम किया और इसे डिफ़ॉल्ट सेटिंग्स (ग्रुपऑफनेम, सदस्य, सदस्यऑफ आदि) का उपयोग करने की अनुमति दी।
cn=config/olcDatabase={1}hdb/olcOverlay\=\{0\}memberof
dn: olcOverlay={0}memberof
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: olcConfig
objectClass: top
olcOverlay: {0}memberof
structuralObjectClass: olcMemberOf
entryUUID: 6d599084-490c-102e-80f6-f1a5d50be388
creatorsName: cn=admin,cn=config
createTimestamp: 20091009104412Z
olcMemberOfRefInt: TRUE
entryCSN: 20091009173500.139380Z#000000#000#000000
modifiersName: cn=admin,cn=config
modifyTimestamp: 20091009173500Z
मेरा वर्तमान परिणाम:
उपरोक्त कॉन्फ़िगरेशन का उपयोग करके, मैं "सदस्य" प्रविष्टियों में से किसी भी संख्या के साथ एक नया "groupOfNames" जोड़ने में सक्षम हूं और सभी "" सदस्य "विशेषता के साथ अद्यतन किए गए डीएन शामिल हैं। यह मेरे द्वारा किए जाने वाले व्यवहार का हिस्सा है। जबकि मेरा मानना है कि सदस्य के ओवरले के साथ निम्नलिखित को पूरा किया जाना चाहिए था, फिर भी मुझे नहीं पता कि निम्नलिखित कैसे करना है और मैं खुशी से किसी भी सलाह का स्वागत करूंगा:
- एक "समूह" विशेषता को एक "ग्रुपऑफनेम" में जोड़ें और एक संबंधित "सदस्यऑफ" विशेषता को स्वचालित रूप से बनाया जाए।
- "सदस्य" विशेषता को निकालें और संबंधित "सदस्य" विशेषता को स्वचालित रूप से हटा दें।
slapadd
(रुके हुए डेटाबेस पर) इसे करने का सही तरीका नहीं है?