Я просто не могу настроить пользователей на вход из Active Directory.
Я перепробовал почти все, что нашел в Google.
На данный момент пришел к выводу, что необходимо отредактировать контроллер
File 'app/controllers/devise_token_auth/sessions_controller.rb'
Подскажите, пожалуйста, как я могу переписать блок кода, чтобы после неудачной попытки входа в систему у меня была функция проверки пользователя в Active Directory, и, если пользователь существует, он был бы добавлен в базу данных и вошли в систему?
Я использую следующую функцию:
class ActiveDirectoryUser
SERVER = '192.168.xx.xx'
PORT = 389
BASE = 'ou=OFFICE,dc=aaa,dc=loc'
DOMAIN = 'aaa.loc'
def self.authenticate(login, pass)
conn = Net::LDAP.new :host => SERVER,
:port => PORT,
:base => BASE,
:auth => { :username => "#{login}@#{DOMAIN}",
:password => pass,
:method => :simple }
if conn.bind
conn.search(
:base => BASE, :filter => Net::LDAP::Filter.eq(
"sAMAccountName", login ),
:attributes => %w[ givenName ], :return_result => true) do
|entry|
#puts "givenName: #{entry.givenName}"
$username = entry.givenName.first
end
return true
else
return false
end
rescue Net::LDAP::LdapError => e
return false
end
end