auth_jwt_go 0.1.3 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/auth_jwt_go-0.1.3.gem +0 -0
- data/auth_jwt_go-0.1.4.gem +0 -0
- data/auth_jwt_go-1.0.0.gem +0 -0
- data/auth_jwt_go-1.0.1.gem +0 -0
- data/lib/auth_jwt_go/authorized_user.rb +3 -2
- data/lib/auth_jwt_go/version.rb +1 -1
- data/lib/auth_jwt_go.rb +12 -20
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9e1ed6985e7c1a41051daa52b0d994a0c964cafea15ee3667053ff38282cb0a3
|
4
|
+
data.tar.gz: 14ed0fa84553b8070ef367bb7653247046a10797f89dcf756243c8aa88089d03
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6d6d86fc777464e163b78c4b7d292f7156d6bc25e6e00390be1cc3e496bdb6644b73c02cb3b45bc93e1a804cfea6881ee8d76f9bd5419c3bcbd122195efcbd36
|
7
|
+
data.tar.gz: 4b223b0dc62874184f1b6924af66288ea4c816026e23323f868cb09f0463b5f230c0bfbc8fb119ad81a1d0d727239628782c5f00e32e0263799f16cd40fb9f4b
|
data/README.md
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,8 +1,9 @@
|
|
1
1
|
module AuthJwtGo
|
2
2
|
class AuthorizedUser
|
3
3
|
def initialize(fields)
|
4
|
-
fields.each do |
|
5
|
-
|
4
|
+
fields.each do |k, v|
|
5
|
+
instance_variable_set("@#{k.to_s.underscore}", v)
|
6
|
+
self.class.send(:attr_accessor, k.to_s.underscore)
|
6
7
|
end
|
7
8
|
end
|
8
9
|
end
|
data/lib/auth_jwt_go/version.rb
CHANGED
data/lib/auth_jwt_go.rb
CHANGED
@@ -21,18 +21,24 @@ module AuthJwtGo
|
|
21
21
|
render json: { message: "The error was #{e.to_s}" }, status: 500
|
22
22
|
end
|
23
23
|
|
24
|
-
def authorized_tenant
|
25
|
-
{ message: 'The user has not token active', status: 403 } unless logged_tenant?
|
26
|
-
rescue StandardError => e
|
27
|
-
{ message: e.to_s, status: 500 }
|
28
|
-
end
|
29
|
-
|
30
24
|
def authorized_app
|
31
25
|
unless AuthJwtGo::secret_key_api.eql?(auth_client)
|
32
26
|
render json: {message: 'The app has not access' }, status: 401
|
33
27
|
end
|
34
28
|
end
|
35
29
|
|
30
|
+
def decoded_tenant(http_request)
|
31
|
+
return { message: 'The jwt can not decode!!!!', error: true } unless http_request.env["HTTP_AUTHORIZATION"]
|
32
|
+
token = http_request.env["HTTP_AUTHORIZATION"].split(' ')[1]
|
33
|
+
decode = JWT.decode(token, AuthJwtGo::secret_key_jwt, true, { algorithm: AuthJwtGo::algorithm || 'HS256'} )
|
34
|
+
return { message: 'The jwt can not decode!!!!', error: true } unless decode
|
35
|
+
AuthJwtGo::AuthorizedUser.new(decode[0])
|
36
|
+
rescue JWT::DecodeError => e
|
37
|
+
{ message: "JWT::DecodeError => #{e.to_s}", error: true }
|
38
|
+
rescue JWT::ExpiredSignature => e
|
39
|
+
{ message: "JWT::ExpiredSignature => #{e.to_s}", error: true }
|
40
|
+
end
|
41
|
+
|
36
42
|
def encode_token(payload)
|
37
43
|
return { message: 'The payload is not present'} unless payload.present?
|
38
44
|
{jwt: JWT.encode(payload, AuthJwtGo::secret_key_jwt, AuthJwtGo::algorithm || 'HS256')}
|
@@ -44,16 +50,6 @@ module AuthJwtGo
|
|
44
50
|
!!logged_in_user
|
45
51
|
end
|
46
52
|
|
47
|
-
def logged_tenant?
|
48
|
-
!!logged_in_tenant
|
49
|
-
end
|
50
|
-
|
51
|
-
def logged_in_tenant
|
52
|
-
decode = decoded_token
|
53
|
-
return unless decode
|
54
|
-
@jwt_decode = AuthJwtGo::AuthorizedUser.new(decode[0])
|
55
|
-
end
|
56
|
-
|
57
53
|
def logged_in_user
|
58
54
|
decode = decoded_token
|
59
55
|
return unless decode
|
@@ -89,8 +85,4 @@ module AuthJwtGo
|
|
89
85
|
def current_user
|
90
86
|
@current_user
|
91
87
|
end
|
92
|
-
|
93
|
-
def jwt_decode
|
94
|
-
@jwt_decode
|
95
|
-
end
|
96
88
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: auth_jwt_go
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jonathan rojas
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-10-07 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: this authenticates your api with jwt include current_user helper
|
14
14
|
email:
|
@@ -34,6 +34,10 @@ files:
|
|
34
34
|
- auth_jwt_go-0.1.0.gem
|
35
35
|
- auth_jwt_go-0.1.1.gem
|
36
36
|
- auth_jwt_go-0.1.2.gem
|
37
|
+
- auth_jwt_go-0.1.3.gem
|
38
|
+
- auth_jwt_go-0.1.4.gem
|
39
|
+
- auth_jwt_go-1.0.0.gem
|
40
|
+
- auth_jwt_go-1.0.1.gem
|
37
41
|
- auth_jwt_go.gemspec
|
38
42
|
- bin/console
|
39
43
|
- bin/setup
|
@@ -62,7 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
62
66
|
- !ruby/object:Gem::Version
|
63
67
|
version: '0'
|
64
68
|
requirements: []
|
65
|
-
rubygems_version: 3.0.
|
69
|
+
rubygems_version: 3.0.8
|
66
70
|
signing_key:
|
67
71
|
specification_version: 4
|
68
72
|
summary: Auth API with Jwt include current_user helper
|