Module: ActiveDirectoryLogin::HealthCheck

Defined in:
lib/active_directory_login/health_check.rb

Class Method Summary collapse

Class Method Details

.health_check_errorsObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/active_directory_login/health_check.rb', line 7

def self.health_check_errors
  # We use these twice
  output = []

  begin
    ActiveDirectoryLogin.default_client.ensure_connection
  rescue => e
    output << "LDAP: Connecting: #{e.message}"
  end

  begin
    ActiveDirectoryLogin.default_client.ensure_connection
  rescue => e
    output << "LDAP: Authorizing: #{e.message}" unless output.include?("LDAP: Connecting: #{e.message}")
  end
  output << "LDAP: Authorizing: #{ActiveDirectory::Base.error}" if ActiveDirectory::Base.error?

  begin
    ActiveDirectory::Group.find(:first, distinguishedname: ActiveDirectoryLogin.user_dn)
  rescue
    output << 'LDAP: Searching failed; check base and authorisation config'
  end

  output.to_sentence
end

.healthy?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/active_directory_login/health_check.rb', line 33

def self.healthy?
  health_check_errors.empty?
end

.valid_config?Boolean

Returns:

  • (Boolean)


3
4
5
# File 'lib/active_directory_login/health_check.rb', line 3

def self.valid_config?
  ActiveDirectoryLogin.default_client.validate!
end