trivial_sso 4.0.3 → 4.2.2
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 +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/trivial_sso/struct/un_wrap.rb +5 -3
- data/lib/trivial_sso/struct/wrap.rb +4 -3
- data/lib/trivial_sso/version.rb +1 -1
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 938ad7677f25251e9d06a024f089f9b1bfe80823
|
4
|
+
data.tar.gz: b0c7ee706909073caa467b0984e4f4501f082901
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc9cf3e33874b8a58843b2fb154c9cc795aadb00d74674e2e76e146f9cc1eae0f14109f261cf7c1e40048ea1488b800ea27fef9a9e9dae69cd7f4c91df315148
|
7
|
+
data.tar.gz: b874358adbe63f5698c49255469a825edbbf063980105155fdbdbfd42c15e0adf75486971a9dc9020046c2967857073deda74505bb7342ff07f9c219b2ecafa8
|
data/CHANGELOG.md
CHANGED
@@ -10,7 +10,7 @@ TrivialSso::UnWrap = Struct.new :data, :sso_secret do
|
|
10
10
|
private
|
11
11
|
|
12
12
|
def userdata=(value)
|
13
|
-
@userdata
|
13
|
+
@userdata ||= value
|
14
14
|
end
|
15
15
|
|
16
16
|
def timestamp=(time_as_int)
|
@@ -25,8 +25,9 @@ private
|
|
25
25
|
def decode_data_and_timestamp
|
26
26
|
begin
|
27
27
|
has_data?
|
28
|
-
|
28
|
+
userdata_as_hash, self.timestamp = \
|
29
29
|
encrypted_message.decrypt_and_verify(data)
|
30
|
+
self.userdata = OpenStruct.new userdata_as_hash
|
30
31
|
rescue NoMethodError
|
31
32
|
raise TrivialSso::Error::MissingConfig
|
32
33
|
rescue ActiveSupport::MessageVerifier::InvalidSignature
|
@@ -48,7 +49,8 @@ private
|
|
48
49
|
unless defined? Rails
|
49
50
|
raise TrivialSso::Error::MissingRails
|
50
51
|
end
|
51
|
-
|
52
|
+
@encrypted_message ||=
|
53
|
+
ActiveSupport::MessageEncryptor.new(sso_secret, serializer: JSON)
|
52
54
|
end
|
53
55
|
|
54
56
|
end
|
@@ -4,7 +4,7 @@ TrivialSso::Wrap = Struct.new :data, :sso_secret, :expire_time do
|
|
4
4
|
|
5
5
|
def wrap
|
6
6
|
begin
|
7
|
-
encryptor.encrypt_and_sign([data, expire_time]) if sanity_check
|
7
|
+
encryptor.encrypt_and_sign([data.to_h, expire_time]) if sanity_check?
|
8
8
|
rescue NoMethodError
|
9
9
|
raise TrivialSso::Error::MissingConfig
|
10
10
|
end
|
@@ -12,12 +12,13 @@ TrivialSso::Wrap = Struct.new :data, :sso_secret, :expire_time do
|
|
12
12
|
|
13
13
|
private
|
14
14
|
|
15
|
-
def sanity_check
|
15
|
+
def sanity_check?
|
16
16
|
sso_secret && check_username || false
|
17
17
|
end
|
18
18
|
|
19
19
|
def encryptor
|
20
|
-
|
20
|
+
@encryptor ||=
|
21
|
+
ActiveSupport::MessageEncryptor.new(sso_secret, serializer: JSON)
|
21
22
|
end
|
22
23
|
|
23
24
|
def check_username
|
data/lib/trivial_sso/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trivial_sso
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David J. Lee
|
@@ -17,40 +17,40 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version:
|
20
|
+
version: 4.2.0
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 4.
|
23
|
+
version: 4.2.0
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
27
|
requirements:
|
28
28
|
- - "~>"
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version:
|
30
|
+
version: 4.2.0
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 4.
|
33
|
+
version: 4.2.0
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: activesupport
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '4.
|
40
|
+
version: '4.2'
|
41
41
|
- - ">="
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: 4.
|
43
|
+
version: '4.2'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
46
|
version_requirements: !ruby/object:Gem::Requirement
|
47
47
|
requirements:
|
48
48
|
- - "~>"
|
49
49
|
- !ruby/object:Gem::Version
|
50
|
-
version: '4.
|
50
|
+
version: '4.2'
|
51
51
|
- - ">="
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: 4.
|
53
|
+
version: '4.2'
|
54
54
|
description: |-
|
55
55
|
Used to encode and decode cookies used in a single
|
56
56
|
sign on implementation within the same domain
|