openid_connect 2.1.0 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/spec.yml +5 -6
- data/CHANGELOG.md +12 -0
- data/VERSION +1 -1
- data/lib/openid_connect/access_token.rb +1 -1
- data/lib/openid_connect/client/registrar.rb +1 -1
- data/lib/openid_connect/client.rb +1 -3
- data/lib/openid_connect/discovery/provider/config/response.rb +1 -3
- data/lib/openid_connect.rb +2 -1
- data/openid_connect.gemspec +1 -7
- data/spec/mock_response/errors/unknown.json +3 -1
- data/spec/openid_connect/client_spec.rb +0 -10
- metadata +5 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5d610417958d0eb88277e192cf20e90d56b84273f11c9fd36b7abb0e1e23789
|
4
|
+
data.tar.gz: 7c67b82bcfa68236cd8b30aaecf2365072122bb82736c3beb6c84966a0d752f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 929805046a5cddddf3732292b0b3a79eb84ff5d9cb7036775eaf0c88dac94cf1ca1d191139effbe1405ca4225029354b9ee40162f2593571c4d0f7c93123a553
|
7
|
+
data.tar.gz: 46eb9dbf0af8f267fc859c502aba268751dce244b4820aa2cb37a68aa646ece43ec281955613d363e918cbc4985c86821e60c3c6dbea69df28c7b1c9296a0c91
|
data/.github/workflows/spec.yml
CHANGED
@@ -3,7 +3,7 @@ name: Spec
|
|
3
3
|
on:
|
4
4
|
push:
|
5
5
|
branches:
|
6
|
-
-
|
6
|
+
- main
|
7
7
|
pull_request:
|
8
8
|
|
9
9
|
permissions:
|
@@ -13,12 +13,11 @@ jobs:
|
|
13
13
|
spec:
|
14
14
|
strategy:
|
15
15
|
matrix:
|
16
|
-
os: ['ubuntu-20.04']
|
17
|
-
ruby-version: ['
|
18
|
-
# ubuntu 22.04 only supports ssl 3 and thus only ruby 3.1
|
16
|
+
os: ['ubuntu-20.04', 'ubuntu-22.04']
|
17
|
+
ruby-version: ['3.1', '3.2', '3.3']
|
19
18
|
include:
|
20
|
-
- os: 'ubuntu-
|
21
|
-
ruby-version: '3.
|
19
|
+
- os: 'ubuntu-20.04'
|
20
|
+
ruby-version: '3.0'
|
22
21
|
runs-on: ${{ matrix.os }}
|
23
22
|
|
24
23
|
steps:
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
|
3
|
+
## [2.2.0] - 2022-10-11
|
4
|
+
|
5
|
+
### Changed
|
6
|
+
|
7
|
+
- automatic json response decoding by @nov in https://github.com/nov/openid_connect/pull/77
|
8
|
+
|
9
|
+
## [2.1.0] - 2022-10-10
|
10
|
+
|
11
|
+
### Changed
|
12
|
+
|
13
|
+
- mTLS access token by @nov in https://github.com/nov/openid_connect/pull/76
|
14
|
+
|
3
15
|
## [2.0.0] - 2022-10-09
|
4
16
|
|
5
17
|
### Added
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.1
|
1
|
+
2.2.1
|
@@ -170,7 +170,7 @@ module OpenIDConnect
|
|
170
170
|
end
|
171
171
|
|
172
172
|
def handle_success_response(response)
|
173
|
-
credentials =
|
173
|
+
credentials = response.body.with_indifferent_access
|
174
174
|
Client.new(
|
175
175
|
identifier: credentials[:client_id],
|
176
176
|
secret: credentials[:client_secret],
|
@@ -26,7 +26,7 @@ module OpenIDConnect
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def handle_success_response(response)
|
29
|
-
token_hash =
|
29
|
+
token_hash = response.body.with_indifferent_access
|
30
30
|
token_type = (@forced_token_type || token_hash[:token_type]).try(:downcase)
|
31
31
|
case token_type
|
32
32
|
when 'bearer'
|
@@ -34,8 +34,6 @@ module OpenIDConnect
|
|
34
34
|
else
|
35
35
|
raise Exception.new("Unexpected Token Type: #{token_type}")
|
36
36
|
end
|
37
|
-
rescue JSON::ParserError
|
38
|
-
raise Exception.new("Unknown Token Type")
|
39
37
|
end
|
40
38
|
end
|
41
39
|
end
|
@@ -81,9 +81,7 @@ module OpenIDConnect
|
|
81
81
|
end
|
82
82
|
|
83
83
|
def jwks
|
84
|
-
@jwks ||=
|
85
|
-
OpenIDConnect.http_client.get(jwks_uri).body
|
86
|
-
).with_indifferent_access
|
84
|
+
@jwks ||= OpenIDConnect.http_client.get(jwks_uri).body.with_indifferent_access
|
87
85
|
JSON::JWK::Set.new @jwks[:keys]
|
88
86
|
end
|
89
87
|
|
data/lib/openid_connect.rb
CHANGED
@@ -69,9 +69,10 @@ module OpenIDConnect
|
|
69
69
|
Faraday.new(headers: {user_agent: "OpenIDConnect (#{VERSION})"}) do |faraday|
|
70
70
|
faraday.request :url_encoded
|
71
71
|
faraday.request :json
|
72
|
-
faraday.response :
|
72
|
+
faraday.response :json
|
73
73
|
faraday.adapter Faraday.default_adapter
|
74
74
|
http_config&.call(faraday)
|
75
|
+
faraday.response :logger, OpenIDConnect.logger, {bodies: true} if debugging?
|
75
76
|
end
|
76
77
|
end
|
77
78
|
def self.http_config(&block)
|
data/openid_connect.gemspec
CHANGED
@@ -22,13 +22,7 @@ Gem::Specification.new do |s|
|
|
22
22
|
s.add_runtime_dependency "json-jwt", ">= 1.16"
|
23
23
|
s.add_runtime_dependency "swd", "~> 2.0"
|
24
24
|
s.add_runtime_dependency "webfinger", "~> 2.0"
|
25
|
-
s.add_runtime_dependency "rack-oauth2", "~> 2.
|
26
|
-
if Gem.ruby_version >= Gem::Version.create(3.1)
|
27
|
-
# TODO:
|
28
|
-
# remove "net-smtp" dependency after mail gem 2.8+ (which supports ruby 3.1+) released.
|
29
|
-
# ref.) https://rubygems.org/gems/mail
|
30
|
-
s.add_runtime_dependency "net-smtp"
|
31
|
-
end
|
25
|
+
s.add_runtime_dependency "rack-oauth2", "~> 2.2"
|
32
26
|
s.add_development_dependency "rake"
|
33
27
|
s.add_development_dependency "rspec"
|
34
28
|
s.add_development_dependency "rspec-its"
|
@@ -162,16 +162,6 @@ describe OpenIDConnect::Client do
|
|
162
162
|
end
|
163
163
|
end
|
164
164
|
|
165
|
-
context 'when invalid JSON is returned' do
|
166
|
-
it 'should raise OpenIDConnect::Exception' do
|
167
|
-
mock_json :post, client.token_endpoint, 'access_token/invalid_json', request_header: header_params, params: protocol_params do
|
168
|
-
expect do
|
169
|
-
access_token
|
170
|
-
end.to raise_error OpenIDConnect::Exception, 'Unknown Token Type'
|
171
|
-
end
|
172
|
-
end
|
173
|
-
end
|
174
|
-
|
175
165
|
context 'otherwise' do
|
176
166
|
it 'should raise Unexpected Token Type exception' do
|
177
167
|
mock_json :post, client.token_endpoint, 'access_token/mac', request_header: header_params, params: protocol_params do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openid_connect
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nov matake
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-12-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tzinfo
|
@@ -156,28 +156,14 @@ dependencies:
|
|
156
156
|
requirements:
|
157
157
|
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: '2.
|
159
|
+
version: '2.2'
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: '2.
|
167
|
-
- !ruby/object:Gem::Dependency
|
168
|
-
name: net-smtp
|
169
|
-
requirement: !ruby/object:Gem::Requirement
|
170
|
-
requirements:
|
171
|
-
- - ">="
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
version: '0'
|
174
|
-
type: :runtime
|
175
|
-
prerelease: false
|
176
|
-
version_requirements: !ruby/object:Gem::Requirement
|
177
|
-
requirements:
|
178
|
-
- - ">="
|
179
|
-
- !ruby/object:Gem::Version
|
180
|
-
version: '0'
|
166
|
+
version: '2.2'
|
181
167
|
- !ruby/object:Gem::Dependency
|
182
168
|
name: rake
|
183
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -377,7 +363,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
377
363
|
- !ruby/object:Gem::Version
|
378
364
|
version: '0'
|
379
365
|
requirements: []
|
380
|
-
rubygems_version: 3.
|
366
|
+
rubygems_version: 3.4.10
|
381
367
|
signing_key:
|
382
368
|
specification_version: 4
|
383
369
|
summary: OpenID Connect Server & Client Library
|