tencentcloud-sdk-kms 3.0.1074 → 3.0.1092

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c58fbc66e0ad8fedf76691cc2f718e2553e2b8bf
4
- data.tar.gz: cfc42260ec32191e63bdd7b7e125682824a89e08
3
+ metadata.gz: a74a6090c68ba64c190a3c87a23e5d22d7695298
4
+ data.tar.gz: 281decc77276fc3d7aa73c3cb16a7273b6eeb931
5
5
  SHA512:
6
- metadata.gz: 2e3a1512007f7cdacddd0bcdb117d55bc0e9b40d639fc24e0842c30d5dc79ab5643ac56d47a29eb9dbc3fc0b479755b5a2f1844ce308dcc35e70896e42982093
7
- data.tar.gz: bde1cfbd7e3eaa25c66431c6b7fd889f49412e93c47af90f08ee9f0bc9665f7cda16c933cf2da4dbad291d6cea224051491653137b68c8810f164c39633788a1
6
+ metadata.gz: c95606166f553d667a7dacbef24868f4eeaf7c81e92ddaa2e6e62ee13901c5416cf7e8d35fde1496f2252a583edc7943f68daa992a44e5320e425410235ad52a
7
+ data.tar.gz: 8538eeb11d58f1e0038cf6cae659c0313cbe548b628daa746ef24aa0f2ace9ad48474f7d8866a2dd5b837e56f7a02cb2aaa2b5e6fbfd2ed30ebef9f4e1d809a0
data/lib/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.1074
1
+ 3.0.1092
@@ -125,6 +125,30 @@ module TencentCloud
125
125
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
126
126
  end
127
127
 
128
+ # 取消计划删除数据密钥
129
+
130
+ # @param request: Request instance for CancelDataKeyDeletion.
131
+ # @type request: :class:`Tencentcloud::kms::V20190118::CancelDataKeyDeletionRequest`
132
+ # @rtype: :class:`Tencentcloud::kms::V20190118::CancelDataKeyDeletionResponse`
133
+ def CancelDataKeyDeletion(request)
134
+ body = send_request('CancelDataKeyDeletion', request.serialize)
135
+ response = JSON.parse(body)
136
+ if response['Response'].key?('Error') == false
137
+ model = CancelDataKeyDeletionResponse.new
138
+ model.deserialize(response['Response'])
139
+ model
140
+ else
141
+ code = response['Response']['Error']['Code']
142
+ message = response['Response']['Error']['Message']
143
+ reqid = response['Response']['RequestId']
144
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
145
+ end
146
+ rescue TencentCloud::Common::TencentCloudSDKException => e
147
+ raise e
148
+ rescue StandardError => e
149
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
150
+ end
151
+
128
152
  # 取消密钥归档,取消后密钥的状态变为Enabled。
129
153
 
130
154
  # @param request: Request instance for CancelKeyArchive.
@@ -293,6 +317,54 @@ module TencentCloud
293
317
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
294
318
  end
295
319
 
320
+ # 获取数据密钥的详情
321
+
322
+ # @param request: Request instance for DescribeDataKey.
323
+ # @type request: :class:`Tencentcloud::kms::V20190118::DescribeDataKeyRequest`
324
+ # @rtype: :class:`Tencentcloud::kms::V20190118::DescribeDataKeyResponse`
325
+ def DescribeDataKey(request)
326
+ body = send_request('DescribeDataKey', request.serialize)
327
+ response = JSON.parse(body)
328
+ if response['Response'].key?('Error') == false
329
+ model = DescribeDataKeyResponse.new
330
+ model.deserialize(response['Response'])
331
+ model
332
+ else
333
+ code = response['Response']['Error']['Code']
334
+ message = response['Response']['Error']['Message']
335
+ reqid = response['Response']['RequestId']
336
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
337
+ end
338
+ rescue TencentCloud::Common::TencentCloudSDKException => e
339
+ raise e
340
+ rescue StandardError => e
341
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
342
+ end
343
+
344
+ # 返回数据密钥属性信息列表
345
+
346
+ # @param request: Request instance for DescribeDataKeys.
347
+ # @type request: :class:`Tencentcloud::kms::V20190118::DescribeDataKeysRequest`
348
+ # @rtype: :class:`Tencentcloud::kms::V20190118::DescribeDataKeysResponse`
349
+ def DescribeDataKeys(request)
350
+ body = send_request('DescribeDataKeys', request.serialize)
351
+ response = JSON.parse(body)
352
+ if response['Response'].key?('Error') == false
353
+ model = DescribeDataKeysResponse.new
354
+ model.deserialize(response['Response'])
355
+ model
356
+ else
357
+ code = response['Response']['Error']['Code']
358
+ message = response['Response']['Error']['Message']
359
+ reqid = response['Response']['RequestId']
360
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
361
+ end
362
+ rescue TencentCloud::Common::TencentCloudSDKException => e
363
+ raise e
364
+ rescue StandardError => e
365
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
366
+ end
367
+
296
368
  # 用于获取指定KeyId的主密钥属性详情信息。
297
369
 
298
370
  # @param request: Request instance for DescribeKey.
@@ -461,6 +533,54 @@ module TencentCloud
461
533
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
462
534
  end
463
535
 
536
+ # 禁用数据密钥
537
+
538
+ # @param request: Request instance for DisableDataKey.
539
+ # @type request: :class:`Tencentcloud::kms::V20190118::DisableDataKeyRequest`
540
+ # @rtype: :class:`Tencentcloud::kms::V20190118::DisableDataKeyResponse`
541
+ def DisableDataKey(request)
542
+ body = send_request('DisableDataKey', request.serialize)
543
+ response = JSON.parse(body)
544
+ if response['Response'].key?('Error') == false
545
+ model = DisableDataKeyResponse.new
546
+ model.deserialize(response['Response'])
547
+ model
548
+ else
549
+ code = response['Response']['Error']['Code']
550
+ message = response['Response']['Error']['Message']
551
+ reqid = response['Response']['RequestId']
552
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
553
+ end
554
+ rescue TencentCloud::Common::TencentCloudSDKException => e
555
+ raise e
556
+ rescue StandardError => e
557
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
558
+ end
559
+
560
+ # 批量禁用数据密钥
561
+
562
+ # @param request: Request instance for DisableDataKeys.
563
+ # @type request: :class:`Tencentcloud::kms::V20190118::DisableDataKeysRequest`
564
+ # @rtype: :class:`Tencentcloud::kms::V20190118::DisableDataKeysResponse`
565
+ def DisableDataKeys(request)
566
+ body = send_request('DisableDataKeys', request.serialize)
567
+ response = JSON.parse(body)
568
+ if response['Response'].key?('Error') == false
569
+ model = DisableDataKeysResponse.new
570
+ model.deserialize(response['Response'])
571
+ model
572
+ else
573
+ code = response['Response']['Error']['Code']
574
+ message = response['Response']['Error']['Message']
575
+ reqid = response['Response']['RequestId']
576
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
577
+ end
578
+ rescue TencentCloud::Common::TencentCloudSDKException => e
579
+ raise e
580
+ rescue StandardError => e
581
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
582
+ end
583
+
464
584
  # 本接口用于禁用一个主密钥,处于禁用状态的Key无法用于加密、解密操作。
465
585
 
466
586
  # @param request: Request instance for DisableKey.
@@ -581,6 +701,54 @@ module TencentCloud
581
701
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
582
702
  end
583
703
 
704
+ # 启用数据密钥
705
+
706
+ # @param request: Request instance for EnableDataKey.
707
+ # @type request: :class:`Tencentcloud::kms::V20190118::EnableDataKeyRequest`
708
+ # @rtype: :class:`Tencentcloud::kms::V20190118::EnableDataKeyResponse`
709
+ def EnableDataKey(request)
710
+ body = send_request('EnableDataKey', request.serialize)
711
+ response = JSON.parse(body)
712
+ if response['Response'].key?('Error') == false
713
+ model = EnableDataKeyResponse.new
714
+ model.deserialize(response['Response'])
715
+ model
716
+ else
717
+ code = response['Response']['Error']['Code']
718
+ message = response['Response']['Error']['Message']
719
+ reqid = response['Response']['RequestId']
720
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
721
+ end
722
+ rescue TencentCloud::Common::TencentCloudSDKException => e
723
+ raise e
724
+ rescue StandardError => e
725
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
726
+ end
727
+
728
+ # 批量启用数据密钥
729
+
730
+ # @param request: Request instance for EnableDataKeys.
731
+ # @type request: :class:`Tencentcloud::kms::V20190118::EnableDataKeysRequest`
732
+ # @rtype: :class:`Tencentcloud::kms::V20190118::EnableDataKeysResponse`
733
+ def EnableDataKeys(request)
734
+ body = send_request('EnableDataKeys', request.serialize)
735
+ response = JSON.parse(body)
736
+ if response['Response'].key?('Error') == false
737
+ model = EnableDataKeysResponse.new
738
+ model.deserialize(response['Response'])
739
+ model
740
+ else
741
+ code = response['Response']['Error']['Code']
742
+ message = response['Response']['Error']['Message']
743
+ reqid = response['Response']['RequestId']
744
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
745
+ end
746
+ rescue TencentCloud::Common::TencentCloudSDKException => e
747
+ raise e
748
+ rescue StandardError => e
749
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
750
+ end
751
+
584
752
  # 用于启用一个指定的CMK。
585
753
 
586
754
  # @param request: Request instance for EnableKey.
@@ -797,6 +965,54 @@ module TencentCloud
797
965
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
798
966
  end
799
967
 
968
+ # 下载数据密钥密文
969
+
970
+ # @param request: Request instance for GetDataKeyCiphertextBlob.
971
+ # @type request: :class:`Tencentcloud::kms::V20190118::GetDataKeyCiphertextBlobRequest`
972
+ # @rtype: :class:`Tencentcloud::kms::V20190118::GetDataKeyCiphertextBlobResponse`
973
+ def GetDataKeyCiphertextBlob(request)
974
+ body = send_request('GetDataKeyCiphertextBlob', request.serialize)
975
+ response = JSON.parse(body)
976
+ if response['Response'].key?('Error') == false
977
+ model = GetDataKeyCiphertextBlobResponse.new
978
+ model.deserialize(response['Response'])
979
+ model
980
+ else
981
+ code = response['Response']['Error']['Code']
982
+ message = response['Response']['Error']['Message']
983
+ reqid = response['Response']['RequestId']
984
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
985
+ end
986
+ rescue TencentCloud::Common::TencentCloudSDKException => e
987
+ raise e
988
+ rescue StandardError => e
989
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
990
+ end
991
+
992
+ # 获取数据密钥明文
993
+
994
+ # @param request: Request instance for GetDataKeyPlaintext.
995
+ # @type request: :class:`Tencentcloud::kms::V20190118::GetDataKeyPlaintextRequest`
996
+ # @rtype: :class:`Tencentcloud::kms::V20190118::GetDataKeyPlaintextResponse`
997
+ def GetDataKeyPlaintext(request)
998
+ body = send_request('GetDataKeyPlaintext', request.serialize)
999
+ response = JSON.parse(body)
1000
+ if response['Response'].key?('Error') == false
1001
+ model = GetDataKeyPlaintextResponse.new
1002
+ model.deserialize(response['Response'])
1003
+ model
1004
+ else
1005
+ code = response['Response']['Error']['Code']
1006
+ message = response['Response']['Error']['Message']
1007
+ reqid = response['Response']['RequestId']
1008
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1009
+ end
1010
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1011
+ raise e
1012
+ rescue StandardError => e
1013
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1014
+ end
1015
+
800
1016
  # 查询指定的CMK是否开启了密钥轮换功能。
801
1017
 
802
1018
  # @param request: Request instance for GetKeyRotationStatus.
@@ -917,6 +1133,30 @@ module TencentCloud
917
1133
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
918
1134
  end
919
1135
 
1136
+ # 数据密钥导入接口,并托管到KMS
1137
+
1138
+ # @param request: Request instance for ImportDataKey.
1139
+ # @type request: :class:`Tencentcloud::kms::V20190118::ImportDataKeyRequest`
1140
+ # @rtype: :class:`Tencentcloud::kms::V20190118::ImportDataKeyResponse`
1141
+ def ImportDataKey(request)
1142
+ body = send_request('ImportDataKey', request.serialize)
1143
+ response = JSON.parse(body)
1144
+ if response['Response'].key?('Error') == false
1145
+ model = ImportDataKeyResponse.new
1146
+ model.deserialize(response['Response'])
1147
+ model
1148
+ else
1149
+ code = response['Response']['Error']['Code']
1150
+ message = response['Response']['Error']['Message']
1151
+ reqid = response['Response']['RequestId']
1152
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1153
+ end
1154
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1155
+ raise e
1156
+ rescue StandardError => e
1157
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1158
+ end
1159
+
920
1160
  # 用于导入密钥材料。只有类型为EXTERNAL 的CMK 才可以导入,导入的密钥材料使用 GetParametersForImport 获取的密钥进行加密。可以为指定的 CMK 重新导入密钥材料,并重新指定过期时间,但必须导入相同的密钥材料。CMK 密钥材料导入后不可以更换密钥材料。导入的密钥材料过期或者被删除后,指定的CMK将无法使用,需要再次导入相同的密钥材料才能正常使用。CMK是独立的,同样的密钥材料可导入不同的 CMK 中,但使用其中一个 CMK 加密的数据无法使用另一个 CMK解密。
921
1161
  # 只有Enabled 和 PendingImport状态的CMK可以导入密钥材料。
922
1162
 
@@ -966,6 +1206,54 @@ module TencentCloud
966
1206
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
967
1207
  end
968
1208
 
1209
+ # 根据指定Offset和Limit获取数据密钥列表详情。
1210
+
1211
+ # @param request: Request instance for ListDataKeyDetail.
1212
+ # @type request: :class:`Tencentcloud::kms::V20190118::ListDataKeyDetailRequest`
1213
+ # @rtype: :class:`Tencentcloud::kms::V20190118::ListDataKeyDetailResponse`
1214
+ def ListDataKeyDetail(request)
1215
+ body = send_request('ListDataKeyDetail', request.serialize)
1216
+ response = JSON.parse(body)
1217
+ if response['Response'].key?('Error') == false
1218
+ model = ListDataKeyDetailResponse.new
1219
+ model.deserialize(response['Response'])
1220
+ model
1221
+ else
1222
+ code = response['Response']['Error']['Code']
1223
+ message = response['Response']['Error']['Message']
1224
+ reqid = response['Response']['RequestId']
1225
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1226
+ end
1227
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1228
+ raise e
1229
+ rescue StandardError => e
1230
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1231
+ end
1232
+
1233
+ # 用于查询数据密钥的列表
1234
+
1235
+ # @param request: Request instance for ListDataKeys.
1236
+ # @type request: :class:`Tencentcloud::kms::V20190118::ListDataKeysRequest`
1237
+ # @rtype: :class:`Tencentcloud::kms::V20190118::ListDataKeysResponse`
1238
+ def ListDataKeys(request)
1239
+ body = send_request('ListDataKeys', request.serialize)
1240
+ response = JSON.parse(body)
1241
+ if response['Response'].key?('Error') == false
1242
+ model = ListDataKeysResponse.new
1243
+ model.deserialize(response['Response'])
1244
+ model
1245
+ else
1246
+ code = response['Response']['Error']['Code']
1247
+ message = response['Response']['Error']['Message']
1248
+ reqid = response['Response']['RequestId']
1249
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1250
+ end
1251
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1252
+ raise e
1253
+ rescue StandardError => e
1254
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1255
+ end
1256
+
969
1257
  # 根据指定Offset和Limit获取主密钥列表详情。
970
1258
 
971
1259
  # @param request: Request instance for ListKeyDetail.
@@ -1158,6 +1446,30 @@ module TencentCloud
1158
1446
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1159
1447
  end
1160
1448
 
1449
+ # 计划删除数据密钥
1450
+
1451
+ # @param request: Request instance for ScheduleDataKeyDeletion.
1452
+ # @type request: :class:`Tencentcloud::kms::V20190118::ScheduleDataKeyDeletionRequest`
1453
+ # @rtype: :class:`Tencentcloud::kms::V20190118::ScheduleDataKeyDeletionResponse`
1454
+ def ScheduleDataKeyDeletion(request)
1455
+ body = send_request('ScheduleDataKeyDeletion', request.serialize)
1456
+ response = JSON.parse(body)
1457
+ if response['Response'].key?('Error') == false
1458
+ model = ScheduleDataKeyDeletionResponse.new
1459
+ model.deserialize(response['Response'])
1460
+ model
1461
+ else
1462
+ code = response['Response']['Error']['Code']
1463
+ message = response['Response']['Error']['Message']
1464
+ reqid = response['Response']['RequestId']
1465
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1466
+ end
1467
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1468
+ raise e
1469
+ rescue StandardError => e
1470
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1471
+ end
1472
+
1161
1473
  # CMK计划删除接口,用于指定CMK删除的时间,可选时间区间为[7,30]天
1162
1474
 
1163
1475
  # @param request: Request instance for ScheduleKeyDeletion.
@@ -1255,6 +1567,54 @@ module TencentCloud
1255
1567
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1256
1568
  end
1257
1569
 
1570
+ # 修改数据密钥描述
1571
+
1572
+ # @param request: Request instance for UpdateDataKeyDescription.
1573
+ # @type request: :class:`Tencentcloud::kms::V20190118::UpdateDataKeyDescriptionRequest`
1574
+ # @rtype: :class:`Tencentcloud::kms::V20190118::UpdateDataKeyDescriptionResponse`
1575
+ def UpdateDataKeyDescription(request)
1576
+ body = send_request('UpdateDataKeyDescription', request.serialize)
1577
+ response = JSON.parse(body)
1578
+ if response['Response'].key?('Error') == false
1579
+ model = UpdateDataKeyDescriptionResponse.new
1580
+ model.deserialize(response['Response'])
1581
+ model
1582
+ else
1583
+ code = response['Response']['Error']['Code']
1584
+ message = response['Response']['Error']['Message']
1585
+ reqid = response['Response']['RequestId']
1586
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1587
+ end
1588
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1589
+ raise e
1590
+ rescue StandardError => e
1591
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1592
+ end
1593
+
1594
+ # 修改数据密钥名称
1595
+
1596
+ # @param request: Request instance for UpdateDataKeyName.
1597
+ # @type request: :class:`Tencentcloud::kms::V20190118::UpdateDataKeyNameRequest`
1598
+ # @rtype: :class:`Tencentcloud::kms::V20190118::UpdateDataKeyNameResponse`
1599
+ def UpdateDataKeyName(request)
1600
+ body = send_request('UpdateDataKeyName', request.serialize)
1601
+ response = JSON.parse(body)
1602
+ if response['Response'].key?('Error') == false
1603
+ model = UpdateDataKeyNameResponse.new
1604
+ model.deserialize(response['Response'])
1605
+ model
1606
+ else
1607
+ code = response['Response']['Error']['Code']
1608
+ message = response['Response']['Error']['Message']
1609
+ reqid = response['Response']['RequestId']
1610
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1611
+ end
1612
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1613
+ raise e
1614
+ rescue StandardError => e
1615
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1616
+ end
1617
+
1258
1618
  # 该接口用于对指定的cmk修改描述信息。对于处于PendingDelete状态的CMK禁止修改。
1259
1619
 
1260
1620
  # @param request: Request instance for UpdateKeyDescription.
@@ -201,6 +201,42 @@ module TencentCloud
201
201
  end
202
202
  end
203
203
 
204
+ # CancelDataKeyDeletion请求参数结构体
205
+ class CancelDataKeyDeletionRequest < TencentCloud::Common::AbstractModel
206
+ # @param DataKeyId: 数据密钥的唯一标志符
207
+ # @type DataKeyId: String
208
+
209
+ attr_accessor :DataKeyId
210
+
211
+ def initialize(datakeyid=nil)
212
+ @DataKeyId = datakeyid
213
+ end
214
+
215
+ def deserialize(params)
216
+ @DataKeyId = params['DataKeyId']
217
+ end
218
+ end
219
+
220
+ # CancelDataKeyDeletion返回参数结构体
221
+ class CancelDataKeyDeletionResponse < TencentCloud::Common::AbstractModel
222
+ # @param DataKeyId: 唯一标志被计划删除的数据密钥
223
+ # @type DataKeyId: String
224
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
225
+ # @type RequestId: String
226
+
227
+ attr_accessor :DataKeyId, :RequestId
228
+
229
+ def initialize(datakeyid=nil, requestid=nil)
230
+ @DataKeyId = datakeyid
231
+ @RequestId = requestid
232
+ end
233
+
234
+ def deserialize(params)
235
+ @DataKeyId = params['DataKeyId']
236
+ @RequestId = params['RequestId']
237
+ end
238
+ end
239
+
204
240
  # CancelKeyArchive请求参数结构体
205
241
  class CancelKeyArchiveRequest < TencentCloud::Common::AbstractModel
206
242
  # @param KeyId: CMK唯一标识符
@@ -435,6 +471,86 @@ module TencentCloud
435
471
  end
436
472
  end
437
473
 
474
+ # 数据密钥属性
475
+ class DataKey < TencentCloud::Common::AbstractModel
476
+ # @param DataKeyId: DataKey的全局唯一标识。
477
+ # @type DataKeyId: String
478
+
479
+ attr_accessor :DataKeyId
480
+
481
+ def initialize(datakeyid=nil)
482
+ @DataKeyId = datakeyid
483
+ end
484
+
485
+ def deserialize(params)
486
+ @DataKeyId = params['DataKeyId']
487
+ end
488
+ end
489
+
490
+ # 数据密钥属性信息
491
+ class DataKeyMetadata < TencentCloud::Common::AbstractModel
492
+ # @param DataKeyId: DataKey的全局唯一标识
493
+ # @type DataKeyId: String
494
+ # @param KeyId: CMK的全局唯一标识
495
+ # @type KeyId: String
496
+ # @param DataKeyName: 作为密钥更容易辨识,更容易被人看懂的数据密钥名称
497
+ # @type DataKeyName: String
498
+ # @param NumberOfBytes: 数据密钥的长度,单位字节
499
+ # @type NumberOfBytes: Integer
500
+ # @param CreateTime: 密钥创建时间
501
+ # @type CreateTime: Integer
502
+ # @param Description: DataKey的描述
503
+ # @type Description: String
504
+ # @param KeyState: DataKey的状态, 取值为:Enabled | Disabled | PendingDelete
505
+ # @type KeyState: String
506
+ # @param CreatorUin: 创建者
507
+ # @type CreatorUin: Integer
508
+ # @param Owner: 数据密钥的创建者,用户创建的为 user,授权各云产品自动创建的为对应的产品名
509
+ # @type Owner: String
510
+ # @param DeletionDate: 计划删除的时间
511
+ # @type DeletionDate: Integer
512
+ # @param Origin: DataKey 密钥材料类型,由KMS创建的为: TENCENT_KMS, 由用户导入的类型为:EXTERNAL
513
+ # @type Origin: String
514
+ # @param HsmClusterId: HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)
515
+ # @type HsmClusterId: String
516
+ # @param ResourceId: 资源ID,格式:creatorUin/$creatorUin/$dataKeyId
517
+ # @type ResourceId: String
518
+
519
+ attr_accessor :DataKeyId, :KeyId, :DataKeyName, :NumberOfBytes, :CreateTime, :Description, :KeyState, :CreatorUin, :Owner, :DeletionDate, :Origin, :HsmClusterId, :ResourceId
520
+
521
+ def initialize(datakeyid=nil, keyid=nil, datakeyname=nil, numberofbytes=nil, createtime=nil, description=nil, keystate=nil, creatoruin=nil, owner=nil, deletiondate=nil, origin=nil, hsmclusterid=nil, resourceid=nil)
522
+ @DataKeyId = datakeyid
523
+ @KeyId = keyid
524
+ @DataKeyName = datakeyname
525
+ @NumberOfBytes = numberofbytes
526
+ @CreateTime = createtime
527
+ @Description = description
528
+ @KeyState = keystate
529
+ @CreatorUin = creatoruin
530
+ @Owner = owner
531
+ @DeletionDate = deletiondate
532
+ @Origin = origin
533
+ @HsmClusterId = hsmclusterid
534
+ @ResourceId = resourceid
535
+ end
536
+
537
+ def deserialize(params)
538
+ @DataKeyId = params['DataKeyId']
539
+ @KeyId = params['KeyId']
540
+ @DataKeyName = params['DataKeyName']
541
+ @NumberOfBytes = params['NumberOfBytes']
542
+ @CreateTime = params['CreateTime']
543
+ @Description = params['Description']
544
+ @KeyState = params['KeyState']
545
+ @CreatorUin = params['CreatorUin']
546
+ @Owner = params['Owner']
547
+ @DeletionDate = params['DeletionDate']
548
+ @Origin = params['Origin']
549
+ @HsmClusterId = params['HsmClusterId']
550
+ @ResourceId = params['ResourceId']
551
+ end
552
+ end
553
+
438
554
  # Decrypt请求参数结构体
439
555
  class DecryptRequest < TencentCloud::Common::AbstractModel
440
556
  # @param CiphertextBlob: 待解密的密文数据
@@ -552,6 +668,88 @@ module TencentCloud
552
668
  end
553
669
  end
554
670
 
671
+ # DescribeDataKey请求参数结构体
672
+ class DescribeDataKeyRequest < TencentCloud::Common::AbstractModel
673
+ # @param DataKeyId: 数据密钥全局唯一标识符
674
+ # @type DataKeyId: String
675
+
676
+ attr_accessor :DataKeyId
677
+
678
+ def initialize(datakeyid=nil)
679
+ @DataKeyId = datakeyid
680
+ end
681
+
682
+ def deserialize(params)
683
+ @DataKeyId = params['DataKeyId']
684
+ end
685
+ end
686
+
687
+ # DescribeDataKey返回参数结构体
688
+ class DescribeDataKeyResponse < TencentCloud::Common::AbstractModel
689
+ # @param DataKeyMetadata: 数据密钥属性信息
690
+ # @type DataKeyMetadata: :class:`Tencentcloud::Kms.v20190118.models.DataKeyMetadata`
691
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
692
+ # @type RequestId: String
693
+
694
+ attr_accessor :DataKeyMetadata, :RequestId
695
+
696
+ def initialize(datakeymetadata=nil, requestid=nil)
697
+ @DataKeyMetadata = datakeymetadata
698
+ @RequestId = requestid
699
+ end
700
+
701
+ def deserialize(params)
702
+ unless params['DataKeyMetadata'].nil?
703
+ @DataKeyMetadata = DataKeyMetadata.new
704
+ @DataKeyMetadata.deserialize(params['DataKeyMetadata'])
705
+ end
706
+ @RequestId = params['RequestId']
707
+ end
708
+ end
709
+
710
+ # DescribeDataKeys请求参数结构体
711
+ class DescribeDataKeysRequest < TencentCloud::Common::AbstractModel
712
+ # @param DataKeyIds: 查询DataKey的ID列表,批量查询一次最多支持100个DataKeyId
713
+ # @type DataKeyIds: Array
714
+
715
+ attr_accessor :DataKeyIds
716
+
717
+ def initialize(datakeyids=nil)
718
+ @DataKeyIds = datakeyids
719
+ end
720
+
721
+ def deserialize(params)
722
+ @DataKeyIds = params['DataKeyIds']
723
+ end
724
+ end
725
+
726
+ # DescribeDataKeys返回参数结构体
727
+ class DescribeDataKeysResponse < TencentCloud::Common::AbstractModel
728
+ # @param DataKeyMetadatas: 返回数据密钥属性信息列表
729
+ # @type DataKeyMetadatas: Array
730
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
731
+ # @type RequestId: String
732
+
733
+ attr_accessor :DataKeyMetadatas, :RequestId
734
+
735
+ def initialize(datakeymetadatas=nil, requestid=nil)
736
+ @DataKeyMetadatas = datakeymetadatas
737
+ @RequestId = requestid
738
+ end
739
+
740
+ def deserialize(params)
741
+ unless params['DataKeyMetadatas'].nil?
742
+ @DataKeyMetadatas = []
743
+ params['DataKeyMetadatas'].each do |i|
744
+ datakeymetadata_tmp = DataKeyMetadata.new
745
+ datakeymetadata_tmp.deserialize(i)
746
+ @DataKeyMetadatas << datakeymetadata_tmp
747
+ end
748
+ end
749
+ @RequestId = params['RequestId']
750
+ end
751
+ end
752
+
555
753
  # DescribeKey请求参数结构体
556
754
  class DescribeKeyRequest < TencentCloud::Common::AbstractModel
557
755
  # @param KeyId: CMK全局唯一标识符
@@ -869,6 +1067,70 @@ module TencentCloud
869
1067
  end
870
1068
  end
871
1069
 
1070
+ # DisableDataKey请求参数结构体
1071
+ class DisableDataKeyRequest < TencentCloud::Common::AbstractModel
1072
+ # @param DataKeyId: 数据密钥唯一标识符
1073
+ # @type DataKeyId: String
1074
+
1075
+ attr_accessor :DataKeyId
1076
+
1077
+ def initialize(datakeyid=nil)
1078
+ @DataKeyId = datakeyid
1079
+ end
1080
+
1081
+ def deserialize(params)
1082
+ @DataKeyId = params['DataKeyId']
1083
+ end
1084
+ end
1085
+
1086
+ # DisableDataKey返回参数结构体
1087
+ class DisableDataKeyResponse < TencentCloud::Common::AbstractModel
1088
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1089
+ # @type RequestId: String
1090
+
1091
+ attr_accessor :RequestId
1092
+
1093
+ def initialize(requestid=nil)
1094
+ @RequestId = requestid
1095
+ end
1096
+
1097
+ def deserialize(params)
1098
+ @RequestId = params['RequestId']
1099
+ end
1100
+ end
1101
+
1102
+ # DisableDataKeys请求参数结构体
1103
+ class DisableDataKeysRequest < TencentCloud::Common::AbstractModel
1104
+ # @param DataKeyIds: 需要批量禁用的DataKey Id 列表,数据密钥数量最大支持100
1105
+ # @type DataKeyIds: Array
1106
+
1107
+ attr_accessor :DataKeyIds
1108
+
1109
+ def initialize(datakeyids=nil)
1110
+ @DataKeyIds = datakeyids
1111
+ end
1112
+
1113
+ def deserialize(params)
1114
+ @DataKeyIds = params['DataKeyIds']
1115
+ end
1116
+ end
1117
+
1118
+ # DisableDataKeys返回参数结构体
1119
+ class DisableDataKeysResponse < TencentCloud::Common::AbstractModel
1120
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1121
+ # @type RequestId: String
1122
+
1123
+ attr_accessor :RequestId
1124
+
1125
+ def initialize(requestid=nil)
1126
+ @RequestId = requestid
1127
+ end
1128
+
1129
+ def deserialize(params)
1130
+ @RequestId = params['RequestId']
1131
+ end
1132
+ end
1133
+
872
1134
  # DisableKey请求参数结构体
873
1135
  class DisableKeyRequest < TencentCloud::Common::AbstractModel
874
1136
  # @param KeyId: CMK唯一标识符
@@ -1029,6 +1291,70 @@ module TencentCloud
1029
1291
  end
1030
1292
  end
1031
1293
 
1294
+ # EnableDataKey请求参数结构体
1295
+ class EnableDataKeyRequest < TencentCloud::Common::AbstractModel
1296
+ # @param DataKeyId: 数据密钥唯一标识符
1297
+ # @type DataKeyId: String
1298
+
1299
+ attr_accessor :DataKeyId
1300
+
1301
+ def initialize(datakeyid=nil)
1302
+ @DataKeyId = datakeyid
1303
+ end
1304
+
1305
+ def deserialize(params)
1306
+ @DataKeyId = params['DataKeyId']
1307
+ end
1308
+ end
1309
+
1310
+ # EnableDataKey返回参数结构体
1311
+ class EnableDataKeyResponse < TencentCloud::Common::AbstractModel
1312
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1313
+ # @type RequestId: String
1314
+
1315
+ attr_accessor :RequestId
1316
+
1317
+ def initialize(requestid=nil)
1318
+ @RequestId = requestid
1319
+ end
1320
+
1321
+ def deserialize(params)
1322
+ @RequestId = params['RequestId']
1323
+ end
1324
+ end
1325
+
1326
+ # EnableDataKeys请求参数结构体
1327
+ class EnableDataKeysRequest < TencentCloud::Common::AbstractModel
1328
+ # @param DataKeyIds: 需要批量启用的DataKey Id 列表, 数据密钥数量最大支持100
1329
+ # @type DataKeyIds: Array
1330
+
1331
+ attr_accessor :DataKeyIds
1332
+
1333
+ def initialize(datakeyids=nil)
1334
+ @DataKeyIds = datakeyids
1335
+ end
1336
+
1337
+ def deserialize(params)
1338
+ @DataKeyIds = params['DataKeyIds']
1339
+ end
1340
+ end
1341
+
1342
+ # EnableDataKeys返回参数结构体
1343
+ class EnableDataKeysResponse < TencentCloud::Common::AbstractModel
1344
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1345
+ # @type RequestId: String
1346
+
1347
+ attr_accessor :RequestId
1348
+
1349
+ def initialize(requestid=nil)
1350
+ @RequestId = requestid
1351
+ end
1352
+
1353
+ def deserialize(params)
1354
+ @RequestId = params['RequestId']
1355
+ end
1356
+ end
1357
+
1032
1358
  # EnableKey请求参数结构体
1033
1359
  class EnableKeyRequest < TencentCloud::Common::AbstractModel
1034
1360
  # @param KeyId: CMK唯一标识符
@@ -1323,16 +1649,28 @@ module TencentCloud
1323
1649
  # @type EncryptionPublicKey: String
1324
1650
  # @param EncryptionAlgorithm: 非对称加密算法,配合 EncryptionPublicKey 对返回数据进行加密。目前支持:SM2(以 C1C3C2 格式返回密文),SM2_C1C3C2_ASN1 (以 C1C3C2 ASN1 格式返回密文),RSAES_PKCS1_V1_5,RSAES_OAEP_SHA_1,RSAES_OAEP_SHA_256。若为空,则默认为 SM2。
1325
1651
  # @type EncryptionAlgorithm: String
1652
+ # @param IsHostedByKms: 表示生成的数据密钥是否被KMS托管。1:表示被KMS托管保存,0:表示KMS不托管。
1653
+ # @type IsHostedByKms: Integer
1654
+ # @param DataKeyName: 数据密钥的名称,当IsHostedByKms为1时,必须填写。当IsHostedByKms为0时,可以不填,KMS不托管。
1655
+ # @type DataKeyName: String
1656
+ # @param Description: 数据密钥 的描述,最大100字节
1657
+ # @type Description: String
1658
+ # @param HsmClusterId: KMS 独享版对应的 HSM 集群 ID。如果指定HsmClusterId,表明根密钥在此集群里,会校验KeyId是否和HsmClusterId对应。
1659
+ # @type HsmClusterId: String
1326
1660
 
1327
- attr_accessor :KeyId, :KeySpec, :NumberOfBytes, :EncryptionContext, :EncryptionPublicKey, :EncryptionAlgorithm
1661
+ attr_accessor :KeyId, :KeySpec, :NumberOfBytes, :EncryptionContext, :EncryptionPublicKey, :EncryptionAlgorithm, :IsHostedByKms, :DataKeyName, :Description, :HsmClusterId
1328
1662
 
1329
- def initialize(keyid=nil, keyspec=nil, numberofbytes=nil, encryptioncontext=nil, encryptionpublickey=nil, encryptionalgorithm=nil)
1663
+ def initialize(keyid=nil, keyspec=nil, numberofbytes=nil, encryptioncontext=nil, encryptionpublickey=nil, encryptionalgorithm=nil, ishostedbykms=nil, datakeyname=nil, description=nil, hsmclusterid=nil)
1330
1664
  @KeyId = keyid
1331
1665
  @KeySpec = keyspec
1332
1666
  @NumberOfBytes = numberofbytes
1333
1667
  @EncryptionContext = encryptioncontext
1334
1668
  @EncryptionPublicKey = encryptionpublickey
1335
1669
  @EncryptionAlgorithm = encryptionalgorithm
1670
+ @IsHostedByKms = ishostedbykms
1671
+ @DataKeyName = datakeyname
1672
+ @Description = description
1673
+ @HsmClusterId = hsmclusterid
1336
1674
  end
1337
1675
 
1338
1676
  def deserialize(params)
@@ -1342,6 +1680,10 @@ module TencentCloud
1342
1680
  @EncryptionContext = params['EncryptionContext']
1343
1681
  @EncryptionPublicKey = params['EncryptionPublicKey']
1344
1682
  @EncryptionAlgorithm = params['EncryptionAlgorithm']
1683
+ @IsHostedByKms = params['IsHostedByKms']
1684
+ @DataKeyName = params['DataKeyName']
1685
+ @Description = params['Description']
1686
+ @HsmClusterId = params['HsmClusterId']
1345
1687
  end
1346
1688
  end
1347
1689
 
@@ -1354,15 +1696,18 @@ module TencentCloud
1354
1696
  # @type Plaintext: String
1355
1697
  # @param CiphertextBlob: 数据密钥DataKey加密后的密文,用户需要自行保存该密文,KMS不托管用户的数据密钥。可以通过Decrypt接口从CiphertextBlob中获取数据密钥DataKey明文
1356
1698
  # @type CiphertextBlob: String
1699
+ # @param DataKeyId: DataKey的全局唯一标识,当KMS托管数据密钥时返回。
1700
+ # @type DataKeyId: String
1357
1701
  # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1358
1702
  # @type RequestId: String
1359
1703
 
1360
- attr_accessor :KeyId, :Plaintext, :CiphertextBlob, :RequestId
1704
+ attr_accessor :KeyId, :Plaintext, :CiphertextBlob, :DataKeyId, :RequestId
1361
1705
 
1362
- def initialize(keyid=nil, plaintext=nil, ciphertextblob=nil, requestid=nil)
1706
+ def initialize(keyid=nil, plaintext=nil, ciphertextblob=nil, datakeyid=nil, requestid=nil)
1363
1707
  @KeyId = keyid
1364
1708
  @Plaintext = plaintext
1365
1709
  @CiphertextBlob = ciphertextblob
1710
+ @DataKeyId = datakeyid
1366
1711
  @RequestId = requestid
1367
1712
  end
1368
1713
 
@@ -1370,6 +1715,7 @@ module TencentCloud
1370
1715
  @KeyId = params['KeyId']
1371
1716
  @Plaintext = params['Plaintext']
1372
1717
  @CiphertextBlob = params['CiphertextBlob']
1718
+ @DataKeyId = params['DataKeyId']
1373
1719
  @RequestId = params['RequestId']
1374
1720
  end
1375
1721
  end
@@ -1410,6 +1756,86 @@ module TencentCloud
1410
1756
  end
1411
1757
  end
1412
1758
 
1759
+ # GetDataKeyCiphertextBlob请求参数结构体
1760
+ class GetDataKeyCiphertextBlobRequest < TencentCloud::Common::AbstractModel
1761
+ # @param DataKeyId: 数据密钥的唯一标志符
1762
+ # @type DataKeyId: String
1763
+
1764
+ attr_accessor :DataKeyId
1765
+
1766
+ def initialize(datakeyid=nil)
1767
+ @DataKeyId = datakeyid
1768
+ end
1769
+
1770
+ def deserialize(params)
1771
+ @DataKeyId = params['DataKeyId']
1772
+ end
1773
+ end
1774
+
1775
+ # GetDataKeyCiphertextBlob返回参数结构体
1776
+ class GetDataKeyCiphertextBlobResponse < TencentCloud::Common::AbstractModel
1777
+ # @param CiphertextBlob: 数据密钥的密文
1778
+ # @type CiphertextBlob: String
1779
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1780
+ # @type RequestId: String
1781
+
1782
+ attr_accessor :CiphertextBlob, :RequestId
1783
+
1784
+ def initialize(ciphertextblob=nil, requestid=nil)
1785
+ @CiphertextBlob = ciphertextblob
1786
+ @RequestId = requestid
1787
+ end
1788
+
1789
+ def deserialize(params)
1790
+ @CiphertextBlob = params['CiphertextBlob']
1791
+ @RequestId = params['RequestId']
1792
+ end
1793
+ end
1794
+
1795
+ # GetDataKeyPlaintext请求参数结构体
1796
+ class GetDataKeyPlaintextRequest < TencentCloud::Common::AbstractModel
1797
+ # @param DataKeyId: 数据密钥的唯一标志符
1798
+ # @type DataKeyId: String
1799
+ # @param EncryptionPublicKey: PEM 格式公钥字符串,支持 RSA2048 和 SM2 公钥,用于对返回数据中的 Plaintext 值进行加密。若为空,则不对 Plaintext 值加密。
1800
+ # @type EncryptionPublicKey: String
1801
+ # @param EncryptionAlgorithm: 非对称加密算法,配合 EncryptionPublicKey 对返回数据进行加密。目前支持:SM2(以 C1C3C2 格式返回密文),SM2_C1C3C2_ASN1 (以 C1C3C2 ASN1 格式返回密文),RSAES_PKCS1_V1_5,RSAES_OAEP_SHA_1,RSAES_OAEP_SHA_256。若为空,则默认为 SM2。
1802
+ # @type EncryptionAlgorithm: String
1803
+
1804
+ attr_accessor :DataKeyId, :EncryptionPublicKey, :EncryptionAlgorithm
1805
+
1806
+ def initialize(datakeyid=nil, encryptionpublickey=nil, encryptionalgorithm=nil)
1807
+ @DataKeyId = datakeyid
1808
+ @EncryptionPublicKey = encryptionpublickey
1809
+ @EncryptionAlgorithm = encryptionalgorithm
1810
+ end
1811
+
1812
+ def deserialize(params)
1813
+ @DataKeyId = params['DataKeyId']
1814
+ @EncryptionPublicKey = params['EncryptionPublicKey']
1815
+ @EncryptionAlgorithm = params['EncryptionAlgorithm']
1816
+ end
1817
+ end
1818
+
1819
+ # GetDataKeyPlaintext返回参数结构体
1820
+ class GetDataKeyPlaintextResponse < TencentCloud::Common::AbstractModel
1821
+ # @param Plaintext: 若调用时未提供 EncryptionPublicKey,该字段值为 Base64 编码的明文,需进行 Base64 解码以获取明文。 若调用时提供了 EncryptionPublicKey,则该字段值为使用 EncryptionPublicKey 公钥进行非对称加密后的 Base64 编码的密文。需在 Base64 解码后,使用用户上传的公钥对应的私钥进行进一步解密,以获取明文。
1822
+ # @type Plaintext: String
1823
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1824
+ # @type RequestId: String
1825
+
1826
+ attr_accessor :Plaintext, :RequestId
1827
+
1828
+ def initialize(plaintext=nil, requestid=nil)
1829
+ @Plaintext = plaintext
1830
+ @RequestId = requestid
1831
+ end
1832
+
1833
+ def deserialize(params)
1834
+ @Plaintext = params['Plaintext']
1835
+ @RequestId = params['RequestId']
1836
+ end
1837
+ end
1838
+
1413
1839
  # GetKeyRotationStatus请求参数结构体
1414
1840
  class GetKeyRotationStatusRequest < TencentCloud::Common::AbstractModel
1415
1841
  # @param KeyId: CMK唯一标识符
@@ -1600,7 +2026,7 @@ module TencentCloud
1600
2026
  # @type ProExpireTime: Integer
1601
2027
  # @param ProRenewFlag: 旗舰版是否自动续费:0-不自动续费,1-自动续费
1602
2028
  # @type ProRenewFlag: Integer
1603
- # @param ProResourceId: 旗舰版购买记录的唯一性标识。如果为开通旗舰版,则返回值为空
2029
+ # @param ProResourceId: 旗舰版购买记录的唯一性标识。如果未开通旗舰版,则返回值为空
1604
2030
  # @type ProResourceId: String
1605
2031
  # @param ExclusiveVSMEnabled: 是否开通 KMS 托管版
1606
2032
  # @type ExclusiveVSMEnabled: Boolean
@@ -1614,12 +2040,20 @@ module TencentCloud
1614
2040
  # @type CmkLimit: Integer
1615
2041
  # @param ExclusiveHSMList: 返回独享集群组
1616
2042
  # @type ExclusiveHSMList: Array
2043
+ # @param IsAllowedDataKeyHosted: 是否支持数据密钥托管。1:支持,0:不支持。
2044
+ # @type IsAllowedDataKeyHosted: Boolean
2045
+ # @param DataKeyLimit: IsAllowedDataKeyHosted为1时有效,数据密钥的购买额度
2046
+ # @type DataKeyLimit: Integer
2047
+ # @param FreeDataKeyLimit: IsAllowedDataKeyHosted为1时有效,数据密钥免费额度。
2048
+ # @type FreeDataKeyLimit: Integer
2049
+ # @param DataKeyUsedCount: IsAllowedDataKeyHosted为1时有效,已使用的数据密钥数量。
2050
+ # @type DataKeyUsedCount: Integer
1617
2051
  # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
1618
2052
  # @type RequestId: String
1619
2053
 
1620
- attr_accessor :ServiceEnabled, :InvalidType, :UserLevel, :ProExpireTime, :ProRenewFlag, :ProResourceId, :ExclusiveVSMEnabled, :ExclusiveHSMEnabled, :SubscriptionInfo, :CmkUserCount, :CmkLimit, :ExclusiveHSMList, :RequestId
2054
+ attr_accessor :ServiceEnabled, :InvalidType, :UserLevel, :ProExpireTime, :ProRenewFlag, :ProResourceId, :ExclusiveVSMEnabled, :ExclusiveHSMEnabled, :SubscriptionInfo, :CmkUserCount, :CmkLimit, :ExclusiveHSMList, :IsAllowedDataKeyHosted, :DataKeyLimit, :FreeDataKeyLimit, :DataKeyUsedCount, :RequestId
1621
2055
 
1622
- def initialize(serviceenabled=nil, invalidtype=nil, userlevel=nil, proexpiretime=nil, prorenewflag=nil, proresourceid=nil, exclusivevsmenabled=nil, exclusivehsmenabled=nil, subscriptioninfo=nil, cmkusercount=nil, cmklimit=nil, exclusivehsmlist=nil, requestid=nil)
2056
+ def initialize(serviceenabled=nil, invalidtype=nil, userlevel=nil, proexpiretime=nil, prorenewflag=nil, proresourceid=nil, exclusivevsmenabled=nil, exclusivehsmenabled=nil, subscriptioninfo=nil, cmkusercount=nil, cmklimit=nil, exclusivehsmlist=nil, isalloweddatakeyhosted=nil, datakeylimit=nil, freedatakeylimit=nil, datakeyusedcount=nil, requestid=nil)
1623
2057
  @ServiceEnabled = serviceenabled
1624
2058
  @InvalidType = invalidtype
1625
2059
  @UserLevel = userlevel
@@ -1632,6 +2066,10 @@ module TencentCloud
1632
2066
  @CmkUserCount = cmkusercount
1633
2067
  @CmkLimit = cmklimit
1634
2068
  @ExclusiveHSMList = exclusivehsmlist
2069
+ @IsAllowedDataKeyHosted = isalloweddatakeyhosted
2070
+ @DataKeyLimit = datakeylimit
2071
+ @FreeDataKeyLimit = freedatakeylimit
2072
+ @DataKeyUsedCount = datakeyusedcount
1635
2073
  @RequestId = requestid
1636
2074
  end
1637
2075
 
@@ -1655,6 +2093,71 @@ module TencentCloud
1655
2093
  @ExclusiveHSMList << exclusivehsm_tmp
1656
2094
  end
1657
2095
  end
2096
+ @IsAllowedDataKeyHosted = params['IsAllowedDataKeyHosted']
2097
+ @DataKeyLimit = params['DataKeyLimit']
2098
+ @FreeDataKeyLimit = params['FreeDataKeyLimit']
2099
+ @DataKeyUsedCount = params['DataKeyUsedCount']
2100
+ @RequestId = params['RequestId']
2101
+ end
2102
+ end
2103
+
2104
+ # ImportDataKey请求参数结构体
2105
+ class ImportDataKeyRequest < TencentCloud::Common::AbstractModel
2106
+ # @param DataKeyName: 数据密钥的名称
2107
+ # @type DataKeyName: String
2108
+ # @param ImportKeyMaterial: 如果导入的是明文数据密钥,则是base64 转换后的明文数据密钥, 如果导入的是密文数据密钥,则是由KMS GenerateDataKey接口生成的密文数据密钥。
2109
+ # @type ImportKeyMaterial: String
2110
+ # @param ImportType: 1:密文导入(由KMS接口生成的密文数据密钥),2:明文导入。
2111
+ # @type ImportType: Integer
2112
+ # @param Description: 数据密钥 的描述,最大100字节
2113
+ # @type Description: String
2114
+ # @param KeyId: 当导入密文数据密钥时,无需传入根密钥,如果传入会校验此KeyId是否和密文中一致。
2115
+ # 当导入明文数据密钥,KeyId 不能为空,会根据指定的根密钥加密数据密钥。
2116
+ # @type KeyId: String
2117
+ # @param HsmClusterId: KMS 独享版对应的 HSM 集群 ID。如果指定HsmClusterId,表明根密钥在此集群里,会校验KeyId是否和HsmClusterId对应。
2118
+ # @type HsmClusterId: String
2119
+
2120
+ attr_accessor :DataKeyName, :ImportKeyMaterial, :ImportType, :Description, :KeyId, :HsmClusterId
2121
+
2122
+ def initialize(datakeyname=nil, importkeymaterial=nil, importtype=nil, description=nil, keyid=nil, hsmclusterid=nil)
2123
+ @DataKeyName = datakeyname
2124
+ @ImportKeyMaterial = importkeymaterial
2125
+ @ImportType = importtype
2126
+ @Description = description
2127
+ @KeyId = keyid
2128
+ @HsmClusterId = hsmclusterid
2129
+ end
2130
+
2131
+ def deserialize(params)
2132
+ @DataKeyName = params['DataKeyName']
2133
+ @ImportKeyMaterial = params['ImportKeyMaterial']
2134
+ @ImportType = params['ImportType']
2135
+ @Description = params['Description']
2136
+ @KeyId = params['KeyId']
2137
+ @HsmClusterId = params['HsmClusterId']
2138
+ end
2139
+ end
2140
+
2141
+ # ImportDataKey返回参数结构体
2142
+ class ImportDataKeyResponse < TencentCloud::Common::AbstractModel
2143
+ # @param KeyId: CMK的全局唯一标识
2144
+ # @type KeyId: String
2145
+ # @param DataKeyId: DataKey的全局唯一标识 否 官网/国内&国际站展示
2146
+ # @type DataKeyId: String
2147
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
2148
+ # @type RequestId: String
2149
+
2150
+ attr_accessor :KeyId, :DataKeyId, :RequestId
2151
+
2152
+ def initialize(keyid=nil, datakeyid=nil, requestid=nil)
2153
+ @KeyId = keyid
2154
+ @DataKeyId = datakeyid
2155
+ @RequestId = requestid
2156
+ end
2157
+
2158
+ def deserialize(params)
2159
+ @KeyId = params['KeyId']
2160
+ @DataKeyId = params['DataKeyId']
1658
2161
  @RequestId = params['RequestId']
1659
2162
  end
1660
2163
  end
@@ -1863,6 +2366,148 @@ module TencentCloud
1863
2366
  end
1864
2367
  end
1865
2368
 
2369
+ # ListDataKeyDetail请求参数结构体
2370
+ class ListDataKeyDetailRequest < TencentCloud::Common::AbstractModel
2371
+ # @param Offset: 含义跟 SQL 查询的 Offset 一致,表示本次获取从按一定顺序排列数组的第 Offset 个元素开始,缺省为0
2372
+ # @type Offset: Integer
2373
+ # @param Limit: 含义跟 SQL 查询的 Limit 一致,表示本次最多获取 Limit 个元素。缺省值为10,最大值为200
2374
+ # @type Limit: Integer
2375
+ # @param Role: 根据创建者角色筛选,默认 0 表示用户自己创建的数据密钥, 1 表示授权其它云产品自动创建的数据密钥
2376
+ # @type Role: Integer
2377
+ # @param OrderType: 根据DataKey创建时间排序, 0 表示按照降序排序,1表示按照升序排序
2378
+ # @type OrderType: Integer
2379
+ # @param KeyState: 根据DataKey状态筛选, 0表示全部DataKey, 1 表示仅查询Enabled DataKey, 2 表示仅查询Disabled DataKey,3 表示查询PendingDelete 状态的DataKey(处于计划删除状态的Key)。
2380
+ # @type KeyState: Integer
2381
+ # @param SearchKeyAlias: 根据DataKeyId或者DataKeyName进行模糊匹配查询
2382
+ # @type SearchKeyAlias: String
2383
+ # @param Origin: 根据DateKey类型筛选, "TENCENT_KMS" 表示筛选密钥材料由KMS创建的数据密钥, "EXTERNAL" 表示筛选密钥材料需要用户导入的 EXTERNAL类型数据密钥,"ALL" 或者不设置表示两种类型都查询,大小写敏感。
2384
+ # @type Origin: String
2385
+ # @param HsmClusterId: KMS 高级版对应的 HSM 集群 ID。
2386
+ # @type HsmClusterId: String
2387
+ # @param KeyId: 根密钥全局唯一标识符
2388
+ # @type KeyId: String
2389
+ # @param DataKeyLen: 数据密钥的长度
2390
+ # @type DataKeyLen: Integer
2391
+
2392
+ attr_accessor :Offset, :Limit, :Role, :OrderType, :KeyState, :SearchKeyAlias, :Origin, :HsmClusterId, :KeyId, :DataKeyLen
2393
+
2394
+ def initialize(offset=nil, limit=nil, role=nil, ordertype=nil, keystate=nil, searchkeyalias=nil, origin=nil, hsmclusterid=nil, keyid=nil, datakeylen=nil)
2395
+ @Offset = offset
2396
+ @Limit = limit
2397
+ @Role = role
2398
+ @OrderType = ordertype
2399
+ @KeyState = keystate
2400
+ @SearchKeyAlias = searchkeyalias
2401
+ @Origin = origin
2402
+ @HsmClusterId = hsmclusterid
2403
+ @KeyId = keyid
2404
+ @DataKeyLen = datakeylen
2405
+ end
2406
+
2407
+ def deserialize(params)
2408
+ @Offset = params['Offset']
2409
+ @Limit = params['Limit']
2410
+ @Role = params['Role']
2411
+ @OrderType = params['OrderType']
2412
+ @KeyState = params['KeyState']
2413
+ @SearchKeyAlias = params['SearchKeyAlias']
2414
+ @Origin = params['Origin']
2415
+ @HsmClusterId = params['HsmClusterId']
2416
+ @KeyId = params['KeyId']
2417
+ @DataKeyLen = params['DataKeyLen']
2418
+ end
2419
+ end
2420
+
2421
+ # ListDataKeyDetail返回参数结构体
2422
+ class ListDataKeyDetailResponse < TencentCloud::Common::AbstractModel
2423
+ # @param DataKeyMetadatas: 返回的属性信息列表。
2424
+ # @type DataKeyMetadatas: Array
2425
+ # @param TotalCount: DataKey的总数量
2426
+ # @type TotalCount: Integer
2427
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
2428
+ # @type RequestId: String
2429
+
2430
+ attr_accessor :DataKeyMetadatas, :TotalCount, :RequestId
2431
+
2432
+ def initialize(datakeymetadatas=nil, totalcount=nil, requestid=nil)
2433
+ @DataKeyMetadatas = datakeymetadatas
2434
+ @TotalCount = totalcount
2435
+ @RequestId = requestid
2436
+ end
2437
+
2438
+ def deserialize(params)
2439
+ unless params['DataKeyMetadatas'].nil?
2440
+ @DataKeyMetadatas = []
2441
+ params['DataKeyMetadatas'].each do |i|
2442
+ datakeymetadata_tmp = DataKeyMetadata.new
2443
+ datakeymetadata_tmp.deserialize(i)
2444
+ @DataKeyMetadatas << datakeymetadata_tmp
2445
+ end
2446
+ end
2447
+ @TotalCount = params['TotalCount']
2448
+ @RequestId = params['RequestId']
2449
+ end
2450
+ end
2451
+
2452
+ # ListDataKeys请求参数结构体
2453
+ class ListDataKeysRequest < TencentCloud::Common::AbstractModel
2454
+ # @param Offset: 含义跟 SQL 查询的 Offset 一致,表示本次获取从按一定顺序排列数组的第 Offset 个元素开始,缺省为0
2455
+ # @type Offset: Integer
2456
+ # @param Limit: 含义跟 SQL 查询的 Limit 一致,表示本次最多获取 Limit 个元素。缺省值为10,最大值为200
2457
+ # @type Limit: Integer
2458
+ # @param Role: 根据创建者角色筛选,默认 0 表示用户自己创建的数据密钥, 1 表示授权其它云产品自动创建的数据密钥
2459
+ # @type Role: Integer
2460
+ # @param HsmClusterId: KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)
2461
+ # @type HsmClusterId: String
2462
+
2463
+ attr_accessor :Offset, :Limit, :Role, :HsmClusterId
2464
+
2465
+ def initialize(offset=nil, limit=nil, role=nil, hsmclusterid=nil)
2466
+ @Offset = offset
2467
+ @Limit = limit
2468
+ @Role = role
2469
+ @HsmClusterId = hsmclusterid
2470
+ end
2471
+
2472
+ def deserialize(params)
2473
+ @Offset = params['Offset']
2474
+ @Limit = params['Limit']
2475
+ @Role = params['Role']
2476
+ @HsmClusterId = params['HsmClusterId']
2477
+ end
2478
+ end
2479
+
2480
+ # ListDataKeys返回参数结构体
2481
+ class ListDataKeysResponse < TencentCloud::Common::AbstractModel
2482
+ # @param DataKeys: 数据密钥Id列表数组
2483
+ # @type DataKeys: Array
2484
+ # @param TotalCount: 数据密钥的总数量
2485
+ # @type TotalCount: Integer
2486
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
2487
+ # @type RequestId: String
2488
+
2489
+ attr_accessor :DataKeys, :TotalCount, :RequestId
2490
+
2491
+ def initialize(datakeys=nil, totalcount=nil, requestid=nil)
2492
+ @DataKeys = datakeys
2493
+ @TotalCount = totalcount
2494
+ @RequestId = requestid
2495
+ end
2496
+
2497
+ def deserialize(params)
2498
+ unless params['DataKeys'].nil?
2499
+ @DataKeys = []
2500
+ params['DataKeys'].each do |i|
2501
+ datakey_tmp = DataKey.new
2502
+ datakey_tmp.deserialize(i)
2503
+ @DataKeys << datakey_tmp
2504
+ end
2505
+ end
2506
+ @TotalCount = params['TotalCount']
2507
+ @RequestId = params['RequestId']
2508
+ end
2509
+ end
2510
+
1866
2511
  # ListKeyDetail请求参数结构体
1867
2512
  class ListKeyDetailRequest < TencentCloud::Common::AbstractModel
1868
2513
  # @param Offset: 含义跟 SQL 查询的 Offset 一致,表示本次获取从按一定顺序排列数组的第 Offset 个元素开始,缺省为0
@@ -2292,6 +2937,50 @@ module TencentCloud
2292
2937
  end
2293
2938
  end
2294
2939
 
2940
+ # ScheduleDataKeyDeletion请求参数结构体
2941
+ class ScheduleDataKeyDeletionRequest < TencentCloud::Common::AbstractModel
2942
+ # @param DataKeyId: 数据密钥的唯一标志符
2943
+ # @type DataKeyId: String
2944
+ # @param PendingWindowInDays: 计划删除时间区间[7,30]
2945
+ # @type PendingWindowInDays: Integer
2946
+
2947
+ attr_accessor :DataKeyId, :PendingWindowInDays
2948
+
2949
+ def initialize(datakeyid=nil, pendingwindowindays=nil)
2950
+ @DataKeyId = datakeyid
2951
+ @PendingWindowInDays = pendingwindowindays
2952
+ end
2953
+
2954
+ def deserialize(params)
2955
+ @DataKeyId = params['DataKeyId']
2956
+ @PendingWindowInDays = params['PendingWindowInDays']
2957
+ end
2958
+ end
2959
+
2960
+ # ScheduleDataKeyDeletion返回参数结构体
2961
+ class ScheduleDataKeyDeletionResponse < TencentCloud::Common::AbstractModel
2962
+ # @param DeletionDate: 计划删除执行时间
2963
+ # @type DeletionDate: Integer
2964
+ # @param DataKeyId: 唯一标志被计划删除的数据密钥
2965
+ # @type DataKeyId: String
2966
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
2967
+ # @type RequestId: String
2968
+
2969
+ attr_accessor :DeletionDate, :DataKeyId, :RequestId
2970
+
2971
+ def initialize(deletiondate=nil, datakeyid=nil, requestid=nil)
2972
+ @DeletionDate = deletiondate
2973
+ @DataKeyId = datakeyid
2974
+ @RequestId = requestid
2975
+ end
2976
+
2977
+ def deserialize(params)
2978
+ @DeletionDate = params['DeletionDate']
2979
+ @DataKeyId = params['DataKeyId']
2980
+ @RequestId = params['RequestId']
2981
+ end
2982
+ end
2983
+
2295
2984
  # ScheduleKeyDeletion请求参数结构体
2296
2985
  class ScheduleKeyDeletionRequest < TencentCloud::Common::AbstractModel
2297
2986
  # @param KeyId: CMK的唯一标志
@@ -2500,6 +3189,78 @@ module TencentCloud
2500
3189
  end
2501
3190
  end
2502
3191
 
3192
+ # UpdateDataKeyDescription请求参数结构体
3193
+ class UpdateDataKeyDescriptionRequest < TencentCloud::Common::AbstractModel
3194
+ # @param DataKeyId: 数据密钥的唯一标志符
3195
+ # @type DataKeyId: String
3196
+ # @param Description: 数据密钥 的描述,最大100字节
3197
+ # @type Description: String
3198
+
3199
+ attr_accessor :DataKeyId, :Description
3200
+
3201
+ def initialize(datakeyid=nil, description=nil)
3202
+ @DataKeyId = datakeyid
3203
+ @Description = description
3204
+ end
3205
+
3206
+ def deserialize(params)
3207
+ @DataKeyId = params['DataKeyId']
3208
+ @Description = params['Description']
3209
+ end
3210
+ end
3211
+
3212
+ # UpdateDataKeyDescription返回参数结构体
3213
+ class UpdateDataKeyDescriptionResponse < TencentCloud::Common::AbstractModel
3214
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
3215
+ # @type RequestId: String
3216
+
3217
+ attr_accessor :RequestId
3218
+
3219
+ def initialize(requestid=nil)
3220
+ @RequestId = requestid
3221
+ end
3222
+
3223
+ def deserialize(params)
3224
+ @RequestId = params['RequestId']
3225
+ end
3226
+ end
3227
+
3228
+ # UpdateDataKeyName请求参数结构体
3229
+ class UpdateDataKeyNameRequest < TencentCloud::Common::AbstractModel
3230
+ # @param DataKeyId: 数据密钥的唯一标志符
3231
+ # @type DataKeyId: String
3232
+ # @param DataKeyName: 数据密钥的名称
3233
+ # @type DataKeyName: String
3234
+
3235
+ attr_accessor :DataKeyId, :DataKeyName
3236
+
3237
+ def initialize(datakeyid=nil, datakeyname=nil)
3238
+ @DataKeyId = datakeyid
3239
+ @DataKeyName = datakeyname
3240
+ end
3241
+
3242
+ def deserialize(params)
3243
+ @DataKeyId = params['DataKeyId']
3244
+ @DataKeyName = params['DataKeyName']
3245
+ end
3246
+ end
3247
+
3248
+ # UpdateDataKeyName返回参数结构体
3249
+ class UpdateDataKeyNameResponse < TencentCloud::Common::AbstractModel
3250
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
3251
+ # @type RequestId: String
3252
+
3253
+ attr_accessor :RequestId
3254
+
3255
+ def initialize(requestid=nil)
3256
+ @RequestId = requestid
3257
+ end
3258
+
3259
+ def deserialize(params)
3260
+ @RequestId = params['RequestId']
3261
+ end
3262
+ end
3263
+
2503
3264
  # UpdateKeyDescription请求参数结构体
2504
3265
  class UpdateKeyDescriptionRequest < TencentCloud::Common::AbstractModel
2505
3266
  # @param Description: 新的描述信息,最大支持1024字节
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tencentcloud-sdk-kms
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1074
4
+ version: 3.0.1092
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tencent Cloud
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-06-04 00:00:00.000000000 Z
11
+ date: 2025-07-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tencentcloud-sdk-common