matic-jwt 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 820d5ea52ea13265f15f8edae701cbec3a838798dbba576c4275d0330beaf4c1
4
- data.tar.gz: 795cfc00feafc232d476237f236ea3e27667139a2174b667b946d2b37d610ce8
3
+ metadata.gz: 127e8cdaa833e9c90946cd3554b15206cd03b0d0d9fe239fd79e7adf8ce94e31
4
+ data.tar.gz: 2d4e2519154346e265da925c444541384b34059b2d28c0689021cbbc0cb053b8
5
5
  SHA512:
6
- metadata.gz: 3e00adc27b5821276bf43776e172b81fa994055ddeba1f2e1125ef79f484dbfbabfbf892de83b93f1cd35a6df44dacef312a1244afea1c26b8ed3d6fcd2850c5
7
- data.tar.gz: 3ba9b91334a883353f1ea82e5d8e2d7b505a95d16aa0630d418703922ae8d7812d2593cda326f28cfd44cebd1077596ee8e60e3f31446af496164a7c6b0af955
6
+ metadata.gz: 2d479e1cfe74283bc214b66fd9f63548436e50338e3d062dd0767f775c8babfeb6e97154ec17ac2e381e490902daa00084fdd71fef1dd4047c2f702b31a86679
7
+ data.tar.gz: e6356ebbb64286bf5eb868d1730399e7aa595b970a1106970812052912698d4f58499c0976173fe9bb269a789cbc257a0ab4c960e3f524ea1744c09ed310509b
@@ -19,7 +19,7 @@ GEM
19
19
  concurrent-ruby (~> 1.0)
20
20
  jwt (2.2.1)
21
21
  minitest (5.14.0)
22
- rake (10.5.0)
22
+ rake (13.0.1)
23
23
  rspec (3.7.0)
24
24
  rspec-core (~> 3.7.0)
25
25
  rspec-expectations (~> 3.7.0)
@@ -43,7 +43,7 @@ PLATFORMS
43
43
  DEPENDENCIES
44
44
  bundler (~> 1.16)
45
45
  matic-jwt!
46
- rake (~> 10.0)
46
+ rake (~> 13.0)
47
47
  rspec (~> 3.0)
48
48
 
49
49
  BUNDLED WITH
data/README.md CHANGED
@@ -20,7 +20,16 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
- ####With Grape
23
+ ### Plain Ruby
24
+
25
+ Use `MaticJWT::Generator` to create JWT tokens or headers:
26
+ ```ruby
27
+ generator = MaticJWT::Generator.new
28
+ token = generator.token_for('my_client', 'my_super_secret', additional_payload: 'test')
29
+ header = generator.authentication_header_for('my_client', 'my_super_secret', user_id: 'test@localhost.com')
30
+ ```
31
+
32
+ ### With Grape
24
33
 
25
34
  Use ```:jwt_auth``` strategy and provide secret.
26
35
  ```ruby
@@ -1,17 +1,18 @@
1
1
  module MaticJWT
2
2
  class Generator
3
- def initialize(expiration: EXPIRATION)
3
+ def initialize(expiration: EXPIRATION, scheme: SCHEME)
4
4
  @expiration = expiration
5
+ @scheme = scheme
5
6
  end
6
7
 
7
- def token_for(client_name, secret)
8
- payload = {client_name: client_name, exp: @expiration.since.to_i}
9
- JWT.encode(payload, secret, ALGORITHM)
8
+ def token_for(client_name, secret, payload = {})
9
+ jwt_payload = payload.merge(client_name: client_name, exp: @expiration.since.to_i)
10
+ JWT.encode(jwt_payload, secret, ALGORITHM)
10
11
  end
11
12
 
12
- def authentication_header_for(client_name, secret, scheme: SCHEME)
13
- token = token_for(client_name, secret)
14
- "#{scheme} #{token}"
13
+ def authentication_header_for(client_name, secret, payload = {})
14
+ token = token_for(client_name, secret, payload)
15
+ "#{@scheme} #{token}"
15
16
  end
16
17
  end
17
18
  end
@@ -1,3 +1,3 @@
1
1
  module MaticJWT
2
- VERSION = '1.1.0'.freeze
2
+ VERSION = '1.2.0'.freeze
3
3
  end
@@ -32,6 +32,6 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency 'activesupport'
33
33
 
34
34
  spec.add_development_dependency 'bundler', '~> 1.16'
35
- spec.add_development_dependency 'rake', '~> 10.0'
35
+ spec.add_development_dependency 'rake', '~> 13.0'
36
36
  spec.add_development_dependency 'rspec', '~> 3.0'
37
37
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: matic-jwt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yurii Danyliak
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-02-03 00:00:00.000000000 Z
11
+ date: 2020-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '13.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '10.0'
68
+ version: '13.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement