ripple_token 0.2.0 → 0.4.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
2
  SHA256:
3
- metadata.gz: c256c95422a75c6ea026ce2a3ba93e82180d1b874b3a0cf683604228d4320109
4
- data.tar.gz: e0b5c1ef7b3d6552053117942d626096d5c755fc026534d0cb272a3a3fbf479e
3
+ metadata.gz: 8cda4c01f2b7c8c6e8ce0835a8869b4b41d3fa630d97271213a86c06a13350b0
4
+ data.tar.gz: add32a390ee2e34e138b3b8524879bf27765cb57fe9af21f077ed14dda983a2e
5
5
  SHA512:
6
- metadata.gz: 666512da31bb1a5c189c34cc90c47980f74d41982391b61c17083273b68e49668d9c9a6b4d9f2f99096f61293f3bef35db1d5c3e9be335c49277f62917113c3a
7
- data.tar.gz: a8b4a8665077d0c1c68200f0f0d228d8ae3c607e2b9cc7feedf4ca39e60d30f3b4f0eb656f03622151c92d106dc9e746a379fc90dcc74a277059da8c6e465a8d
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
- store_user_details(decoded_token, env)
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(decoded_token, env)
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']
@@ -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]&.include? path
25
+ return true if Client.public_paths[method]&.select { |p| path[p] }&.any?
26
26
 
27
27
  false
28
28
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RippleToken
4
- VERSION = '0.2.0'
4
+ VERSION = '0.4.0'
5
5
  end
@@ -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.3.1')
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.2.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-06-22 00:00:00.000000000 Z
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.3.1
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.3.1
26
+ version: '6.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: httparty
29
29
  requirement: !ruby/object:Gem::Requirement