lockie 0.2.8 → 0.2.9

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: 06027d091324bf7822e326a262e35cbd94d170658d9f142e02fbb53df314f6c6
4
- data.tar.gz: 9a47a99c1a91ac49c39babdad32136c2f01bd2d1952b66ba0cb055e357f9ecc9
3
+ metadata.gz: 25ba87a9c9345cf549912647fb08b4bb35abdfae8904a89d83ae44a38bc4c164
4
+ data.tar.gz: 616b9774aacd68d28d44123455e961f27ae37b635eea411a82e1747f99afbd9a
5
5
  SHA512:
6
- metadata.gz: 2f50baf7c9418de8284ad4719ce98607acd00f50487cc11ee842dddf31fdac9c329b6b4bb692c93afe81a3c7b6f5eaee5e417b1ca24db6e1ea9e9d5ca9c9d95d
7
- data.tar.gz: d361cdea1d3d3d19688c33e0e62843124fe25d6f877ec1781c5c84ee5b1d7bc606bc7b67820e3b6b12a3309193d4de623a2d71c2a7ea548dd55f9a4832bfb5f4
6
+ metadata.gz: 9087e1aca2a0185747150a72253ccb0a75b13a2ad4ec6be51d2148d33ae1a6fcb913cf1299bf35789cf0c081c499028ca04adf3b38c4b835d94fe8bc1570004b
7
+ data.tar.gz: a91cdaf0387442309b0cf7f7544ea4fc9da6646205309d3d83a0d6379db5dcd5bf94f3ea596b608f4882e953a00c3f29877f4a8c3cccb2dc6537116d7bfcfed8
data/README.md CHANGED
@@ -9,7 +9,7 @@ A drop-in, none assuming warden based Password and JWT authentication for Rails
9
9
  Add this line to your application's Gemfile:
10
10
 
11
11
  ```ruby
12
- gem 'lockie', '~> 0.2.7'
12
+ gem 'lockie', '~> 0.2.8'
13
13
  ```
14
14
 
15
15
  And then execute:
@@ -24,17 +24,29 @@ module Lockie
24
24
  class_methods do
25
25
 
26
26
  def find_by_token(token)
27
- payload = JWT.decode(token, Lockie.config.jwt_secret, true, { algorithm: Lockie.config.hash_algorithm })
28
- auth_id = payload.first.fetch('sub') { nil }
29
- find(auth_id)
27
+ payloads = decode_token token
28
+ find_auth payloads.first
30
29
  end
31
30
 
32
- def create_token(payload: {}, secret:)
31
+ def find_auth(payload)
32
+ auth_id = extract_auth_id payload
33
+ find auth_id
34
+ end
35
+
36
+ def extract_auth_id(payload)
37
+ payload.fetch('sub') { nil }
38
+ end
39
+
40
+ def decode_token(token, secret: Lockie::config.jwt_secret)
41
+ JWT.decode(token, secret, true, { algorithm: Lockie.config.hash_algorithm })
42
+ end
43
+
44
+ def create_token(payload: {}, secret: , hash_algorithm: 'HS256')
33
45
  payload = {
34
46
  aud: 'lockie-app',
35
47
  }.merge(payload)
36
48
 
37
- JWT.encode(payload, secret, 'HS256')
49
+ JWT.encode(payload, secret, hash_algorithm)
38
50
  end
39
51
 
40
52
  end
@@ -1,3 +1,3 @@
1
1
  module Lockie
2
- VERSION = '0.2.8'
2
+ VERSION = '0.2.9'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lockie
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Melvin Sembrano
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-15 00:00:00.000000000 Z
11
+ date: 2019-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -135,7 +135,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
135
  - !ruby/object:Gem::Version
136
136
  version: '0'
137
137
  requirements: []
138
- rubygems_version: 3.0.4
138
+ rubyforge_project:
139
+ rubygems_version: 2.7.7
139
140
  signing_key:
140
141
  specification_version: 4
141
142
  summary: Drop in password and JWT token authentication for Ruby on Rails