gitlab_omniauth-ldap 2.1.1 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6d0257f9f6fc7f3368403940bba04ecc860b8c52
4
- data.tar.gz: 706ce31f13aa10bc0e5e982ae2ad52d611ec1dbd
2
+ SHA256:
3
+ metadata.gz: 25feeb3ba0d219352e71ab7ada2e2daf80c7fb94a552985cfb012e7582476aa2
4
+ data.tar.gz: b80f443e17e0afe34510eae3918039806a61c9a53012b8eff41653c93922638e
5
5
  SHA512:
6
- metadata.gz: 22c81461f04cd89702366adabeeff539195a887f046ebd1d0235f9bbbed2d0c8ace4a74e151924a37d330de3806727475e2d27790a328eb824e623e1e0e9295d
7
- data.tar.gz: 29bcd91f9be90911956f7891f81f33fcc591c0258861e2a99f2b99312b8ae6473cec4dfcef4dd535081254530e8e50b0968aa385b127ba530459ec97ba2ae6c7
6
+ metadata.gz: 6f970c0e9b3380d132f5073039ed3486c6e8f6bbd180e9ef9b059db3591391f837f75f99f1805a5e7da872acb12cb1ea360c5fdb4275294fd9506272df7d98a5
7
+ data.tar.gz: 4b97d19722ade8113abe4c829bd3cfc40957a5983cf66f8096a97a03bd4d270145394ce3609d6cbd3b6014c081f6994d464f5ea22c2064c9b63001e33c59b8c9
data/.gitlab-ci.yml CHANGED
@@ -1,12 +1,23 @@
1
- image: "ruby:2.3.1"
2
-
3
- before_script:
4
- - bundle install
1
+ default:
2
+ image: "ruby:${RUBY_VERSION}"
5
3
 
6
4
  stages:
7
5
  - test
6
+ - deploy
8
7
 
9
- rspec:
10
- stage: test
8
+ .test-template: &test
9
+ before_script:
10
+ - bundle install
11
11
  script:
12
12
  - bundle exec rake spec
13
+
14
+ rspec:
15
+ parallel:
16
+ matrix:
17
+ - RUBY_VERSION: [ "2.7", "3.0", "3.1", "3.2", "3.3", "3.4"]
18
+ <<: *test
19
+
20
+ include:
21
+ - component: gitlab.com/gitlab-org/components/gem-release/gem-release@main
22
+ inputs:
23
+ gem_name: gitlab_omniauth-ldap
@@ -9,7 +9,7 @@ Gem::Specification.new do |gem|
9
9
  gem.homepage = "https://gitlab.com/gitlab-org/omniauth-ldap"
10
10
  gem.license = "MIT"
11
11
 
12
- gem.add_runtime_dependency 'omniauth', '~> 1.3'
12
+ gem.add_runtime_dependency 'omniauth', '>= 1.3', '< 3'
13
13
  gem.add_runtime_dependency 'net-ldap', '~> 0.16'
14
14
  gem.add_runtime_dependency 'pyu-ruby-sasl', '>= 0.0.3.3', '< 0.1'
15
15
  gem.add_runtime_dependency 'rubyntlm', '~> 0.5'
@@ -46,10 +46,10 @@ module OmniAuth
46
46
  return fail!(:invalid_request_method) unless valid_request_method?
47
47
  return fail!(:missing_credentials) if missing_credentials?
48
48
  begin
49
- @ldap_user_info = @adaptor.bind_as(:filter => filter(@adaptor), :size => 1, :password => request['password'])
49
+ @ldap_user_info = @adaptor.bind_as(:filter => filter(@adaptor), :size => 1, :password => request.params['password'])
50
50
 
51
51
  unless @ldap_user_info
52
- return fail!(:invalid_credentials, InvalidCredentialsError.new("Invalid credentials for #{request['username']}"))
52
+ return fail!(:invalid_credentials, InvalidCredentialsError.new("Invalid credentials for #{request.params['username']}"))
53
53
  end
54
54
 
55
55
  @user_info = self.class.map_user(@@config, @ldap_user_info)
@@ -61,10 +61,10 @@ module OmniAuth
61
61
 
62
62
  def filter(adaptor)
63
63
  if adaptor.filter and !adaptor.filter.empty?
64
- username = Net::LDAP::Filter.escape(@options[:name_proc].call(request['username']))
64
+ username = Net::LDAP::Filter.escape(@options[:name_proc].call(request.params['username']))
65
65
  Net::LDAP::Filter.construct(adaptor.filter % { username: username })
66
66
  else
67
- Net::LDAP::Filter.equals(adaptor.uid, @options[:name_proc].call(request['username']))
67
+ Net::LDAP::Filter.equals(adaptor.uid, @options[:name_proc].call(request.params['username']))
68
68
  end
69
69
  end
70
70
 
@@ -107,7 +107,7 @@ module OmniAuth
107
107
  end
108
108
 
109
109
  def missing_credentials?
110
- request['username'].nil? or request['username'].empty? or request['password'].nil? or request['password'].empty?
110
+ request.params['username'].nil? or request.params['username'].empty? or request.params['password'].nil? or request.params['password'].empty?
111
111
  end # missing_credentials?
112
112
  end
113
113
  end
@@ -4,7 +4,6 @@ require 'rack'
4
4
  require 'net/ldap'
5
5
  require 'net/ntlm'
6
6
  require 'sasl'
7
- require 'kconv'
8
7
  module OmniAuth
9
8
  module LDAP
10
9
  class Adaptor
@@ -1,5 +1,5 @@
1
1
  module OmniAuth
2
2
  module LDAP
3
- VERSION = "2.1.1"
3
+ VERSION = "2.3.0"
4
4
  end
5
5
  end
@@ -30,7 +30,20 @@ describe "OmniAuth::Strategies::LDAP" do
30
30
  end
31
31
 
32
32
  describe '/auth/ldap' do
33
- before(:each){ get '/auth/ldap' }
33
+ let!(:csrf_token) { SecureRandom.base64(32) }
34
+ let(:post_env) { make_env('/auth/ldap', 'rack.session' => { csrf: csrf_token }, 'rack.input' => StringIO.new("authenticity_token=#{escaped_token}")) }
35
+ let(:escaped_token) { URI.encode_www_form_component(csrf_token, Encoding::UTF_8) }
36
+
37
+ before(:each) { post '/auth/ldap', nil, post_env }
38
+
39
+ def make_env(path = '/auth/ldap', props = {})
40
+ {
41
+ 'REQUEST_METHOD' => 'POST',
42
+ 'PATH_INFO' => path,
43
+ 'rack.session' => {},
44
+ 'rack.input' => StringIO.new('test=true')
45
+ }.merge(props)
46
+ end
34
47
 
35
48
  it 'should display a form' do
36
49
  last_response.status.should == 200
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab_omniauth-ldap
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ping Yu
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-22 00:00:00.000000000 Z
11
+ date: 2025-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: omniauth
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '3'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
29
  version: '1.3'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '3'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: net-ldap
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -138,7 +144,6 @@ files:
138
144
  - ".gitignore"
139
145
  - ".gitlab-ci.yml"
140
146
  - ".rspec"
141
- - ".travis.yml"
142
147
  - CHANGELOG
143
148
  - Gemfile
144
149
  - Guardfile
@@ -156,7 +161,7 @@ homepage: https://gitlab.com/gitlab-org/omniauth-ldap
156
161
  licenses:
157
162
  - MIT
158
163
  metadata: {}
159
- post_install_message:
164
+ post_install_message:
160
165
  rdoc_options: []
161
166
  require_paths:
162
167
  - lib
@@ -171,12 +176,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
176
  - !ruby/object:Gem::Version
172
177
  version: '0'
173
178
  requirements: []
174
- rubyforge_project:
175
- rubygems_version: 2.6.14.3
176
- signing_key:
179
+ rubygems_version: 3.5.22
180
+ signing_key:
177
181
  specification_version: 4
178
182
  summary: A LDAP strategy for OmniAuth.
179
- test_files:
180
- - spec/omniauth-ldap/adaptor_spec.rb
181
- - spec/omniauth/strategies/ldap_spec.rb
182
- - spec/spec_helper.rb
183
+ test_files: []
data/.travis.yml DELETED
@@ -1,7 +0,0 @@
1
- branches:
2
- only:
3
- - 'master'
4
- rvm:
5
- - 2.0.0
6
- - 2.1.5
7
- script: "bundle exec rspec spec"