sun_gem 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sun_gem/version.rb +1 -1
- data/lib/sun_gem.rb +5 -16
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c659d56fe9bca58b2e77ab8ba79b99364cb720aa
|
4
|
+
data.tar.gz: a1a7f67b9ff5bb059c3649f9c62ad3672b3f48fa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 110890f197774efbd55cbc17e42539dc20df9041ede74e9236e1aea20af48bc5e1e499693366fbb54d4e83bd0d926a05c4cdd11018ce342afb96561bc5500edd
|
7
|
+
data.tar.gz: c083fa550aca7c33a7397a071039c63e08fda7afa47bbceeecfb05af196b8185938c95a5972c78eca7c42327a37f715f8ecd996c088b92ea62dc63d9716e88e1
|
data/lib/sun_gem/version.rb
CHANGED
data/lib/sun_gem.rb
CHANGED
@@ -2,7 +2,7 @@ require "sun_gem/version"
|
|
2
2
|
|
3
3
|
module SunGem
|
4
4
|
class << self
|
5
|
-
REQUIRED_KEYS = %w(access_key kind time)
|
5
|
+
# REQUIRED_KEYS = %w(access_key kind time)
|
6
6
|
TIMEOUT_MINUTES = 2
|
7
7
|
|
8
8
|
def generate_signature(params)
|
@@ -16,11 +16,8 @@ module SunGem
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def authenticate(signature, params, optional_params = {})
|
19
|
-
|
20
|
-
|
21
|
-
return false, 'expired_signature', 400 if expired_signature?(required_params[:time])
|
22
|
-
|
23
|
-
server_signature = Digest::SHA1.hexdigest(convert_params(required_params.merge(optional_params).merge(secret_key: secret_key)))
|
19
|
+
return false, 'expired_signature', 400 if expired_signature?(params[:time])
|
20
|
+
server_signature = Digest::SHA1.hexdigest(convert_params(params.merge(optional_params).merge(secret_key: secret_key)))
|
24
21
|
if signature == server_signature
|
25
22
|
true
|
26
23
|
else
|
@@ -28,20 +25,12 @@ module SunGem
|
|
28
25
|
end
|
29
26
|
end
|
30
27
|
|
31
|
-
# def write_yml
|
32
|
-
# data = 'secret_key: ""'
|
33
|
-
# File.open("#{Rails.root}/config/sun_gem.yml", 'w') { |f|
|
34
|
-
# YAML.dump(data, f)
|
35
|
-
# }
|
36
|
-
# end
|
37
|
-
|
38
|
-
|
39
28
|
private
|
40
|
-
|
29
|
+
|
41
30
|
def expired_signature?(time)
|
42
31
|
time.to_i < TIMEOUT_MINUTES.minutes.ago.to_i
|
43
32
|
end
|
44
|
-
|
33
|
+
|
45
34
|
def convert_params(params)
|
46
35
|
params.sort.to_h.values.flatten.map { |e| e.is_a?(Hash) ? convert_params(e) : e }
|
47
36
|
end
|