jpsclient 2.3.0 → 2.4.0
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/lib/jpsclient/auth/token.rb +15 -2
- data/lib/jpsclient/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 115aab4e3f917e08c354c41dd60a057806ad4f6c2b55cbcfa9a157537ba16fff
|
|
4
|
+
data.tar.gz: 1b45cd59a951d59a8e78804820f3e4276585e634b5037a93356f396448fa5102
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b5dd156c92785c0f6dfac3a73db923c9a358b7e861e255309778ee9c7590408b8c5bc7a58596cccdf685432005c6c9a879647ea2af6f7c61d8536ca7542c3bc7
|
|
7
|
+
data.tar.gz: 54d389465f4e8e985ce8af7b8f6cb9442ffc30b26fb837eeebff9c986f027d6b06cd0f563943993031dcd10257ef78d5ae58d76d5bd82d31d574fa40f8c98ac8
|
data/lib/jpsclient/auth/token.rb
CHANGED
|
@@ -13,6 +13,7 @@ module JPSClient
|
|
|
13
13
|
class Token
|
|
14
14
|
attr_reader :token, :username
|
|
15
15
|
attr_reader :user_id, :permissions, :lark_user_id, :tenant_manager
|
|
16
|
+
attr_reader :expires_at, :created_at
|
|
16
17
|
|
|
17
18
|
def initialize(config)
|
|
18
19
|
@config = config
|
|
@@ -39,6 +40,8 @@ module JPSClient
|
|
|
39
40
|
@permissions = nil
|
|
40
41
|
@lark_user_id = nil
|
|
41
42
|
@tenant_manager = false
|
|
43
|
+
@expires_at = nil
|
|
44
|
+
@created_at = nil
|
|
42
45
|
|
|
43
46
|
# 调试模式
|
|
44
47
|
@verbose = ENV['PINDO_DEBUG'] == 'true'
|
|
@@ -72,6 +75,8 @@ module JPSClient
|
|
|
72
75
|
@permissions = token_data['permissions']
|
|
73
76
|
@lark_user_id = token_data['lark_user_id']
|
|
74
77
|
@tenant_manager = token_data.key?('tenant_manager') ? token_data['tenant_manager'] : false
|
|
78
|
+
@expires_at = token_data['expires_at']
|
|
79
|
+
@created_at = token_data['created_at']
|
|
75
80
|
|
|
76
81
|
# 旧版 token 文件缺少 user_id,视为无效,需重新登录获取完整字段
|
|
77
82
|
unless @token && @user_id
|
|
@@ -100,6 +105,8 @@ module JPSClient
|
|
|
100
105
|
@permissions = token_data['permissions']
|
|
101
106
|
@lark_user_id = token_data['lark_user_id']
|
|
102
107
|
@tenant_manager = token_data.key?('tenant_manager') ? token_data['tenant_manager'] : false
|
|
108
|
+
@created_at = Time.now.to_i
|
|
109
|
+
@expires_at = @created_at + 6 * 24 * 60 * 60 # 6天后过期
|
|
103
110
|
|
|
104
111
|
# 确保目录存在
|
|
105
112
|
FileUtils.mkdir_p(@token_dir) unless Dir.exist?(@token_dir)
|
|
@@ -110,7 +117,9 @@ module JPSClient
|
|
|
110
117
|
'user_id' => @user_id,
|
|
111
118
|
'permissions' => @permissions,
|
|
112
119
|
'lark_user_id' => @lark_user_id,
|
|
113
|
-
'tenant_manager' => @tenant_manager
|
|
120
|
+
'tenant_manager' => @tenant_manager,
|
|
121
|
+
'expires_at' => @expires_at,
|
|
122
|
+
'created_at' => @created_at
|
|
114
123
|
}
|
|
115
124
|
|
|
116
125
|
# 根据是否有 AES 密钥决定加密方式
|
|
@@ -143,6 +152,8 @@ module JPSClient
|
|
|
143
152
|
@permissions = nil
|
|
144
153
|
@lark_user_id = nil
|
|
145
154
|
@tenant_manager = false
|
|
155
|
+
@expires_at = nil
|
|
156
|
+
@created_at = nil
|
|
146
157
|
|
|
147
158
|
FileUtils.rm_f(@token_file) if File.exist?(@token_file)
|
|
148
159
|
puts "✓ Token 已清除" if @verbose
|
|
@@ -158,7 +169,9 @@ module JPSClient
|
|
|
158
169
|
'user_id' => @user_id,
|
|
159
170
|
'permissions' => @permissions,
|
|
160
171
|
'lark_user_id' => @lark_user_id,
|
|
161
|
-
'tenant_manager' => @tenant_manager
|
|
172
|
+
'tenant_manager' => @tenant_manager,
|
|
173
|
+
'expires_at' => @expires_at,
|
|
174
|
+
'created_at' => @created_at
|
|
162
175
|
}
|
|
163
176
|
end
|
|
164
177
|
|
data/lib/jpsclient/version.rb
CHANGED