ripple_token 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ripple_token/middleware.rb +9 -6
- data/lib/ripple_token/token.rb +1 -1
- data/lib/ripple_token/version.rb +1 -1
- data/ripple_token.gemspec +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cda4c01f2b7c8c6e8ce0835a8869b4b41d3fa630d97271213a86c06a13350b0
|
4
|
+
data.tar.gz: add32a390ee2e34e138b3b8524879bf27765cb57fe9af21f077ed14dda983a2e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d7871db406c255d77ca7f984701db7b3e060b7a897cf30d8b0e4feb147dacf8d29d25ae77025d2b6d750707153eeb6355b8d8c7b97ed90aa2870d49f000ccf90
|
7
|
+
data.tar.gz: dc0eee417cf07132cb115480febb568de4a5d40665e028f959deef3ada974815c5fca9a56bb327a4ff4d488aee719cebf89a73a03a99fd9ac1f651b01ecc8e29
|
@@ -15,19 +15,22 @@ module RippleToken
|
|
15
15
|
path = env['PATH_INFO']
|
16
16
|
|
17
17
|
encoded_token = env['HTTP_AUTHORIZATION']&.gsub(/^Bearer /, '') || ''
|
18
|
-
unless token.public_path? method, path
|
19
|
-
raise MissingTokenError if encoded_token.nil || encoded_token&.empty?
|
20
|
-
end
|
21
|
-
decoded_token = token.decode(encoded_token)
|
22
18
|
|
23
|
-
|
19
|
+
if encoded_token.nil? || encoded_token&.empty?
|
20
|
+
raise MissingTokenError unless token.public_path? method, path
|
21
|
+
else
|
22
|
+
store_user_details(encoded_token, env)
|
23
|
+
end
|
24
24
|
|
25
25
|
@app.call(env)
|
26
26
|
end
|
27
27
|
|
28
28
|
private
|
29
29
|
|
30
|
-
def store_user_details(
|
30
|
+
def store_user_details(encoded_token, env)
|
31
|
+
env['keycloak.raw_token'] = encoded_token
|
32
|
+
decoded_token = token.decode(encoded_token)
|
33
|
+
|
31
34
|
env['keycloak.token'] = decoded_token
|
32
35
|
env['keycloak.user_id'] = decoded_token['sub']
|
33
36
|
env['keycloak.user_roles'] = decoded_token['realm_access']['roles']
|
data/lib/ripple_token/token.rb
CHANGED
@@ -22,7 +22,7 @@ module RippleToken
|
|
22
22
|
def public_path?(method, path)
|
23
23
|
return false if Client.public_paths.nil? || Client.public_paths.empty?
|
24
24
|
|
25
|
-
return true if Client.public_paths[method]&.
|
25
|
+
return true if Client.public_paths[method]&.select { |p| path[p] }&.any?
|
26
26
|
|
27
27
|
false
|
28
28
|
end
|
data/lib/ripple_token/version.rb
CHANGED
data/ripple_token.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
26
26
|
spec.require_paths = ['lib']
|
27
27
|
|
28
|
-
spec.add_dependency('activesupport', '6.0
|
28
|
+
spec.add_dependency('activesupport', '~>6.0')
|
29
29
|
spec.add_dependency('httparty', '0.18.1')
|
30
30
|
spec.add_dependency('jwt', '2.2.1')
|
31
31
|
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ripple_token
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hex Event Solutions Limited
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-07-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 6.0
|
19
|
+
version: '6.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: 6.0
|
26
|
+
version: '6.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: httparty
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|