ruby on rails - active - Estrategia secundaria de GitLab LDAP
gitlab refresh ldap (1)
Estoy usando el paquete GitLab CE Omnibus (gitlab_7.7.2-omnibus.5.4.2.ci-1_amd64) en una instalación limpia de Debian (debian-7.8.0-amd64).
Seguí el proceso de instalación en https://about.gitlab.com/downloads/ y todo funciona bien.
Modifiqué /etc/gitlab/gitlab.rb para usar un único servidor LDAP para la autenticación. Lo cual funcionó también como se esperaba.
Pero cuando traté de usar una conexión LDAP secundaria "gitlab-ctl reconfigure" me da el resultado:
---- Begin output of /opt/gitlab/bin/gitlab-rake cache:clear ----
STDOUT:
STDERR: rake aborted!
Devise::OmniAuth::StrategyNotFound: Could not find a strategy with name `Ldapsecondary''. Please ensure it is required or explicitly set it using the :strategy_class option .
Tasks: TOP => cache:clear => environment
(See full trace by running task with --trace)
---- End output of /opt/gitlab/bin/gitlab-rake cache:clear ----
Entonces, el problema es que puedo usar la conexión LDAP ''principal'' pero no puedo usar la conexión ''secundaria''.
¿Hay alguna posibilidad de usar dos conexiones LDAP diferentes en la edición CE a la vez?
Soy nuevo en ruby [en rieles]. Encontré algo en /opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/ldap/config.rb pero no puedo depurar nada.
Aquí están mis configuraciones en /etc/gitlab/gitlab.rb
gitlab_rails[''ldap_enabled''] = true
gitlab_rails[''ldap_servers''] = YAML.load <<-EOS # remember to close this block with ''EOS'' below
main: # ''main'' is the GitLab ''provider ID'' of this LDAP server
label: ''First Company''
host: ''192.168.100.1''
port: 389
uid: ''sAMAccountName''
method: ''tls'' # "tls" or "ssl" or "plain"
bind_dn: ''[email protected]''
password: ''Passw0rd''
active_directory: true
allow_username_or_email_login: false
base: ''dc=firstcompany,dc=local''
user_filter: ''(&(objectClass=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))''
## EE only
group_base: ''''
admin_group: ''''
sync_ssh_keys: false
secondary: # ''secondary'' is the GitLab ''provider ID'' of second LDAP server
label: ''Second Company''
host: ''192.168.200.1''
port: 389
uid: ''sAMAccountName''
method: ''tls'' # "tls" or "ssl" or "plain"
bind_dn: ''[email protected]''
password: ''Passw0rd''
active_directory: true
allow_username_or_email_login: false
base: ''dc=secondcompany,dc=local''
user_filter: ''(&(objectClass=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))''
## EE only
group_base: ''''
admin_group: ''''
sync_ssh_keys: false
EOS
¡Muchas gracias!
Múltiples servidores LDAP es una característica de EE por lo que establecer la configuración en CE no hará nada. Puede ver la función en la documentación de GitLab .