another-ldap-proxy 0.1.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f2e847966bbe4b21b049e7ffb11ad4f1146b6e45c29fdc3d8f976a1595d949ac
4
- data.tar.gz: b37b3c3ef4bfb8dc085f6f30ce181ed13f6247143c5dfbdaa0905ab4e92702fb
3
+ metadata.gz: 3dc9752a06d5d819ab3ebbdebb704f25f920255b6880d1bb15dddea925d37a66
4
+ data.tar.gz: 629f58a79517b6b04bb4b34ba1139fb3c21c793fdb5bb984136838277c1c6e40
5
5
  SHA512:
6
- metadata.gz: 8675cf5fdb9bc53341f1289f1b088ffce87fdebf3572521fe4757fcbfc001910dac0cb84d934b6be7915042ab61517107b1e163de308f5d7155066cd640d2cbf
7
- data.tar.gz: a131f32681025bfbd7206e269d0d95eea554f81fb13e7fdbe821ce5a9b7bc98cd4961ab0b9f2b08652f1fea2927e9fc5523fb2060ea514184c4870e57f3febe1
6
+ metadata.gz: 7d7af74f1417062268ff9d493803fa51f029791e997d113f5b33f7041a42e9d80bfa1157f68ead869eb6b9b039dce6790d80fa4d6e73010e33fcc5efe6b1b194
7
+ data.tar.gz: 32412619cc608a1d2386bc7864870b31f847cd00b009635cb57337153bf4785b3cbad46c98f745f5dfb4385ef583a58605aeba7fac1dc894c26234492700db01
data/examples/proxy.yml CHANGED
@@ -1,5 +1,7 @@
1
1
  ---
2
2
 
3
+ debug: yes
4
+
3
5
  port: 1389
4
6
  nodelay: yes
5
7
  listen: 10
@@ -71,6 +71,8 @@ module Another
71
71
  end
72
72
 
73
73
  def bind(_version, dn, password)
74
+ logger&.info "Ldap#bind : dn:#{dn}"
75
+ logger&.debug "Ldap#bind : dn:#{dn} password:#{password}"
74
76
  bind_ldap = new_client(auth: auth(username: dn, password: password))
75
77
  status = bind_ldap.bind ? true : false
76
78
  logger&.info "Ldap#bind : #{dn} => #{status}"
@@ -79,10 +81,12 @@ module Another
79
81
  end
80
82
 
81
83
  def search(basedn, scope, _deref, filter)
84
+ logger&.debug "Ldap#search : filter:#{filter}"
82
85
  results = []
83
86
  client.search(base: search_base(basedn), scope: scope, filter: filter, return_results: true) do |entry|
84
87
  results << entry
85
88
  end
89
+ logger&.info "Ldap#search : results => #{results.size}"
86
90
  results
87
91
  rescue Net::LDAP::Error => e
88
92
  logger&.warn "Ldap#search : Error querying LDAP server: #{e.message}"
@@ -16,6 +16,10 @@ module Another
16
16
  @conf = conf
17
17
  end
18
18
 
19
+ def debug
20
+ conf[:debug]
21
+ end
22
+
19
23
  def self.from_file(conf_file)
20
24
  raise "Configuration file not found: #{conf_file}" unless File.exist?(conf_file)
21
25
 
@@ -26,7 +26,8 @@ module Another
26
26
  end
27
27
 
28
28
  def simple_bind(version, dn, password)
29
- logger&.info "Operation#simple_bind ( #{version}, #{dn}, *** )"
29
+ logger&.info "Operation#simple_bind : version:#{version} dn:#{dn}"
30
+ logger&.debug "Operation#simple_bind : dn:#{dn} password:#{password}"
30
31
 
31
32
  return if _validate_root_credentials(dn, password)
32
33
 
@@ -9,12 +9,11 @@ module Another
9
9
  class Server
10
10
  SERVER_OPTIONS = %i[port nodelay listen].freeze
11
11
 
12
- attr_reader :conf, :logger
12
+ attr_reader :conf
13
13
 
14
14
  def initialize(conf:, logger: nil)
15
15
  @conf = conf
16
- @logger = logger || Logger.new($stdout)
17
- # @logger.level = Logger::DEBUG
16
+ @logger = logger
18
17
  end
19
18
 
20
19
  def server_params
@@ -57,6 +56,15 @@ module Another
57
56
  @s.join
58
57
  end
59
58
 
59
+ def logger
60
+ return @logger if @logger
61
+
62
+ $stdout.sync = true
63
+ @logger ||= Logger.new($stdout)
64
+ @logger.level = conf.debug ? Logger::DEBUG : Logger::INFO
65
+ @logger
66
+ end
67
+
60
68
  def self.run(conf:)
61
69
  new(conf: conf).run
62
70
  end
@@ -3,7 +3,7 @@
3
3
  module Another
4
4
  module Ldap
5
5
  module Proxy
6
- VERSION = '0.1.0'
6
+ VERSION = '0.2.1'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: another-ldap-proxy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Tych
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-11-28 00:00:00.000000000 Z
11
+ date: 2024-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: base64
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.2.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: gli
15
29
  requirement: !ruby/object:Gem::Requirement