riddl 0.99.238 → 0.99.239
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c301d64e6a963f82909cbd5076cba088665079f0
|
4
|
+
data.tar.gz: 91cde5f65ca064ad63853d7abe78992acabf1e00
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 33cf18569dd93ba6b866fac95eb822ea5b51efbb34709284135d8bf37f5c51a064b74611dd54f3f6eb8b1e48ae7b7def3fd10f7b7b103f061e49227b11c226d9
|
7
|
+
data.tar.gz: f35fc142816f45ebdc2bf629b20e0e83e6211884e6f5c26ec509e80a5cc54b9396e471d6dc33405931baf845eab4bdfa45881e1b717c10bf94f49597cf8025c6
|
@@ -64,18 +64,17 @@ module Riddl
|
|
64
64
|
end
|
65
65
|
|
66
66
|
module UnivieApp
|
67
|
-
def self::implementation(client_id, client_secret, access_tokens, refresh_tokens, adur, rdur)
|
67
|
+
def self::implementation(client_id, client_secret, access_tokens, refresh_tokens, codes, adur, rdur)
|
68
68
|
Proc.new do
|
69
69
|
run UnivieBearer::CheckAuth, client_id, client_secret, access_tokens if get 'check'
|
70
70
|
on resource 'verify' do
|
71
|
-
run VerifyIdentity, access_tokens, refresh_tokens, client_id, client_secret, adur, rdur if post 'verify_in'
|
71
|
+
run VerifyIdentity, access_tokens, refresh_tokens, codes, client_id, client_secret, adur, rdur if post 'verify_in'
|
72
72
|
end
|
73
73
|
on resource 'token' do
|
74
74
|
run RefreshToken, access_tokens, refresh_tokens, client_id, client_secret, adur, rdur if post 'refresh_token_in'
|
75
75
|
end
|
76
76
|
on resource 'revoke' do
|
77
|
-
run
|
78
|
-
run RevokeUserFlow, access_tokens, refresh_tokens if get 'revoke_user_in'
|
77
|
+
run RevokeFlow, access_tokens, refresh_tokens, codes if get 'revoke_in'
|
79
78
|
end
|
80
79
|
end
|
81
80
|
end
|
@@ -85,10 +84,11 @@ module Riddl
|
|
85
84
|
code = Base64::urlsafe_decode64 @p[0].value
|
86
85
|
access_tokens = @a[0]
|
87
86
|
refresh_tokens = @a[1]
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
87
|
+
codes = @a[2]
|
88
|
+
client_id = @a[3]
|
89
|
+
client_secret = @a[4]
|
90
|
+
adur = @a[5]
|
91
|
+
rdur = @a[6]
|
92
92
|
client_pass = "#{client_id}:#{client_secret}"
|
93
93
|
|
94
94
|
user_id, decrypted = Riddl::Utils::OAuth2::Helper::decrypt_with_shared_secret(code, client_pass).split(':', 2) rescue [nil,nil]
|
@@ -99,6 +99,7 @@ module Riddl
|
|
99
99
|
}.to_json)
|
100
100
|
else
|
101
101
|
token, refresh_token = Riddl::Utils::OAuth2::Helper::generate_optimistic_token(client_id, client_pass, adur, rdur)
|
102
|
+
codes.set(code, refresh_token, rdur)
|
102
103
|
access_tokens.set(token, user_id, adur)
|
103
104
|
refresh_tokens.set(refresh_token, token, rdur)
|
104
105
|
|
@@ -113,25 +114,16 @@ module Riddl
|
|
113
114
|
end
|
114
115
|
end
|
115
116
|
|
116
|
-
class
|
117
|
+
class RevokeFlow < Riddl::Implementation
|
117
118
|
def response
|
118
|
-
|
119
|
-
access_tokens
|
120
|
-
refresh_tokens = @a[1]
|
121
|
-
|
122
|
-
access_tokens.delete(token)
|
123
|
-
refresh_tokens.delete_by_value(token)
|
124
|
-
end
|
125
|
-
end
|
126
|
-
|
127
|
-
class RevokeUserFlow < Riddl::Implementation
|
128
|
-
def response
|
129
|
-
user_id = @p[0].value
|
130
|
-
access_tokens = @a[0]
|
119
|
+
code = Base64::urlsafe_decode64 @p[0].value
|
120
|
+
access_tokens = @a[0]
|
131
121
|
refresh_tokens = @a[1]
|
122
|
+
codes = @a[2]
|
132
123
|
|
133
|
-
|
134
|
-
refresh_tokens.
|
124
|
+
rt = codes.delete(code)
|
125
|
+
at = refresh_tokens.delete(rt)
|
126
|
+
access_tokens.delete(at)
|
135
127
|
end
|
136
128
|
end
|
137
129
|
|
data/riddl.gemspec
CHANGED