سؤال

البيئة الحالية:

  • خادم جيتلاب: سنتوس 6.5
  • الدليل النشط: ويندوز سيرفر 2008 R2

هل يمكن لأي شخص التحقق من هذه الإعدادات الوهمية لمصادقة Ldap في Gitlab 7.1.1؟

gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_host'] = 'myserver.dom.com.net'
gitlab_rails['ldap_port'] = 389
gitlab_rails['ldap_uid'] = 'sAMAccountName'
gitlab_rails['ldap_method'] = 'plain' # 'ssl' or 'plain'
gitlab_rails['ldap_bind_dn'] = 'OU=Users,DC=dom,DC=com,DC=net'
gitlab_rails['ldap_password'] = '????'
gitlab_rails['ldap_allow_username_or_email_login'] = true
gitlab_rails['ldap_base'] = 'DC=dom,DC=com,DC=net'

أيّ ldap_bind_dn هل يجب ضبطه حتى يعمل Gitlab (ما يعادل حساب المستخدم)؟

أيّ ldap_password هل يجب ضبطه حتى يعمل Gitlab؟

لقد تابعت الاقتراحات من:@metaDiego و @heinglandreas.وكلاهما كانا في الطريق الصحيح.لذلك قمت بتعديل إعداداتي في السطور:

حل

gitlab_rails['ldap_bind_dn'] = 'CN=the_allowed_user_for_access_ldap,OU=Users,DC=dom,DC=com,DC=net'
gitlab_rails['ldap_password'] = 'the_password_of_allowed_user'

ال ldap_bind_dn قد يختلف وفقًا لبنية AD والمستوى الحالي حيث يوجد المستخدم المسموح به.

لا تسمح شركتي AD باستعلامات Ldap مجهولة المصدر.لذلك كانت إضافة تلك المعلمات إلزامية.

ابحث عن مساعدة في مسؤولي المجال للحصول على تلك المعلمات.

مقالة مفيدة من gitlabhq في جيثب

لو gitlab_rails['ldap_allow_username_or_email_login'] = true, ، يمكن أن يكون مستخدم تسجيل الدخول باستخدام تنسيق البريد الإلكتروني أو مستخدم المجال فقط.

Gitlab authentication form

هل كانت مفيدة؟

المحلول

ال ldap_bind_dn يجب أن يكون الاسم المميز لـ a مستخدم الذي لديه حق الوصول للقراءة إلى LDAP.بقدر ما أستطيع أن أرى أنك تشير إلى بنية الدليل باستخدام OU=Users,DC=dom,DC=com,DC=net.سيتعين عليك استخدام كلمة مرور المستخدمين كـ ```

لذا ldap_bind_dn يجب أن تقرأ شيئا من هذا القبيل uid=userid,OU=Users,DC=com,DC=com,DC=net و ldap_password يجب أن يكون بعد ذلك useridكلمة المرور.

على بعض خوادم LDAP ldap_bind_dn يمكن تركها فارغة كما تسمح بذلك ربط مجهول.في هذه الحالة ldap_password يجب أن تترك فارغة أيضا.

هل هذا منطقي؟خلاف ذلك لا تتردد في التعليق!

نصائح أخرى

لديّ GitLab LDAP conf، وملف password يجب أن يتطابق الحقل مع bind_dn المستخدم الذي اخترته.

gitlab_rails['ldap_base'] = 'ou=somehting,dc=foo,dc=bar'
gitlab_rails['ldap_bind_dn'] = 'uid=SOMEONE,ou=somehting,dc=foo,dc=bar'
gitlab_rails['ldap_password'] = 'SOMEONE_PASSWORD'
  • ldap_base هو المكان الذي تبحث فيه عن المستخدمين

  • ldap_bind_dn هو "المستخدم الموجود على خادم LDAP الخارجي مسموح له بالبحث في دليل LDAP داخل قاعدة البحث المحددة."

  • ldap_password هي كلمة المرور ل bind_dn مستخدم.لذلك في حالتك يجب أن يتطابق مع المستخدم OU=Usersكلمة المرور.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top