openid_connect 2.1.0 → 2.2.1
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 +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
|