tencentcloud-sdk-ssm 1.0.200

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.
@@ -0,0 +1,1524 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Ssm
19
+ module V20190923
20
+ # CreateProductSecret请求参数结构体
21
+ class CreateProductSecretRequest < TencentCloud::Common::AbstractModel
22
+ # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。
23
+ # @type SecretName: String
24
+ # @param UserNamePrefix: 用户账号名前缀,由用户自行指定,长度限定在8个字符以内,
25
+ # 可选字符集包括:
26
+ # 数字字符:[0, 9],
27
+ # 小写字符:[a, z],
28
+ # 大写字符:[A, Z],
29
+ # 特殊字符(全英文符号):下划线(_),
30
+ # 前缀必须以大写或小写字母开头。
31
+ # @type UserNamePrefix: String
32
+ # @param ProductName: 凭据所绑定的云产品名称,如Mysql,可以通过DescribeSupportedProducts接口获取所支持的云产品名称。
33
+ # @type ProductName: String
34
+ # @param InstanceID: 云产品实例ID。
35
+ # @type InstanceID: String
36
+ # @param Domains: 账号的域名,IP形式,支持填入%。
37
+ # @type Domains: Array
38
+ # @param PrivilegesList: 将凭据与云产品实例绑定时,需要授予的权限列表。
39
+ # @type PrivilegesList: Array
40
+ # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。
41
+ # @type Description: String
42
+ # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。
43
+ # 如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。
44
+ # 您也可以指定在同region 下自行创建的KMS CMK进行加密。
45
+ # @type KmsKeyId: String
46
+ # @param Tags: 标签列表。
47
+ # @type Tags: Array
48
+ # @param RotationBeginTime: 用户自定义的开始轮转时间,格式:2006-01-02 15:04:05。
49
+ # 当EnableRotation为True时,此参数必填。
50
+ # @type RotationBeginTime: String
51
+ # @param EnableRotation: 是否开启轮转
52
+ # True -- 开启
53
+ # False -- 不开启
54
+ # 如果不指定,默认为False。
55
+ # @type EnableRotation: Boolean
56
+ # @param RotationFrequency: 轮转周期,以天为单位,默认为1天。
57
+ # @type RotationFrequency: Integer
58
+
59
+ attr_accessor :SecretName, :UserNamePrefix, :ProductName, :InstanceID, :Domains, :PrivilegesList, :Description, :KmsKeyId, :Tags, :RotationBeginTime, :EnableRotation, :RotationFrequency
60
+
61
+ def initialize(secretname=nil, usernameprefix=nil, productname=nil, instanceid=nil, domains=nil, privilegeslist=nil, description=nil, kmskeyid=nil, tags=nil, rotationbegintime=nil, enablerotation=nil, rotationfrequency=nil)
62
+ @SecretName = secretname
63
+ @UserNamePrefix = usernameprefix
64
+ @ProductName = productname
65
+ @InstanceID = instanceid
66
+ @Domains = domains
67
+ @PrivilegesList = privilegeslist
68
+ @Description = description
69
+ @KmsKeyId = kmskeyid
70
+ @Tags = tags
71
+ @RotationBeginTime = rotationbegintime
72
+ @EnableRotation = enablerotation
73
+ @RotationFrequency = rotationfrequency
74
+ end
75
+
76
+ def deserialize(params)
77
+ @SecretName = params['SecretName']
78
+ @UserNamePrefix = params['UserNamePrefix']
79
+ @ProductName = params['ProductName']
80
+ @InstanceID = params['InstanceID']
81
+ @Domains = params['Domains']
82
+ unless params['PrivilegesList'].nil?
83
+ @PrivilegesList = []
84
+ params['PrivilegesList'].each do |i|
85
+ productprivilegeunit_tmp = ProductPrivilegeUnit.new
86
+ productprivilegeunit_tmp.deserialize(i)
87
+ @PrivilegesList << productprivilegeunit_tmp
88
+ end
89
+ end
90
+ @Description = params['Description']
91
+ @KmsKeyId = params['KmsKeyId']
92
+ unless params['Tags'].nil?
93
+ @Tags = []
94
+ params['Tags'].each do |i|
95
+ tag_tmp = Tag.new
96
+ tag_tmp.deserialize(i)
97
+ @Tags << tag_tmp
98
+ end
99
+ end
100
+ @RotationBeginTime = params['RotationBeginTime']
101
+ @EnableRotation = params['EnableRotation']
102
+ @RotationFrequency = params['RotationFrequency']
103
+ end
104
+ end
105
+
106
+ # CreateProductSecret返回参数结构体
107
+ class CreateProductSecretResponse < TencentCloud::Common::AbstractModel
108
+ # @param SecretName: 创建的凭据名称。
109
+ # @type SecretName: String
110
+ # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误。
111
+ # 注意:此字段可能返回 null,表示取不到有效值。
112
+ # 注意:此字段可能返回 null,表示取不到有效值。
113
+ # @type TagCode: Integer
114
+ # @param TagMsg: 标签操作的返回信息。
115
+ # 注意:此字段可能返回 null,表示取不到有效值。
116
+ # @type TagMsg: String
117
+ # @param FlowID: 创建云产品凭据异步任务ID号。
118
+ # @type FlowID: Integer
119
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
120
+ # @type RequestId: String
121
+
122
+ attr_accessor :SecretName, :TagCode, :TagMsg, :FlowID, :RequestId
123
+
124
+ def initialize(secretname=nil, tagcode=nil, tagmsg=nil, flowid=nil, requestid=nil)
125
+ @SecretName = secretname
126
+ @TagCode = tagcode
127
+ @TagMsg = tagmsg
128
+ @FlowID = flowid
129
+ @RequestId = requestid
130
+ end
131
+
132
+ def deserialize(params)
133
+ @SecretName = params['SecretName']
134
+ @TagCode = params['TagCode']
135
+ @TagMsg = params['TagMsg']
136
+ @FlowID = params['FlowID']
137
+ @RequestId = params['RequestId']
138
+ end
139
+ end
140
+
141
+ # CreateSSHKeyPairSecret请求参数结构体
142
+ class CreateSSHKeyPairSecretRequest < TencentCloud::Common::AbstractModel
143
+ # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。
144
+ # @type SecretName: String
145
+ # @param ProjectId: 密钥对创建后所属的项目ID。
146
+ # @type ProjectId: Integer
147
+ # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。
148
+ # @type Description: String
149
+ # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。
150
+ # 如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。
151
+ # 您也可以指定在同region 下自行创建的KMS CMK进行加密。
152
+ # @type KmsKeyId: String
153
+ # @param Tags: 标签列表。
154
+ # @type Tags: Array
155
+
156
+ attr_accessor :SecretName, :ProjectId, :Description, :KmsKeyId, :Tags
157
+
158
+ def initialize(secretname=nil, projectid=nil, description=nil, kmskeyid=nil, tags=nil)
159
+ @SecretName = secretname
160
+ @ProjectId = projectid
161
+ @Description = description
162
+ @KmsKeyId = kmskeyid
163
+ @Tags = tags
164
+ end
165
+
166
+ def deserialize(params)
167
+ @SecretName = params['SecretName']
168
+ @ProjectId = params['ProjectId']
169
+ @Description = params['Description']
170
+ @KmsKeyId = params['KmsKeyId']
171
+ unless params['Tags'].nil?
172
+ @Tags = []
173
+ params['Tags'].each do |i|
174
+ tag_tmp = Tag.new
175
+ tag_tmp.deserialize(i)
176
+ @Tags << tag_tmp
177
+ end
178
+ end
179
+ end
180
+ end
181
+
182
+ # CreateSSHKeyPairSecret返回参数结构体
183
+ class CreateSSHKeyPairSecretResponse < TencentCloud::Common::AbstractModel
184
+ # @param SecretName: 创建的凭据名称。
185
+ # @type SecretName: String
186
+ # @param SSHKeyID: 创建的SSH密钥ID。
187
+ # @type SSHKeyID: String
188
+ # @param SSHKeyName: 创建的SSH密钥名称。
189
+ # @type SSHKeyName: String
190
+ # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误。
191
+ # 注意:此字段可能返回 null,表示取不到有效值。
192
+ # @type TagCode: Integer
193
+ # @param TagMsg: 标签操作的返回信息。
194
+ # 注意:此字段可能返回 null,表示取不到有效值。
195
+ # @type TagMsg: String
196
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
197
+ # @type RequestId: String
198
+
199
+ attr_accessor :SecretName, :SSHKeyID, :SSHKeyName, :TagCode, :TagMsg, :RequestId
200
+
201
+ def initialize(secretname=nil, sshkeyid=nil, sshkeyname=nil, tagcode=nil, tagmsg=nil, requestid=nil)
202
+ @SecretName = secretname
203
+ @SSHKeyID = sshkeyid
204
+ @SSHKeyName = sshkeyname
205
+ @TagCode = tagcode
206
+ @TagMsg = tagmsg
207
+ @RequestId = requestid
208
+ end
209
+
210
+ def deserialize(params)
211
+ @SecretName = params['SecretName']
212
+ @SSHKeyID = params['SSHKeyID']
213
+ @SSHKeyName = params['SSHKeyName']
214
+ @TagCode = params['TagCode']
215
+ @TagMsg = params['TagMsg']
216
+ @RequestId = params['RequestId']
217
+ end
218
+ end
219
+
220
+ # CreateSecret请求参数结构体
221
+ class CreateSecretRequest < TencentCloud::Common::AbstractModel
222
+ # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。
223
+ # @type SecretName: String
224
+ # @param VersionId: 凭据版本,查询凭据信息时需要根据SecretName 和 VersionId进行查询,最长64 字节,使用字母、数字或者 - _ . 的组合并且以字母或数字开头。
225
+ # @type VersionId: String
226
+ # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。
227
+ # @type Description: String
228
+ # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。您也可以指定在同region 下自行创建的KMS CMK进行加密。
229
+ # @type KmsKeyId: String
230
+ # @param SecretBinary: 二进制凭据信息base64编码后的明文。SecretBinary 和 SecretString 必须且只能设置一个,最大支持4096字节。
231
+ # @type SecretBinary: String
232
+ # @param SecretString: 文本类型凭据信息明文(不需要进行base64编码)。SecretBinary 和 SecretString 必须且只能设置一个,,最大支持4096字节。
233
+ # @type SecretString: String
234
+ # @param Tags: 标签列表
235
+ # @type Tags: Array
236
+
237
+ attr_accessor :SecretName, :VersionId, :Description, :KmsKeyId, :SecretBinary, :SecretString, :Tags
238
+
239
+ def initialize(secretname=nil, versionid=nil, description=nil, kmskeyid=nil, secretbinary=nil, secretstring=nil, tags=nil)
240
+ @SecretName = secretname
241
+ @VersionId = versionid
242
+ @Description = description
243
+ @KmsKeyId = kmskeyid
244
+ @SecretBinary = secretbinary
245
+ @SecretString = secretstring
246
+ @Tags = tags
247
+ end
248
+
249
+ def deserialize(params)
250
+ @SecretName = params['SecretName']
251
+ @VersionId = params['VersionId']
252
+ @Description = params['Description']
253
+ @KmsKeyId = params['KmsKeyId']
254
+ @SecretBinary = params['SecretBinary']
255
+ @SecretString = params['SecretString']
256
+ unless params['Tags'].nil?
257
+ @Tags = []
258
+ params['Tags'].each do |i|
259
+ tag_tmp = Tag.new
260
+ tag_tmp.deserialize(i)
261
+ @Tags << tag_tmp
262
+ end
263
+ end
264
+ end
265
+ end
266
+
267
+ # CreateSecret返回参数结构体
268
+ class CreateSecretResponse < TencentCloud::Common::AbstractModel
269
+ # @param SecretName: 新创建的凭据名称。
270
+ # @type SecretName: String
271
+ # @param VersionId: 新创建的凭据版本。
272
+ # @type VersionId: String
273
+ # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误
274
+ # 注意:此字段可能返回 null,表示取不到有效值。
275
+ # @type TagCode: Integer
276
+ # @param TagMsg: 标签操作的返回信息
277
+ # 注意:此字段可能返回 null,表示取不到有效值。
278
+ # @type TagMsg: String
279
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
280
+ # @type RequestId: String
281
+
282
+ attr_accessor :SecretName, :VersionId, :TagCode, :TagMsg, :RequestId
283
+
284
+ def initialize(secretname=nil, versionid=nil, tagcode=nil, tagmsg=nil, requestid=nil)
285
+ @SecretName = secretname
286
+ @VersionId = versionid
287
+ @TagCode = tagcode
288
+ @TagMsg = tagmsg
289
+ @RequestId = requestid
290
+ end
291
+
292
+ def deserialize(params)
293
+ @SecretName = params['SecretName']
294
+ @VersionId = params['VersionId']
295
+ @TagCode = params['TagCode']
296
+ @TagMsg = params['TagMsg']
297
+ @RequestId = params['RequestId']
298
+ end
299
+ end
300
+
301
+ # DeleteSecret请求参数结构体
302
+ class DeleteSecretRequest < TencentCloud::Common::AbstractModel
303
+ # @param SecretName: 指定需要删除的凭据名称。
304
+ # @type SecretName: String
305
+ # @param RecoveryWindowInDays: 指定计划删除日期,单位(天),0(默认)表示立即删除, 1-30 表示预留的天数,超出该日期之后彻底删除。
306
+ # 当凭据类型为SSH密钥对凭据时,此字段只能取值只能为0。
307
+ # @type RecoveryWindowInDays: Integer
308
+ # @param CleanSSHKey: 当凭据类型为SSH密钥对凭据时,此字段有效,取值:
309
+ # True -- 表示不仅仅清理此凭据中存储的SSH密钥信息,还会将SSH密钥对从CVM侧进行清理。注意,如果SSH密钥此时绑定了CVM实例,那么会清理失败。
310
+ # False -- 表示仅仅清理此凭据中存储的SSH密钥信息,不在CVM进侧进行清理。
311
+ # @type CleanSSHKey: Boolean
312
+
313
+ attr_accessor :SecretName, :RecoveryWindowInDays, :CleanSSHKey
314
+
315
+ def initialize(secretname=nil, recoverywindowindays=nil, cleansshkey=nil)
316
+ @SecretName = secretname
317
+ @RecoveryWindowInDays = recoverywindowindays
318
+ @CleanSSHKey = cleansshkey
319
+ end
320
+
321
+ def deserialize(params)
322
+ @SecretName = params['SecretName']
323
+ @RecoveryWindowInDays = params['RecoveryWindowInDays']
324
+ @CleanSSHKey = params['CleanSSHKey']
325
+ end
326
+ end
327
+
328
+ # DeleteSecret返回参数结构体
329
+ class DeleteSecretResponse < TencentCloud::Common::AbstractModel
330
+ # @param SecretName: 指定删除的凭据名称。
331
+ # @type SecretName: String
332
+ # @param DeleteTime: 凭据删除的日期,unix时间戳。
333
+ # @type DeleteTime: Integer
334
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
335
+ # @type RequestId: String
336
+
337
+ attr_accessor :SecretName, :DeleteTime, :RequestId
338
+
339
+ def initialize(secretname=nil, deletetime=nil, requestid=nil)
340
+ @SecretName = secretname
341
+ @DeleteTime = deletetime
342
+ @RequestId = requestid
343
+ end
344
+
345
+ def deserialize(params)
346
+ @SecretName = params['SecretName']
347
+ @DeleteTime = params['DeleteTime']
348
+ @RequestId = params['RequestId']
349
+ end
350
+ end
351
+
352
+ # DeleteSecretVersion请求参数结构体
353
+ class DeleteSecretVersionRequest < TencentCloud::Common::AbstractModel
354
+ # @param SecretName: 指定凭据名称。
355
+ # @type SecretName: String
356
+ # @param VersionId: 指定该名称下需要删除的凭据的版本号。
357
+ # @type VersionId: String
358
+
359
+ attr_accessor :SecretName, :VersionId
360
+
361
+ def initialize(secretname=nil, versionid=nil)
362
+ @SecretName = secretname
363
+ @VersionId = versionid
364
+ end
365
+
366
+ def deserialize(params)
367
+ @SecretName = params['SecretName']
368
+ @VersionId = params['VersionId']
369
+ end
370
+ end
371
+
372
+ # DeleteSecretVersion返回参数结构体
373
+ class DeleteSecretVersionResponse < TencentCloud::Common::AbstractModel
374
+ # @param SecretName: 凭据名称。
375
+ # @type SecretName: String
376
+ # @param VersionId: 凭据版本号。
377
+ # @type VersionId: String
378
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
379
+ # @type RequestId: String
380
+
381
+ attr_accessor :SecretName, :VersionId, :RequestId
382
+
383
+ def initialize(secretname=nil, versionid=nil, requestid=nil)
384
+ @SecretName = secretname
385
+ @VersionId = versionid
386
+ @RequestId = requestid
387
+ end
388
+
389
+ def deserialize(params)
390
+ @SecretName = params['SecretName']
391
+ @VersionId = params['VersionId']
392
+ @RequestId = params['RequestId']
393
+ end
394
+ end
395
+
396
+ # DescribeAsyncRequestInfo请求参数结构体
397
+ class DescribeAsyncRequestInfoRequest < TencentCloud::Common::AbstractModel
398
+ # @param FlowID: 异步任务ID号。
399
+ # @type FlowID: Integer
400
+
401
+ attr_accessor :FlowID
402
+
403
+ def initialize(flowid=nil)
404
+ @FlowID = flowid
405
+ end
406
+
407
+ def deserialize(params)
408
+ @FlowID = params['FlowID']
409
+ end
410
+ end
411
+
412
+ # DescribeAsyncRequestInfo返回参数结构体
413
+ class DescribeAsyncRequestInfoResponse < TencentCloud::Common::AbstractModel
414
+ # @param TaskStatus: 0:处理中,1:处理成功,2:处理失败
415
+ # @type TaskStatus: Integer
416
+ # @param Description: 任务描述信息。
417
+ # @type Description: String
418
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
419
+ # @type RequestId: String
420
+
421
+ attr_accessor :TaskStatus, :Description, :RequestId
422
+
423
+ def initialize(taskstatus=nil, description=nil, requestid=nil)
424
+ @TaskStatus = taskstatus
425
+ @Description = description
426
+ @RequestId = requestid
427
+ end
428
+
429
+ def deserialize(params)
430
+ @TaskStatus = params['TaskStatus']
431
+ @Description = params['Description']
432
+ @RequestId = params['RequestId']
433
+ end
434
+ end
435
+
436
+ # DescribeRotationDetail请求参数结构体
437
+ class DescribeRotationDetailRequest < TencentCloud::Common::AbstractModel
438
+ # @param SecretName: 指定需要获取凭据轮转详细信息的凭据名称。
439
+ # @type SecretName: String
440
+
441
+ attr_accessor :SecretName
442
+
443
+ def initialize(secretname=nil)
444
+ @SecretName = secretname
445
+ end
446
+
447
+ def deserialize(params)
448
+ @SecretName = params['SecretName']
449
+ end
450
+ end
451
+
452
+ # DescribeRotationDetail返回参数结构体
453
+ class DescribeRotationDetailResponse < TencentCloud::Common::AbstractModel
454
+ # @param EnableRotation: 否允许轮转,true表示开启轮转,false表示禁止轮转。
455
+ # @type EnableRotation: Boolean
456
+ # @param Frequency: 轮转的频率,以天为单位,默认为1天。
457
+ # 注意:此字段可能返回 null,表示取不到有效值。
458
+ # @type Frequency: Integer
459
+ # @param LatestRotateTime: 最近一次轮转的时间,显式可见的时间字符串,格式 2006-01-02 15:04:05。
460
+ # 注意:此字段可能返回 null,表示取不到有效值。
461
+ # @type LatestRotateTime: String
462
+ # @param NextRotateBeginTime: 下一次开始轮转的时间,显式可见的时间字符串,格式 2006-01-02 15:04:05。
463
+ # 注意:此字段可能返回 null,表示取不到有效值。
464
+ # @type NextRotateBeginTime: String
465
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
466
+ # @type RequestId: String
467
+
468
+ attr_accessor :EnableRotation, :Frequency, :LatestRotateTime, :NextRotateBeginTime, :RequestId
469
+
470
+ def initialize(enablerotation=nil, frequency=nil, latestrotatetime=nil, nextrotatebegintime=nil, requestid=nil)
471
+ @EnableRotation = enablerotation
472
+ @Frequency = frequency
473
+ @LatestRotateTime = latestrotatetime
474
+ @NextRotateBeginTime = nextrotatebegintime
475
+ @RequestId = requestid
476
+ end
477
+
478
+ def deserialize(params)
479
+ @EnableRotation = params['EnableRotation']
480
+ @Frequency = params['Frequency']
481
+ @LatestRotateTime = params['LatestRotateTime']
482
+ @NextRotateBeginTime = params['NextRotateBeginTime']
483
+ @RequestId = params['RequestId']
484
+ end
485
+ end
486
+
487
+ # DescribeRotationHistory请求参数结构体
488
+ class DescribeRotationHistoryRequest < TencentCloud::Common::AbstractModel
489
+ # @param SecretName: 指定需要获取凭据轮转历史的凭据名称。
490
+ # @type SecretName: String
491
+
492
+ attr_accessor :SecretName
493
+
494
+ def initialize(secretname=nil)
495
+ @SecretName = secretname
496
+ end
497
+
498
+ def deserialize(params)
499
+ @SecretName = params['SecretName']
500
+ end
501
+ end
502
+
503
+ # DescribeRotationHistory返回参数结构体
504
+ class DescribeRotationHistoryResponse < TencentCloud::Common::AbstractModel
505
+ # @param VersionIDs: 版本号列表。
506
+ # @type VersionIDs: Array
507
+ # @param TotalCount: 版本号个数,可以给用户展示的版本号个数上限为10个。
508
+ # @type TotalCount: Integer
509
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
510
+ # @type RequestId: String
511
+
512
+ attr_accessor :VersionIDs, :TotalCount, :RequestId
513
+
514
+ def initialize(versionids=nil, totalcount=nil, requestid=nil)
515
+ @VersionIDs = versionids
516
+ @TotalCount = totalcount
517
+ @RequestId = requestid
518
+ end
519
+
520
+ def deserialize(params)
521
+ @VersionIDs = params['VersionIDs']
522
+ @TotalCount = params['TotalCount']
523
+ @RequestId = params['RequestId']
524
+ end
525
+ end
526
+
527
+ # DescribeSecret请求参数结构体
528
+ class DescribeSecretRequest < TencentCloud::Common::AbstractModel
529
+ # @param SecretName: 指定需要获取凭据详细信息的凭据名称。
530
+ # @type SecretName: String
531
+
532
+ attr_accessor :SecretName
533
+
534
+ def initialize(secretname=nil)
535
+ @SecretName = secretname
536
+ end
537
+
538
+ def deserialize(params)
539
+ @SecretName = params['SecretName']
540
+ end
541
+ end
542
+
543
+ # DescribeSecret返回参数结构体
544
+ class DescribeSecretResponse < TencentCloud::Common::AbstractModel
545
+ # @param SecretName: 凭据名称。
546
+ # @type SecretName: String
547
+ # @param Description: 凭据描述信息。
548
+ # @type Description: String
549
+ # @param KmsKeyId: 用于加密的KMS CMK ID。
550
+ # @type KmsKeyId: String
551
+ # @param CreateUin: 创建者UIN。
552
+ # @type CreateUin: Integer
553
+ # @param Status: 凭据状态:Enabled、Disabled、PendingDelete, Creating, Failed。
554
+ # @type Status: String
555
+ # @param DeleteTime: 删除日期,uinx 时间戳,非计划删除状态的凭据为0。
556
+ # @type DeleteTime: Integer
557
+ # @param CreateTime: 创建日期。
558
+ # @type CreateTime: Integer
559
+ # @param SecretType: 0 -- 用户自定义凭据类型;1 -- 数据库凭据类型;2 -- SSH密钥对凭据类型。
560
+ # 注意:此字段可能返回 null,表示取不到有效值。
561
+ # @type SecretType: Integer
562
+ # @param ProductName: 云产品名称。
563
+ # 注意:此字段可能返回 null,表示取不到有效值。
564
+ # @type ProductName: String
565
+ # @param ResourceID: 云产品实例ID。
566
+ # 注意:此字段可能返回 null,表示取不到有效值。
567
+ # @type ResourceID: String
568
+ # @param RotationStatus: 是否开启轮转:True -- 开启轮转;False -- 禁止轮转。
569
+ # 注意:此字段可能返回 null,表示取不到有效值。
570
+ # @type RotationStatus: Boolean
571
+ # @param RotationFrequency: 轮转周期,默认以天为单位。
572
+ # 注意:此字段可能返回 null,表示取不到有效值。
573
+ # @type RotationFrequency: Integer
574
+ # @param ResourceName: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对凭据的名称。
575
+ # 注意:此字段可能返回 null,表示取不到有效值。
576
+ # @type ResourceName: String
577
+ # @param ProjectID: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所属的项目ID。
578
+ # 注意:此字段可能返回 null,表示取不到有效值。
579
+ # @type ProjectID: Integer
580
+ # @param AssociatedInstanceIDs: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所关联的CVM实例ID。
581
+ # 注意:此字段可能返回 null,表示取不到有效值。
582
+ # @type AssociatedInstanceIDs: Array
583
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
584
+ # @type RequestId: String
585
+
586
+ attr_accessor :SecretName, :Description, :KmsKeyId, :CreateUin, :Status, :DeleteTime, :CreateTime, :SecretType, :ProductName, :ResourceID, :RotationStatus, :RotationFrequency, :ResourceName, :ProjectID, :AssociatedInstanceIDs, :RequestId
587
+
588
+ def initialize(secretname=nil, description=nil, kmskeyid=nil, createuin=nil, status=nil, deletetime=nil, createtime=nil, secrettype=nil, productname=nil, resourceid=nil, rotationstatus=nil, rotationfrequency=nil, resourcename=nil, projectid=nil, associatedinstanceids=nil, requestid=nil)
589
+ @SecretName = secretname
590
+ @Description = description
591
+ @KmsKeyId = kmskeyid
592
+ @CreateUin = createuin
593
+ @Status = status
594
+ @DeleteTime = deletetime
595
+ @CreateTime = createtime
596
+ @SecretType = secrettype
597
+ @ProductName = productname
598
+ @ResourceID = resourceid
599
+ @RotationStatus = rotationstatus
600
+ @RotationFrequency = rotationfrequency
601
+ @ResourceName = resourcename
602
+ @ProjectID = projectid
603
+ @AssociatedInstanceIDs = associatedinstanceids
604
+ @RequestId = requestid
605
+ end
606
+
607
+ def deserialize(params)
608
+ @SecretName = params['SecretName']
609
+ @Description = params['Description']
610
+ @KmsKeyId = params['KmsKeyId']
611
+ @CreateUin = params['CreateUin']
612
+ @Status = params['Status']
613
+ @DeleteTime = params['DeleteTime']
614
+ @CreateTime = params['CreateTime']
615
+ @SecretType = params['SecretType']
616
+ @ProductName = params['ProductName']
617
+ @ResourceID = params['ResourceID']
618
+ @RotationStatus = params['RotationStatus']
619
+ @RotationFrequency = params['RotationFrequency']
620
+ @ResourceName = params['ResourceName']
621
+ @ProjectID = params['ProjectID']
622
+ @AssociatedInstanceIDs = params['AssociatedInstanceIDs']
623
+ @RequestId = params['RequestId']
624
+ end
625
+ end
626
+
627
+ # DescribeSupportedProducts请求参数结构体
628
+ class DescribeSupportedProductsRequest < TencentCloud::Common::AbstractModel
629
+
630
+
631
+ def initialize()
632
+ end
633
+
634
+ def deserialize(params)
635
+ end
636
+ end
637
+
638
+ # DescribeSupportedProducts返回参数结构体
639
+ class DescribeSupportedProductsResponse < TencentCloud::Common::AbstractModel
640
+ # @param Products: 支持的产品列表。
641
+ # @type Products: Array
642
+ # @param TotalCount: 支持的产品个数
643
+ # @type TotalCount: Integer
644
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
645
+ # @type RequestId: String
646
+
647
+ attr_accessor :Products, :TotalCount, :RequestId
648
+
649
+ def initialize(products=nil, totalcount=nil, requestid=nil)
650
+ @Products = products
651
+ @TotalCount = totalcount
652
+ @RequestId = requestid
653
+ end
654
+
655
+ def deserialize(params)
656
+ @Products = params['Products']
657
+ @TotalCount = params['TotalCount']
658
+ @RequestId = params['RequestId']
659
+ end
660
+ end
661
+
662
+ # DisableSecret请求参数结构体
663
+ class DisableSecretRequest < TencentCloud::Common::AbstractModel
664
+ # @param SecretName: 指定停用的凭据名称。
665
+ # @type SecretName: String
666
+
667
+ attr_accessor :SecretName
668
+
669
+ def initialize(secretname=nil)
670
+ @SecretName = secretname
671
+ end
672
+
673
+ def deserialize(params)
674
+ @SecretName = params['SecretName']
675
+ end
676
+ end
677
+
678
+ # DisableSecret返回参数结构体
679
+ class DisableSecretResponse < TencentCloud::Common::AbstractModel
680
+ # @param SecretName: 停用的凭据名称。
681
+ # @type SecretName: String
682
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
683
+ # @type RequestId: String
684
+
685
+ attr_accessor :SecretName, :RequestId
686
+
687
+ def initialize(secretname=nil, requestid=nil)
688
+ @SecretName = secretname
689
+ @RequestId = requestid
690
+ end
691
+
692
+ def deserialize(params)
693
+ @SecretName = params['SecretName']
694
+ @RequestId = params['RequestId']
695
+ end
696
+ end
697
+
698
+ # EnableSecret请求参数结构体
699
+ class EnableSecretRequest < TencentCloud::Common::AbstractModel
700
+ # @param SecretName: 指定启用凭据的名称。
701
+ # @type SecretName: String
702
+
703
+ attr_accessor :SecretName
704
+
705
+ def initialize(secretname=nil)
706
+ @SecretName = secretname
707
+ end
708
+
709
+ def deserialize(params)
710
+ @SecretName = params['SecretName']
711
+ end
712
+ end
713
+
714
+ # EnableSecret返回参数结构体
715
+ class EnableSecretResponse < TencentCloud::Common::AbstractModel
716
+ # @param SecretName: 启用的凭据名称。
717
+ # @type SecretName: String
718
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
719
+ # @type RequestId: String
720
+
721
+ attr_accessor :SecretName, :RequestId
722
+
723
+ def initialize(secretname=nil, requestid=nil)
724
+ @SecretName = secretname
725
+ @RequestId = requestid
726
+ end
727
+
728
+ def deserialize(params)
729
+ @SecretName = params['SecretName']
730
+ @RequestId = params['RequestId']
731
+ end
732
+ end
733
+
734
+ # GetRegions请求参数结构体
735
+ class GetRegionsRequest < TencentCloud::Common::AbstractModel
736
+
737
+
738
+ def initialize()
739
+ end
740
+
741
+ def deserialize(params)
742
+ end
743
+ end
744
+
745
+ # GetRegions返回参数结构体
746
+ class GetRegionsResponse < TencentCloud::Common::AbstractModel
747
+ # @param Regions: region列表。
748
+ # @type Regions: Array
749
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
750
+ # @type RequestId: String
751
+
752
+ attr_accessor :Regions, :RequestId
753
+
754
+ def initialize(regions=nil, requestid=nil)
755
+ @Regions = regions
756
+ @RequestId = requestid
757
+ end
758
+
759
+ def deserialize(params)
760
+ @Regions = params['Regions']
761
+ @RequestId = params['RequestId']
762
+ end
763
+ end
764
+
765
+ # GetSSHKeyPairValue请求参数结构体
766
+ class GetSSHKeyPairValueRequest < TencentCloud::Common::AbstractModel
767
+ # @param SecretName: 凭据名称,此凭据只能为SSH密钥对凭据类型。
768
+ # @type SecretName: String
769
+ # @param SSHKeyId: 密钥对ID,是云服务器中密钥对的唯一标识。
770
+ # @type SSHKeyId: String
771
+
772
+ attr_accessor :SecretName, :SSHKeyId
773
+
774
+ def initialize(secretname=nil, sshkeyid=nil)
775
+ @SecretName = secretname
776
+ @SSHKeyId = sshkeyid
777
+ end
778
+
779
+ def deserialize(params)
780
+ @SecretName = params['SecretName']
781
+ @SSHKeyId = params['SSHKeyId']
782
+ end
783
+ end
784
+
785
+ # GetSSHKeyPairValue返回参数结构体
786
+ class GetSSHKeyPairValueResponse < TencentCloud::Common::AbstractModel
787
+ # @param SSHKeyID: SSH密钥对ID。
788
+ # @type SSHKeyID: String
789
+ # @param PublicKey: 公钥明文,使用base64编码。
790
+ # @type PublicKey: String
791
+ # @param PrivateKey: 私钥明文,使用base64编码
792
+ # @type PrivateKey: String
793
+ # @param ProjectID: 此密钥对所属的项目ID。
794
+ # @type ProjectID: Integer
795
+ # @param SSHKeyDescription: SSH密钥对的描述信息。
796
+ # 用户可以在CVM侧控制台对密钥对的描述信息进行修改。
797
+ # @type SSHKeyDescription: String
798
+ # @param SSHKeyName: SSH密钥对的名称。
799
+ # 用户可以在CVM侧控制台对密钥对的名称进行修改。
800
+ # @type SSHKeyName: String
801
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
802
+ # @type RequestId: String
803
+
804
+ attr_accessor :SSHKeyID, :PublicKey, :PrivateKey, :ProjectID, :SSHKeyDescription, :SSHKeyName, :RequestId
805
+
806
+ def initialize(sshkeyid=nil, publickey=nil, privatekey=nil, projectid=nil, sshkeydescription=nil, sshkeyname=nil, requestid=nil)
807
+ @SSHKeyID = sshkeyid
808
+ @PublicKey = publickey
809
+ @PrivateKey = privatekey
810
+ @ProjectID = projectid
811
+ @SSHKeyDescription = sshkeydescription
812
+ @SSHKeyName = sshkeyname
813
+ @RequestId = requestid
814
+ end
815
+
816
+ def deserialize(params)
817
+ @SSHKeyID = params['SSHKeyID']
818
+ @PublicKey = params['PublicKey']
819
+ @PrivateKey = params['PrivateKey']
820
+ @ProjectID = params['ProjectID']
821
+ @SSHKeyDescription = params['SSHKeyDescription']
822
+ @SSHKeyName = params['SSHKeyName']
823
+ @RequestId = params['RequestId']
824
+ end
825
+ end
826
+
827
+ # GetSecretValue请求参数结构体
828
+ class GetSecretValueRequest < TencentCloud::Common::AbstractModel
829
+ # @param SecretName: 指定凭据的名称。
830
+ # @type SecretName: String
831
+ # @param VersionId: 指定对应凭据的版本号。
832
+ # 对于云产品凭据如Mysql凭据,通过指定凭据名称和历史版本号来获取历史轮转凭据的明文信息,如果要获取当前正在使用的凭据版本的明文,需要将版本号指定为:SSM_Current。
833
+ # @type VersionId: String
834
+
835
+ attr_accessor :SecretName, :VersionId
836
+
837
+ def initialize(secretname=nil, versionid=nil)
838
+ @SecretName = secretname
839
+ @VersionId = versionid
840
+ end
841
+
842
+ def deserialize(params)
843
+ @SecretName = params['SecretName']
844
+ @VersionId = params['VersionId']
845
+ end
846
+ end
847
+
848
+ # GetSecretValue返回参数结构体
849
+ class GetSecretValueResponse < TencentCloud::Common::AbstractModel
850
+ # @param SecretName: 凭据的名称。
851
+ # @type SecretName: String
852
+ # @param VersionId: 该凭据对应的版本号。
853
+ # @type VersionId: String
854
+ # @param SecretBinary: 在创建凭据(CreateSecret)时,如果指定的是二进制数据,则该字段为返回结果,并且使用base64进行编码,应用方需要进行base64解码后获取原始数据。
855
+ # SecretBinary和SecretString只有一个不为空。
856
+ # @type SecretBinary: String
857
+ # @param SecretString: 在创建凭据(CreateSecret)时,如果指定的是普通文本数据,则该字段为返回结果。
858
+ # SecretBinary和SecretString只有一个不为空。
859
+ # @type SecretString: String
860
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
861
+ # @type RequestId: String
862
+
863
+ attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString, :RequestId
864
+
865
+ def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil, requestid=nil)
866
+ @SecretName = secretname
867
+ @VersionId = versionid
868
+ @SecretBinary = secretbinary
869
+ @SecretString = secretstring
870
+ @RequestId = requestid
871
+ end
872
+
873
+ def deserialize(params)
874
+ @SecretName = params['SecretName']
875
+ @VersionId = params['VersionId']
876
+ @SecretBinary = params['SecretBinary']
877
+ @SecretString = params['SecretString']
878
+ @RequestId = params['RequestId']
879
+ end
880
+ end
881
+
882
+ # GetServiceStatus请求参数结构体
883
+ class GetServiceStatusRequest < TencentCloud::Common::AbstractModel
884
+
885
+
886
+ def initialize()
887
+ end
888
+
889
+ def deserialize(params)
890
+ end
891
+ end
892
+
893
+ # GetServiceStatus返回参数结构体
894
+ class GetServiceStatusResponse < TencentCloud::Common::AbstractModel
895
+ # @param ServiceEnabled: true表示服务已开通,false 表示服务尚未开通。
896
+ # @type ServiceEnabled: Boolean
897
+ # @param InvalidType: 服务不可用类型: 0-未购买,1-正常, 2-欠费停服, 3-资源释放。
898
+ # @type InvalidType: Integer
899
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
900
+ # @type RequestId: String
901
+
902
+ attr_accessor :ServiceEnabled, :InvalidType, :RequestId
903
+
904
+ def initialize(serviceenabled=nil, invalidtype=nil, requestid=nil)
905
+ @ServiceEnabled = serviceenabled
906
+ @InvalidType = invalidtype
907
+ @RequestId = requestid
908
+ end
909
+
910
+ def deserialize(params)
911
+ @ServiceEnabled = params['ServiceEnabled']
912
+ @InvalidType = params['InvalidType']
913
+ @RequestId = params['RequestId']
914
+ end
915
+ end
916
+
917
+ # ListSecretVersionIds请求参数结构体
918
+ class ListSecretVersionIdsRequest < TencentCloud::Common::AbstractModel
919
+ # @param SecretName: 凭据名称。
920
+ # @type SecretName: String
921
+
922
+ attr_accessor :SecretName
923
+
924
+ def initialize(secretname=nil)
925
+ @SecretName = secretname
926
+ end
927
+
928
+ def deserialize(params)
929
+ @SecretName = params['SecretName']
930
+ end
931
+ end
932
+
933
+ # ListSecretVersionIds返回参数结构体
934
+ class ListSecretVersionIdsResponse < TencentCloud::Common::AbstractModel
935
+ # @param SecretName: 凭据名称。
936
+ # @type SecretName: String
937
+ # @param Versions: VersionId列表。
938
+ # 注意:此字段可能返回 null,表示取不到有效值。
939
+ # @type Versions: Array
940
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
941
+ # @type RequestId: String
942
+
943
+ attr_accessor :SecretName, :Versions, :RequestId
944
+
945
+ def initialize(secretname=nil, versions=nil, requestid=nil)
946
+ @SecretName = secretname
947
+ @Versions = versions
948
+ @RequestId = requestid
949
+ end
950
+
951
+ def deserialize(params)
952
+ @SecretName = params['SecretName']
953
+ unless params['Versions'].nil?
954
+ @Versions = []
955
+ params['Versions'].each do |i|
956
+ versioninfo_tmp = VersionInfo.new
957
+ versioninfo_tmp.deserialize(i)
958
+ @Versions << versioninfo_tmp
959
+ end
960
+ end
961
+ @RequestId = params['RequestId']
962
+ end
963
+ end
964
+
965
+ # ListSecrets请求参数结构体
966
+ class ListSecretsRequest < TencentCloud::Common::AbstractModel
967
+ # @param Offset: 查询列表的起始位置,以0开始,不设置默认为0。
968
+ # @type Offset: Integer
969
+ # @param Limit: 单次查询返回的最大数量,0或不设置则使用默认值 20。
970
+ # @type Limit: Integer
971
+ # @param OrderType: 根据创建时间的排序方式,0或者不设置则使用降序排序, 1 表示升序排序。
972
+ # @type OrderType: Integer
973
+ # @param State: 根据凭据状态进行过滤。
974
+ # 默认为0表示查询全部。
975
+ # 1 -- 表示查询Enabled 凭据列表。
976
+ # 2 -- 表示查询Disabled 凭据列表。
977
+ # 3 -- 表示查询PendingDelete 凭据列表。
978
+ # 4 -- 表示PendingCreate。
979
+ # 5 -- 表示CreateFailed。
980
+ # 其中状态PendingCreate和CreateFailed只有在SecretType为云产品凭据时生效
981
+ # @type State: Integer
982
+ # @param SearchSecretName: 根据凭据名称进行过滤,为空表示不过滤。
983
+ # @type SearchSecretName: String
984
+ # @param TagFilters: 标签过滤条件。
985
+ # @type TagFilters: Array
986
+ # @param SecretType: 0 -- 表示用户自定义凭据,默认为0。
987
+ # 1 -- 表示用户云产品凭据。
988
+ # 2 -- 表示SSH密钥对凭据。
989
+ # @type SecretType: Integer
990
+ # @param ProductName: 此参数仅在SecretType参数值为1时生效,
991
+ # 当SecretType值为1时:
992
+ # 如果ProductName值为空,则表示查询所有类型的云产品凭据
993
+ # 如果ProductName值为Mysql,则表示查询Mysql数据库凭据
994
+ # 如果ProductName值为Tdsql-mysql,则表示查询Tdsql(Mysql版本)的凭据
995
+ # @type ProductName: String
996
+
997
+ attr_accessor :Offset, :Limit, :OrderType, :State, :SearchSecretName, :TagFilters, :SecretType, :ProductName
998
+
999
+ def initialize(offset=nil, limit=nil, ordertype=nil, state=nil, searchsecretname=nil, tagfilters=nil, secrettype=nil, productname=nil)
1000
+ @Offset = offset
1001
+ @Limit = limit
1002
+ @OrderType = ordertype
1003
+ @State = state
1004
+ @SearchSecretName = searchsecretname
1005
+ @TagFilters = tagfilters
1006
+ @SecretType = secrettype
1007
+ @ProductName = productname
1008
+ end
1009
+
1010
+ def deserialize(params)
1011
+ @Offset = params['Offset']
1012
+ @Limit = params['Limit']
1013
+ @OrderType = params['OrderType']
1014
+ @State = params['State']
1015
+ @SearchSecretName = params['SearchSecretName']
1016
+ unless params['TagFilters'].nil?
1017
+ @TagFilters = []
1018
+ params['TagFilters'].each do |i|
1019
+ tagfilter_tmp = TagFilter.new
1020
+ tagfilter_tmp.deserialize(i)
1021
+ @TagFilters << tagfilter_tmp
1022
+ end
1023
+ end
1024
+ @SecretType = params['SecretType']
1025
+ @ProductName = params['ProductName']
1026
+ end
1027
+ end
1028
+
1029
+ # ListSecrets返回参数结构体
1030
+ class ListSecretsResponse < TencentCloud::Common::AbstractModel
1031
+ # @param TotalCount: 根据State和SearchSecretName 筛选的凭据总数。
1032
+ # @type TotalCount: Integer
1033
+ # @param SecretMetadatas: 返回凭据信息列表。
1034
+ # @type SecretMetadatas: Array
1035
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1036
+ # @type RequestId: String
1037
+
1038
+ attr_accessor :TotalCount, :SecretMetadatas, :RequestId
1039
+
1040
+ def initialize(totalcount=nil, secretmetadatas=nil, requestid=nil)
1041
+ @TotalCount = totalcount
1042
+ @SecretMetadatas = secretmetadatas
1043
+ @RequestId = requestid
1044
+ end
1045
+
1046
+ def deserialize(params)
1047
+ @TotalCount = params['TotalCount']
1048
+ unless params['SecretMetadatas'].nil?
1049
+ @SecretMetadatas = []
1050
+ params['SecretMetadatas'].each do |i|
1051
+ secretmetadata_tmp = SecretMetadata.new
1052
+ secretmetadata_tmp.deserialize(i)
1053
+ @SecretMetadatas << secretmetadata_tmp
1054
+ end
1055
+ end
1056
+ @RequestId = params['RequestId']
1057
+ end
1058
+ end
1059
+
1060
+ # 凭据关联产品时被赋予的权限
1061
+ class ProductPrivilegeUnit < TencentCloud::Common::AbstractModel
1062
+ # @param PrivilegeName: 权限名称,当前可选:
1063
+ # GlobalPrivileges
1064
+ # DatabasePrivileges
1065
+ # TablePrivileges
1066
+ # ColumnPrivileges
1067
+
1068
+ # 当权限为DatabasePrivileges时,必须通过参数Database指定数据库名;
1069
+
1070
+ # 当权限为TablePrivileges时,必须通过参数Database和TableName指定数据库名以及数据库中的表名;
1071
+
1072
+ # 当权限为ColumnPrivileges时,必须通过参数Database、TableName和CoulmnName指定数据库、数据库中的表名以及表中的列名。
1073
+ # @type PrivilegeName: String
1074
+ # @param Privileges: 权限列表。
1075
+ # 对于Mysql产品来说,可选权限值为:
1076
+
1077
+ # 1. GlobalPrivileges 中权限的可选值为:"SELECT","INSERT","UPDATE","DELETE","CREATE", "PROCESS", "DROP","REFERENCES","INDEX","ALTER","SHOW DATABASES","CREATE TEMPORARY TABLES","LOCK TABLES","EXECUTE","CREATE VIEW","SHOW VIEW","CREATE ROUTINE","ALTER ROUTINE","EVENT","TRIGGER"。
1078
+ # 注意,不传该参数表示清除该权限。
1079
+
1080
+ # 2. DatabasePrivileges 权限的可选值为:"SELECT","INSERT","UPDATE","DELETE","CREATE", "DROP","REFERENCES","INDEX","ALTER","CREATE TEMPORARY TABLES","LOCK TABLES","EXECUTE","CREATE VIEW","SHOW VIEW","CREATE ROUTINE","ALTER ROUTINE","EVENT","TRIGGER"。
1081
+ # 注意,不传该参数表示清除该权限。
1082
+
1083
+ # 3. TablePrivileges 权限的可选值为:权限的可选值为:"SELECT","INSERT","UPDATE","DELETE","CREATE", "DROP","REFERENCES","INDEX","ALTER","CREATE VIEW","SHOW VIEW", "TRIGGER"。
1084
+ # 注意,不传该参数表示清除该权限。
1085
+
1086
+ # 4. ColumnPrivileges 权限的可选值为:"SELECT","INSERT","UPDATE","REFERENCES"。
1087
+ # 注意,不传该参数表示清除该权限。
1088
+ # @type Privileges: Array
1089
+ # @param Database: 仅当PrivilegeName为DatabasePrivileges时这个值才有效。
1090
+ # @type Database: String
1091
+ # @param TableName: 仅当PrivilegeName为TablePrivileges时这个值才有效,并且此时需要填充Database显式指明所在的数据库实例。
1092
+ # @type TableName: String
1093
+ # @param ColumnName: 仅当PrivilegeName为ColumnPrivileges时这个值才生效,并且此时必须填充:
1094
+ # Database - 显式指明所在的数据库实例。
1095
+ # TableName - 显式指明所在表
1096
+ # @type ColumnName: String
1097
+
1098
+ attr_accessor :PrivilegeName, :Privileges, :Database, :TableName, :ColumnName
1099
+
1100
+ def initialize(privilegename=nil, privileges=nil, database=nil, tablename=nil, columnname=nil)
1101
+ @PrivilegeName = privilegename
1102
+ @Privileges = privileges
1103
+ @Database = database
1104
+ @TableName = tablename
1105
+ @ColumnName = columnname
1106
+ end
1107
+
1108
+ def deserialize(params)
1109
+ @PrivilegeName = params['PrivilegeName']
1110
+ @Privileges = params['Privileges']
1111
+ @Database = params['Database']
1112
+ @TableName = params['TableName']
1113
+ @ColumnName = params['ColumnName']
1114
+ end
1115
+ end
1116
+
1117
+ # PutSecretValue请求参数结构体
1118
+ class PutSecretValueRequest < TencentCloud::Common::AbstractModel
1119
+ # @param SecretName: 指定需要增加版本的凭据名称。
1120
+ # @type SecretName: String
1121
+ # @param VersionId: 指定新增加的版本号,最长64 字节,使用字母、数字或者 - _ . 的组合并且以字母或数字开头。
1122
+ # @type VersionId: String
1123
+ # @param SecretBinary: 二进制凭据信息,使用base64编码。
1124
+ # SecretBinary 和 SecretString 必须且只能设置一个。
1125
+ # @type SecretBinary: String
1126
+ # @param SecretString: 文本类型凭据信息明文(不需要进行base64编码),SecretBinary 和 SecretString 必须且只能设置一个。
1127
+ # @type SecretString: String
1128
+
1129
+ attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString
1130
+
1131
+ def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil)
1132
+ @SecretName = secretname
1133
+ @VersionId = versionid
1134
+ @SecretBinary = secretbinary
1135
+ @SecretString = secretstring
1136
+ end
1137
+
1138
+ def deserialize(params)
1139
+ @SecretName = params['SecretName']
1140
+ @VersionId = params['VersionId']
1141
+ @SecretBinary = params['SecretBinary']
1142
+ @SecretString = params['SecretString']
1143
+ end
1144
+ end
1145
+
1146
+ # PutSecretValue返回参数结构体
1147
+ class PutSecretValueResponse < TencentCloud::Common::AbstractModel
1148
+ # @param SecretName: 凭据名称。
1149
+ # @type SecretName: String
1150
+ # @param VersionId: 新增加的版本号。
1151
+ # @type VersionId: String
1152
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1153
+ # @type RequestId: String
1154
+
1155
+ attr_accessor :SecretName, :VersionId, :RequestId
1156
+
1157
+ def initialize(secretname=nil, versionid=nil, requestid=nil)
1158
+ @SecretName = secretname
1159
+ @VersionId = versionid
1160
+ @RequestId = requestid
1161
+ end
1162
+
1163
+ def deserialize(params)
1164
+ @SecretName = params['SecretName']
1165
+ @VersionId = params['VersionId']
1166
+ @RequestId = params['RequestId']
1167
+ end
1168
+ end
1169
+
1170
+ # RestoreSecret请求参数结构体
1171
+ class RestoreSecretRequest < TencentCloud::Common::AbstractModel
1172
+ # @param SecretName: 指定需要恢复的凭据名称。
1173
+ # @type SecretName: String
1174
+
1175
+ attr_accessor :SecretName
1176
+
1177
+ def initialize(secretname=nil)
1178
+ @SecretName = secretname
1179
+ end
1180
+
1181
+ def deserialize(params)
1182
+ @SecretName = params['SecretName']
1183
+ end
1184
+ end
1185
+
1186
+ # RestoreSecret返回参数结构体
1187
+ class RestoreSecretResponse < TencentCloud::Common::AbstractModel
1188
+ # @param SecretName: 凭据名称。
1189
+ # @type SecretName: String
1190
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1191
+ # @type RequestId: String
1192
+
1193
+ attr_accessor :SecretName, :RequestId
1194
+
1195
+ def initialize(secretname=nil, requestid=nil)
1196
+ @SecretName = secretname
1197
+ @RequestId = requestid
1198
+ end
1199
+
1200
+ def deserialize(params)
1201
+ @SecretName = params['SecretName']
1202
+ @RequestId = params['RequestId']
1203
+ end
1204
+ end
1205
+
1206
+ # RotateProductSecret请求参数结构体
1207
+ class RotateProductSecretRequest < TencentCloud::Common::AbstractModel
1208
+ # @param SecretName: 需要轮转的凭据名。
1209
+ # @type SecretName: String
1210
+
1211
+ attr_accessor :SecretName
1212
+
1213
+ def initialize(secretname=nil)
1214
+ @SecretName = secretname
1215
+ end
1216
+
1217
+ def deserialize(params)
1218
+ @SecretName = params['SecretName']
1219
+ end
1220
+ end
1221
+
1222
+ # RotateProductSecret返回参数结构体
1223
+ class RotateProductSecretResponse < TencentCloud::Common::AbstractModel
1224
+ # @param FlowID: 轮转异步任务ID号。
1225
+ # @type FlowID: Integer
1226
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1227
+ # @type RequestId: String
1228
+
1229
+ attr_accessor :FlowID, :RequestId
1230
+
1231
+ def initialize(flowid=nil, requestid=nil)
1232
+ @FlowID = flowid
1233
+ @RequestId = requestid
1234
+ end
1235
+
1236
+ def deserialize(params)
1237
+ @FlowID = params['FlowID']
1238
+ @RequestId = params['RequestId']
1239
+ end
1240
+ end
1241
+
1242
+ # 凭据的基础信息
1243
+ class SecretMetadata < TencentCloud::Common::AbstractModel
1244
+ # @param SecretName: 凭据名称
1245
+ # @type SecretName: String
1246
+ # @param Description: 凭据的描述信息
1247
+ # @type Description: String
1248
+ # @param KmsKeyId: 用于加密凭据的KMS KeyId
1249
+ # @type KmsKeyId: String
1250
+ # @param CreateUin: 创建者UIN
1251
+ # @type CreateUin: Integer
1252
+ # @param Status: 凭据状态:Enabled、Disabled、PendingDelete、Creating、Failed
1253
+ # @type Status: String
1254
+ # @param DeleteTime: 凭据删除日期,对于status为PendingDelete 的有效,unix时间戳
1255
+ # @type DeleteTime: Integer
1256
+ # @param CreateTime: 凭据创建时间,unix时间戳
1257
+ # @type CreateTime: Integer
1258
+ # @param KmsKeyType: 用于加密凭据的KMS CMK类型,DEFAULT 表示SecretsManager 创建的默认密钥, CUSTOMER 表示用户指定的密钥
1259
+ # @type KmsKeyType: String
1260
+ # @param RotationStatus: 1:--开启轮转;0--禁止轮转
1261
+ # 注意:此字段可能返回 null,表示取不到有效值。
1262
+ # @type RotationStatus: Integer
1263
+ # @param NextRotationTime: 下一次轮转开始时间,uinx 时间戳
1264
+ # 注意:此字段可能返回 null,表示取不到有效值。
1265
+ # @type NextRotationTime: Integer
1266
+ # @param SecretType: 0 -- 用户自定义凭据;1 -- 云产品凭据
1267
+ # 注意:此字段可能返回 null,表示取不到有效值。
1268
+ # @type SecretType: Integer
1269
+ # @param ProductName: 云产品名称,仅在SecretType为1,即凭据类型为云产品凭据时生效
1270
+ # 注意:此字段可能返回 null,表示取不到有效值。
1271
+ # @type ProductName: String
1272
+ # @param ResourceName: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对凭据的名称。
1273
+ # 注意:此字段可能返回 null,表示取不到有效值。
1274
+ # @type ResourceName: String
1275
+ # @param ProjectID: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所属的项目ID。
1276
+ # 注意:此字段可能返回 null,表示取不到有效值。
1277
+ # @type ProjectID: Integer
1278
+ # @param AssociatedInstanceIDs: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所关联的CVM实例ID。
1279
+ # 注意:此字段可能返回 null,表示取不到有效值。
1280
+ # @type AssociatedInstanceIDs: Array
1281
+
1282
+ attr_accessor :SecretName, :Description, :KmsKeyId, :CreateUin, :Status, :DeleteTime, :CreateTime, :KmsKeyType, :RotationStatus, :NextRotationTime, :SecretType, :ProductName, :ResourceName, :ProjectID, :AssociatedInstanceIDs
1283
+
1284
+ def initialize(secretname=nil, description=nil, kmskeyid=nil, createuin=nil, status=nil, deletetime=nil, createtime=nil, kmskeytype=nil, rotationstatus=nil, nextrotationtime=nil, secrettype=nil, productname=nil, resourcename=nil, projectid=nil, associatedinstanceids=nil)
1285
+ @SecretName = secretname
1286
+ @Description = description
1287
+ @KmsKeyId = kmskeyid
1288
+ @CreateUin = createuin
1289
+ @Status = status
1290
+ @DeleteTime = deletetime
1291
+ @CreateTime = createtime
1292
+ @KmsKeyType = kmskeytype
1293
+ @RotationStatus = rotationstatus
1294
+ @NextRotationTime = nextrotationtime
1295
+ @SecretType = secrettype
1296
+ @ProductName = productname
1297
+ @ResourceName = resourcename
1298
+ @ProjectID = projectid
1299
+ @AssociatedInstanceIDs = associatedinstanceids
1300
+ end
1301
+
1302
+ def deserialize(params)
1303
+ @SecretName = params['SecretName']
1304
+ @Description = params['Description']
1305
+ @KmsKeyId = params['KmsKeyId']
1306
+ @CreateUin = params['CreateUin']
1307
+ @Status = params['Status']
1308
+ @DeleteTime = params['DeleteTime']
1309
+ @CreateTime = params['CreateTime']
1310
+ @KmsKeyType = params['KmsKeyType']
1311
+ @RotationStatus = params['RotationStatus']
1312
+ @NextRotationTime = params['NextRotationTime']
1313
+ @SecretType = params['SecretType']
1314
+ @ProductName = params['ProductName']
1315
+ @ResourceName = params['ResourceName']
1316
+ @ProjectID = params['ProjectID']
1317
+ @AssociatedInstanceIDs = params['AssociatedInstanceIDs']
1318
+ end
1319
+ end
1320
+
1321
+ # 标签键和标签值
1322
+ class Tag < TencentCloud::Common::AbstractModel
1323
+ # @param TagKey: 标签键
1324
+ # @type TagKey: String
1325
+ # @param TagValue: 标签值
1326
+ # @type TagValue: String
1327
+
1328
+ attr_accessor :TagKey, :TagValue
1329
+
1330
+ def initialize(tagkey=nil, tagvalue=nil)
1331
+ @TagKey = tagkey
1332
+ @TagValue = tagvalue
1333
+ end
1334
+
1335
+ def deserialize(params)
1336
+ @TagKey = params['TagKey']
1337
+ @TagValue = params['TagValue']
1338
+ end
1339
+ end
1340
+
1341
+ # 标签过滤器
1342
+ class TagFilter < TencentCloud::Common::AbstractModel
1343
+ # @param TagKey: 标签键
1344
+ # @type TagKey: String
1345
+ # @param TagValue: 标签值
1346
+ # @type TagValue: Array
1347
+
1348
+ attr_accessor :TagKey, :TagValue
1349
+
1350
+ def initialize(tagkey=nil, tagvalue=nil)
1351
+ @TagKey = tagkey
1352
+ @TagValue = tagvalue
1353
+ end
1354
+
1355
+ def deserialize(params)
1356
+ @TagKey = params['TagKey']
1357
+ @TagValue = params['TagValue']
1358
+ end
1359
+ end
1360
+
1361
+ # UpdateDescription请求参数结构体
1362
+ class UpdateDescriptionRequest < TencentCloud::Common::AbstractModel
1363
+ # @param SecretName: 指定需要更新描述信息的凭据名。
1364
+ # @type SecretName: String
1365
+ # @param Description: 新的描述信息,最大长度2048个字节。
1366
+ # @type Description: String
1367
+
1368
+ attr_accessor :SecretName, :Description
1369
+
1370
+ def initialize(secretname=nil, description=nil)
1371
+ @SecretName = secretname
1372
+ @Description = description
1373
+ end
1374
+
1375
+ def deserialize(params)
1376
+ @SecretName = params['SecretName']
1377
+ @Description = params['Description']
1378
+ end
1379
+ end
1380
+
1381
+ # UpdateDescription返回参数结构体
1382
+ class UpdateDescriptionResponse < TencentCloud::Common::AbstractModel
1383
+ # @param SecretName: 凭据名称。
1384
+ # @type SecretName: String
1385
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1386
+ # @type RequestId: String
1387
+
1388
+ attr_accessor :SecretName, :RequestId
1389
+
1390
+ def initialize(secretname=nil, requestid=nil)
1391
+ @SecretName = secretname
1392
+ @RequestId = requestid
1393
+ end
1394
+
1395
+ def deserialize(params)
1396
+ @SecretName = params['SecretName']
1397
+ @RequestId = params['RequestId']
1398
+ end
1399
+ end
1400
+
1401
+ # UpdateRotationStatus请求参数结构体
1402
+ class UpdateRotationStatusRequest < TencentCloud::Common::AbstractModel
1403
+ # @param SecretName: 云产品凭据名称。
1404
+ # @type SecretName: String
1405
+ # @param EnableRotation: 是否开启轮转。
1406
+ # true -- 开启轮转;
1407
+ # false -- 禁止轮转。
1408
+ # @type EnableRotation: Boolean
1409
+ # @param Frequency: 轮转周期,以天为单位,最小为30天,最大为365天。
1410
+ # @type Frequency: Integer
1411
+ # @param RotationBeginTime: 用户设置的期望开始轮转时间,格式为:2006-01-02 15:04:05。
1412
+ # 当EnableRotation为true时,如果不填RotationBeginTime,则默认填充为当前时间。
1413
+ # @type RotationBeginTime: String
1414
+
1415
+ attr_accessor :SecretName, :EnableRotation, :Frequency, :RotationBeginTime
1416
+
1417
+ def initialize(secretname=nil, enablerotation=nil, frequency=nil, rotationbegintime=nil)
1418
+ @SecretName = secretname
1419
+ @EnableRotation = enablerotation
1420
+ @Frequency = frequency
1421
+ @RotationBeginTime = rotationbegintime
1422
+ end
1423
+
1424
+ def deserialize(params)
1425
+ @SecretName = params['SecretName']
1426
+ @EnableRotation = params['EnableRotation']
1427
+ @Frequency = params['Frequency']
1428
+ @RotationBeginTime = params['RotationBeginTime']
1429
+ end
1430
+ end
1431
+
1432
+ # UpdateRotationStatus返回参数结构体
1433
+ class UpdateRotationStatusResponse < TencentCloud::Common::AbstractModel
1434
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1435
+ # @type RequestId: String
1436
+
1437
+ attr_accessor :RequestId
1438
+
1439
+ def initialize(requestid=nil)
1440
+ @RequestId = requestid
1441
+ end
1442
+
1443
+ def deserialize(params)
1444
+ @RequestId = params['RequestId']
1445
+ end
1446
+ end
1447
+
1448
+ # UpdateSecret请求参数结构体
1449
+ class UpdateSecretRequest < TencentCloud::Common::AbstractModel
1450
+ # @param SecretName: 指定需要更新凭据内容的名称。
1451
+ # @type SecretName: String
1452
+ # @param VersionId: 指定需要更新凭据内容的版本号。
1453
+ # @type VersionId: String
1454
+ # @param SecretBinary: 新的凭据内容为二进制的场景使用该字段,并使用base64进行编码。
1455
+ # SecretBinary 和 SecretString 只能一个不为空。
1456
+ # @type SecretBinary: String
1457
+ # @param SecretString: 新的凭据内容为文本的场景使用该字段,不需要base64编码SecretBinary 和 SecretString 只能一个不为空。
1458
+ # @type SecretString: String
1459
+
1460
+ attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString
1461
+
1462
+ def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil)
1463
+ @SecretName = secretname
1464
+ @VersionId = versionid
1465
+ @SecretBinary = secretbinary
1466
+ @SecretString = secretstring
1467
+ end
1468
+
1469
+ def deserialize(params)
1470
+ @SecretName = params['SecretName']
1471
+ @VersionId = params['VersionId']
1472
+ @SecretBinary = params['SecretBinary']
1473
+ @SecretString = params['SecretString']
1474
+ end
1475
+ end
1476
+
1477
+ # UpdateSecret返回参数结构体
1478
+ class UpdateSecretResponse < TencentCloud::Common::AbstractModel
1479
+ # @param SecretName: 凭据名称。
1480
+ # @type SecretName: String
1481
+ # @param VersionId: 凭据版本号。
1482
+ # @type VersionId: String
1483
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1484
+ # @type RequestId: String
1485
+
1486
+ attr_accessor :SecretName, :VersionId, :RequestId
1487
+
1488
+ def initialize(secretname=nil, versionid=nil, requestid=nil)
1489
+ @SecretName = secretname
1490
+ @VersionId = versionid
1491
+ @RequestId = requestid
1492
+ end
1493
+
1494
+ def deserialize(params)
1495
+ @SecretName = params['SecretName']
1496
+ @VersionId = params['VersionId']
1497
+ @RequestId = params['RequestId']
1498
+ end
1499
+ end
1500
+
1501
+ # 凭据版本号列表信息
1502
+ class VersionInfo < TencentCloud::Common::AbstractModel
1503
+ # @param VersionId: 版本号。
1504
+ # @type VersionId: String
1505
+ # @param CreateTime: 创建时间,unix时间戳。
1506
+ # @type CreateTime: Integer
1507
+
1508
+ attr_accessor :VersionId, :CreateTime
1509
+
1510
+ def initialize(versionid=nil, createtime=nil)
1511
+ @VersionId = versionid
1512
+ @CreateTime = createtime
1513
+ end
1514
+
1515
+ def deserialize(params)
1516
+ @VersionId = params['VersionId']
1517
+ @CreateTime = params['CreateTime']
1518
+ end
1519
+ end
1520
+
1521
+ end
1522
+ end
1523
+ end
1524
+