Class: TencentCloud::Kms::V20190118::CreateKeyRequest

Inherits:
Common::AbstractModel
  • Object
show all
Defined in:
lib/v20190118/models.rb

Overview

CreateKey请求参数结构体

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(_alias = nil, description = nil, keyusage = nil, type = nil, tags = nil, hsmclusterid = nil) ⇒ CreateKeyRequest

Returns a new instance of CreateKeyRequest.



289
290
291
292
293
294
295
296
# File 'lib/v20190118/models.rb', line 289

def initialize(_alias=nil, description=nil, keyusage=nil, type=nil, tags=nil, hsmclusterid=nil)
  @Alias = _alias
  @Description = description
  @KeyUsage = keyusage
  @Type = type
  @Tags = tags
  @HsmClusterId = hsmclusterid
end

Instance Attribute Details

#AliasObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def Alias
  @Alias
end

#DescriptionObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def Description
  @Description
end

#HsmClusterIdObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def HsmClusterId
  @HsmClusterId
end

#KeyUsageObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def KeyUsage
  @KeyUsage
end

#TagsObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def Tags
  @Tags
end

#TypeObject

Parameters:

  • Alias:

    作为密钥更容易辨识,更容易被人看懂的别名, 不可为空,1-60个字母数字 - _ 的组合,首字符必须为字母或者数字。以 kms- 作为前缀的用于云产品使用,Alias 不可重复。

  • Description:

    CMK 的描述,最大1024字节

  • KeyUsage:

    指定key的用途,默认为 “ENCRYPT_DECRYPT” 表示创建对称加解密密钥,其它支持用途 “ASYMMETRIC_DECRYPT_RSA_2048” 表示创建用于加解密的RSA2048非对称密钥,“ASYMMETRIC_DECRYPT_SM2” 表示创建用于加解密的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_SM2” 表示创建用于签名验签的SM2非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECC” 表示创建用于签名验签的ECC非对称密钥,“ASYMMETRIC_SIGN_VERIFY_RSA_2048” 表示创建用于签名验签的RSA_2048非对称密钥,“ASYMMETRIC_SIGN_VERIFY_ECDSA384”表示创建用于签名验签的 ECDSA384 非对称秘钥。完整的秘钥用途与算法支持列表可通过 ListAlgorithms 接口获取。

  • Type:

    指定key类型,默认为1,1表示默认类型,由KMS创建CMK密钥,2 表示EXTERNAL 类型,该类型需要用户导入密钥材料,参考 GetParametersForImport 和 ImportKeyMaterial 接口

  • Tags:

    标签列表

  • HsmClusterId:

    KMS 高级版对应的 HSM 集群 ID(仅对 KMS 独占版/托管版服务实例有效)。



287
288
289
# File 'lib/v20190118/models.rb', line 287

def Type
  @Type
end

Instance Method Details

#deserialize(params) ⇒ Object



298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
# File 'lib/v20190118/models.rb', line 298

def deserialize(params)
  @Alias = params['Alias']
  @Description = params['Description']
  @KeyUsage = params['KeyUsage']
  @Type = params['Type']
  unless params['Tags'].nil?
    @Tags = []
    params['Tags'].each do |i|
      tag_tmp = Tag.new
      tag_tmp.deserialize(i)
      @Tags << tag_tmp
    end
  end
  @HsmClusterId = params['HsmClusterId']
end