@@ -25,6 +25,62 @@ class KmsClient(AbstractClient):
2525 _endpoint = 'kms.tencentcloudapi.com'
2626
2727
28+ def AsymmetricRsaDecrypt (self , request ):
29+ """使用指定的RSA非对称密钥的私钥进行数据解密,密文必须是使用对应公钥加密的。处于Enabled 状态的非对称密钥才能进行解密操作。
30+
31+ :param request: Request instance for AsymmetricRsaDecrypt.
32+ :type request: :class:`tencentcloud.kms.v20190118.models.AsymmetricRsaDecryptRequest`
33+ :rtype: :class:`tencentcloud.kms.v20190118.models.AsymmetricRsaDecryptResponse`
34+
35+ """
36+ try :
37+ params = request ._serialize ()
38+ body = self .call ("AsymmetricRsaDecrypt" , params )
39+ response = json .loads (body )
40+ if "Error" not in response ["Response" ]:
41+ model = models .AsymmetricRsaDecryptResponse ()
42+ model ._deserialize (response ["Response" ])
43+ return model
44+ else :
45+ code = response ["Response" ]["Error" ]["Code" ]
46+ message = response ["Response" ]["Error" ]["Message" ]
47+ reqid = response ["Response" ]["RequestId" ]
48+ raise TencentCloudSDKException (code , message , reqid )
49+ except Exception as e :
50+ if isinstance (e , TencentCloudSDKException ):
51+ raise
52+ else :
53+ raise TencentCloudSDKException (e .message , e .message )
54+
55+
56+ def AsymmetricSm2Decrypt (self , request ):
57+ """使用指定的SM2非对称密钥的私钥进行数据解密,密文必须是使用对应公钥加密的。处于Enabled 状态的非对称密钥才能进行解密操作。传入的密文的长度不能超过256字节。
58+
59+ :param request: Request instance for AsymmetricSm2Decrypt.
60+ :type request: :class:`tencentcloud.kms.v20190118.models.AsymmetricSm2DecryptRequest`
61+ :rtype: :class:`tencentcloud.kms.v20190118.models.AsymmetricSm2DecryptResponse`
62+
63+ """
64+ try :
65+ params = request ._serialize ()
66+ body = self .call ("AsymmetricSm2Decrypt" , params )
67+ response = json .loads (body )
68+ if "Error" not in response ["Response" ]:
69+ model = models .AsymmetricSm2DecryptResponse ()
70+ model ._deserialize (response ["Response" ])
71+ return model
72+ else :
73+ code = response ["Response" ]["Error" ]["Code" ]
74+ message = response ["Response" ]["Error" ]["Message" ]
75+ reqid = response ["Response" ]["RequestId" ]
76+ raise TencentCloudSDKException (code , message , reqid )
77+ except Exception as e :
78+ if isinstance (e , TencentCloudSDKException ):
79+ raise
80+ else :
81+ raise TencentCloudSDKException (e .message , e .message )
82+
83+
2884 def CancelKeyDeletion (self , request ):
2985 """取消CMK的计划删除操作
3086
@@ -501,6 +557,34 @@ def GetParametersForImport(self, request):
501557 raise TencentCloudSDKException (e .message , e .message )
502558
503559
560+ def GetPublicKey (self , request ):
561+ """该接口用户获取 KeyUsage为ASYMMETRIC_DECRYPT_RSA_2048 和 ASYMMETRIC_DECRYPT_SM2 的非对称密钥的公钥信息,使用该公钥用户可在本地进行数据加密,使用该公钥加密的数据只能通过KMS使用对应的私钥进行解密。只有处于Enabled状态的非对称密钥才可能获取公钥。
562+
563+ :param request: Request instance for GetPublicKey.
564+ :type request: :class:`tencentcloud.kms.v20190118.models.GetPublicKeyRequest`
565+ :rtype: :class:`tencentcloud.kms.v20190118.models.GetPublicKeyResponse`
566+
567+ """
568+ try :
569+ params = request ._serialize ()
570+ body = self .call ("GetPublicKey" , params )
571+ response = json .loads (body )
572+ if "Error" not in response ["Response" ]:
573+ model = models .GetPublicKeyResponse ()
574+ model ._deserialize (response ["Response" ])
575+ return model
576+ else :
577+ code = response ["Response" ]["Error" ]["Code" ]
578+ message = response ["Response" ]["Error" ]["Message" ]
579+ reqid = response ["Response" ]["RequestId" ]
580+ raise TencentCloudSDKException (code , message , reqid )
581+ except Exception as e :
582+ if isinstance (e , TencentCloudSDKException ):
583+ raise
584+ else :
585+ raise TencentCloudSDKException (e .message , e .message )
586+
587+
504588 def GetServiceStatus (self , request ):
505589 """用于查询该用户是否已开通KMS服务
506590
@@ -558,6 +642,34 @@ def ImportKeyMaterial(self, request):
558642 raise TencentCloudSDKException (e .message , e .message )
559643
560644
645+ def ListAlgorithms (self , request ):
646+ """列出当前Region支持的加密方式
647+
648+ :param request: Request instance for ListAlgorithms.
649+ :type request: :class:`tencentcloud.kms.v20190118.models.ListAlgorithmsRequest`
650+ :rtype: :class:`tencentcloud.kms.v20190118.models.ListAlgorithmsResponse`
651+
652+ """
653+ try :
654+ params = request ._serialize ()
655+ body = self .call ("ListAlgorithms" , params )
656+ response = json .loads (body )
657+ if "Error" not in response ["Response" ]:
658+ model = models .ListAlgorithmsResponse ()
659+ model ._deserialize (response ["Response" ])
660+ return model
661+ else :
662+ code = response ["Response" ]["Error" ]["Code" ]
663+ message = response ["Response" ]["Error" ]["Message" ]
664+ reqid = response ["Response" ]["RequestId" ]
665+ raise TencentCloudSDKException (code , message , reqid )
666+ except Exception as e :
667+ if isinstance (e , TencentCloudSDKException ):
668+ raise
669+ else :
670+ raise TencentCloudSDKException (e .message , e .message )
671+
672+
561673 def ListKeyDetail (self , request ):
562674 """根据指定Offset和Limit获取主密钥列表详情。
563675
0 commit comments