Merge branch 'backport-2844-ldap-ee-license-checks' into 'master'
Backport some recent changes related to LDAP from EE See merge request !13119
This commit is contained in:
commit
da3100254f
|
@ -23,12 +23,7 @@ class SessionsController < Devise::SessionsController
|
|||
|
||||
def new
|
||||
set_minimum_password_length
|
||||
@ldap_servers =
|
||||
if Gitlab.config.ldap.enabled
|
||||
Gitlab::LDAP::Config.servers
|
||||
else
|
||||
[]
|
||||
end
|
||||
@ldap_servers = Gitlab::LDAP::Config.available_servers
|
||||
|
||||
super
|
||||
end
|
||||
|
|
|
@ -1,15 +1,18 @@
|
|||
if Gitlab::LDAP::Config.enabled?
|
||||
module OmniAuth::Strategies
|
||||
server = Gitlab.config.ldap.servers.values.first
|
||||
klass = server['provider_class']
|
||||
const_set(klass, Class.new(LDAP)) unless klass == 'LDAP'
|
||||
Gitlab::LDAP::Config.available_servers.each do |server|
|
||||
# do not redeclare LDAP
|
||||
next if server['provider_name'] == 'ldap'
|
||||
const_set(server['provider_class'], Class.new(LDAP))
|
||||
end
|
||||
end
|
||||
|
||||
OmniauthCallbacksController.class_eval do
|
||||
server = Gitlab.config.ldap.servers.values.first
|
||||
Gitlab::LDAP::Config.available_servers.each do |server|
|
||||
alias_method server['provider_name'], :ldap
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
OmniAuth.config.full_host = Settings.gitlab['base_url']
|
||||
OmniAuth.config.allowed_request_methods = [:post]
|
||||
|
|
|
@ -18,6 +18,12 @@ module Gitlab
|
|||
Gitlab.config.ldap.servers.values
|
||||
end
|
||||
|
||||
def self.available_servers
|
||||
return [] unless enabled?
|
||||
|
||||
Array.wrap(servers.first)
|
||||
end
|
||||
|
||||
def self.providers
|
||||
servers.map { |server| server['provider_name'] }
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue