LDAP: كيف للبحث عن رمز المستخدم نظرا عبر وحدات المؤسسة متعددة؟
-
21-08-2019 - |
سؤال
أولا، اسمحوا لي أن أبدأ بالقول إن أنا جديدة تماما للعمل مع LDAP.
وأنا أعمل على تطبيق يشارك خادم LDAP مع عدد قليل من التطبيقات القديمة.
ويتم تنظيم جميع حسابات المستخدمين في التطبيق القديمة إلى وحدات تنظيمية من قبل معرفات. كل دخول له uid
هذا هو عنوان البريد الإلكتروني للمستخدمين.
ويمكن أن أجد ما إذا كان المستخدم مع some@email.com
البريد الإلكتروني موجود في وحدة تنظيمية 12345
باستخدام dn
شيء من هذا القبيل: ou=someGroup,ou=12345,uid=some@email.com
ولكن ما أود أن تكون قادرة على القيام به هو التحقق من وجود المستخدم عبر وحدات تنظيمية متعددة. على سبيل المثال، أود أن تكون قادرة على التحقق ما إذا كان البريد الإلكتروني قيد الاستخدام في مع عدد التعسفي من الوحدات التنظيمية. (على سبيل المثال، تحقق في 12345
، 23452
، و34352
).
وبعد غوغلينغ حولها، ويبدو أنني يجب أن تكون قادرة على العثور على مداخل متعددة مع dn
واحدة، ولكن أنا لم ترد على كيفية التحقق من هذا السيناريو.
لا أحد يعرف كيف يمكن القيام فحص مثل هذا؟ أنا أستخدم LDAP الربيع.
المحلول
وأعتقد أنك يجب أن تكون قادرة على القيام بذلك على النحو التالي:
وكما بحثك DN تحديد مكونات المجال فقط:
وBASE_DN = "DC = اختبار، DC = COM"
وأما الفلتر، حدد الخاص بك CN أو رمز المستخدم
وFILTER = "UID = بوب"
وكما بحثك تأكد من تحديد "الفرعية" أو الربيع LDAP المعلمة محددة للبحث في كامل شبه شجرة تحت DN قاعدة.
واعتمادا على الإعداد الخاص بك، قد تحتاج إلى طلب البحث على الروابط دائما Dereference.