rack-oauth2 1.8.1 → 1.8.2
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/Gemfile +2 -2
- data/VERSION +1 -1
- data/lib/rack/oauth2/client.rb +13 -1
- data/rack-oauth2.gemspec +18 -18
- metadata +32 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cbac894ed9163540ac519a063032626b0a76207d
|
4
|
+
data.tar.gz: 8c6b39c0c3b6477fe59d507e563f81dc20e6b81a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 321b9d515d5926a653c16f9dd3a58cdf900872810218bc7aad37c473b39cec07cca3579ef4b5c16ad3ba93e74eee56b0cf43711f61b04724fbf6639af8d5bb71
|
7
|
+
data.tar.gz: 27aec030fe85e7ef03efff02cd08b8388a2e317d2e10a6fed9cf0e3bff4052185b8545543cf4d581d9e1a0bda23368b55033398132165b068b2c184e33e31124
|
data/Gemfile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.8.
|
1
|
+
1.8.2
|
data/lib/rack/oauth2/client.rb
CHANGED
@@ -3,7 +3,7 @@ module Rack
|
|
3
3
|
class Client
|
4
4
|
include AttrRequired, AttrOptional
|
5
5
|
attr_required :identifier
|
6
|
-
attr_optional :secret, :redirect_uri, :scheme, :host, :port, :authorization_endpoint, :token_endpoint
|
6
|
+
attr_optional :secret, :private_key, :redirect_uri, :scheme, :host, :port, :authorization_endpoint, :token_endpoint
|
7
7
|
|
8
8
|
def initialize(attributes = {})
|
9
9
|
(required_attributes + optional_attributes).each do |key|
|
@@ -90,6 +90,18 @@ module Rack
|
|
90
90
|
params.merge!(
|
91
91
|
client_assertion_type: URN::ClientAssertionType::JWT_BEARER
|
92
92
|
)
|
93
|
+
# NOTE: optionally auto-generate client_assertion.
|
94
|
+
if params[:client_assertion].blank?
|
95
|
+
require 'json/jwt'
|
96
|
+
params[:client_assertion] = JSON::JWT.new(
|
97
|
+
iss: identifier,
|
98
|
+
sub: identifier,
|
99
|
+
aud: absolute_uri_for(token_endpoint),
|
100
|
+
jti: SecureRandom.hex(16),
|
101
|
+
iat: Time.now,
|
102
|
+
exp: 3.minutes.from_now
|
103
|
+
).sign(private_key || secret).to_s
|
104
|
+
end
|
93
105
|
when :saml2_bearer
|
94
106
|
params.merge!(
|
95
107
|
client_assertion_type: URN::ClientAssertionType::SAML2_BEARER
|
data/rack-oauth2.gemspec
CHANGED
@@ -1,26 +1,26 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
|
-
s.name =
|
3
|
-
s.version = File.read(
|
4
|
-
s.
|
5
|
-
s.authors = ["nov matake"]
|
2
|
+
s.name = 'rack-oauth2'
|
3
|
+
s.version = File.read('VERSION')
|
4
|
+
s.authors = ['nov matake']
|
6
5
|
s.description = %q{OAuth 2.0 Server & Client Library. Both Bearer and MAC token type are supported.}
|
7
6
|
s.summary = %q{OAuth 2.0 Server & Client Library - Both Bearer and MAC token type are supported}
|
8
|
-
s.email =
|
9
|
-
s.extra_rdoc_files = [
|
10
|
-
s.rdoc_options = [
|
11
|
-
s.homepage =
|
7
|
+
s.email = 'nov@matake.jp'
|
8
|
+
s.extra_rdoc_files = ['LICENSE', 'README.rdoc']
|
9
|
+
s.rdoc_options = ['--charset=UTF-8']
|
10
|
+
s.homepage = 'http://github.com/nov/rack-oauth2'
|
12
11
|
s.license = 'MIT'
|
13
|
-
s.require_paths = [
|
12
|
+
s.require_paths = ['lib']
|
14
13
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
15
14
|
s.files = `git ls-files`.split("\n")
|
16
15
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
|
-
s.add_runtime_dependency
|
18
|
-
s.add_runtime_dependency
|
19
|
-
s.add_runtime_dependency
|
20
|
-
s.add_runtime_dependency
|
21
|
-
s.
|
22
|
-
s.add_development_dependency
|
23
|
-
s.add_development_dependency
|
24
|
-
s.add_development_dependency
|
25
|
-
s.add_development_dependency
|
16
|
+
s.add_runtime_dependency 'rack'
|
17
|
+
s.add_runtime_dependency 'httpclient'
|
18
|
+
s.add_runtime_dependency 'activesupport'
|
19
|
+
s.add_runtime_dependency 'attr_required'
|
20
|
+
s.add_runtime_dependency 'json-jwt'
|
21
|
+
s.add_development_dependency 'rake'
|
22
|
+
s.add_development_dependency 'simplecov'
|
23
|
+
s.add_development_dependency 'rspec'
|
24
|
+
s.add_development_dependency 'rspec-its'
|
25
|
+
s.add_development_dependency 'webmock'
|
26
26
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack-oauth2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nov matake
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-02-
|
11
|
+
date: 2018-02-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|
@@ -16,70 +16,84 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: httpclient
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: activesupport
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: attr_required
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: json-jwt
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
62
76
|
type: :runtime
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
80
|
- - ">="
|
67
81
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0
|
82
|
+
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rake
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
87
|
- - ">="
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version: '0
|
89
|
+
version: '0'
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - ">="
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0
|
96
|
+
version: '0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: simplecov
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -126,16 +140,16 @@ dependencies:
|
|
126
140
|
name: webmock
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- - "
|
143
|
+
- - ">="
|
130
144
|
- !ruby/object:Gem::Version
|
131
|
-
version: '
|
145
|
+
version: '0'
|
132
146
|
type: :development
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- - "
|
150
|
+
- - ">="
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
152
|
+
version: '0'
|
139
153
|
description: OAuth 2.0 Server & Client Library. Both Bearer and MAC token type are
|
140
154
|
supported.
|
141
155
|
email: nov@matake.jp
|
@@ -284,10 +298,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
284
298
|
requirements:
|
285
299
|
- - ">="
|
286
300
|
- !ruby/object:Gem::Version
|
287
|
-
version:
|
301
|
+
version: '0'
|
288
302
|
requirements: []
|
289
303
|
rubyforge_project:
|
290
|
-
rubygems_version: 2.6.
|
304
|
+
rubygems_version: 2.6.11
|
291
305
|
signing_key:
|
292
306
|
specification_version: 4
|
293
307
|
summary: OAuth 2.0 Server & Client Library - Both Bearer and MAC token type are supported
|