94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
# File 'lib/contour/fixes/omniauth.rb', line 94
def callback_phase
bind_dn = "#{@options[:domain] + '\\' unless @options[:domain].blank?}#{request['username']}" @options[:bind_dn] = bind_dn if @options[:bind_dn].blank? @adaptor = OmniAuth::LDAP::Adaptor.new @options
raise MissingCredentialsError.new("Missing login credentials") if request['username'].nil? || request['password'].nil?
begin
@ldap_user_info = @adaptor.bind_as(base: @adaptor.base, username: bind_dn, password: request['password']) return fail!(:invalid_credentials) if !@ldap_user_info
@user_info = self.class.map_user(@@config, @ldap_user_info)
super
rescue Exception => e
return fail!(:ldap_error, e)
end
end
|