# frozen_string_literal: true # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. module TencentCloud module Ssm module V20190923 # CreateProductSecret请求参数结构体 class CreateProductSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。 # @type SecretName: String # @param UserNamePrefix: 用户账号名前缀,由用户自行指定,长度限定在8个字符以内, # 可选字符集包括: # 数字字符:[0, 9], # 小写字符:[a, z], # 大写字符:[A, Z], # 特殊字符(全英文符号):下划线(_), # 前缀必须以大写或小写字母开头。 # @type UserNamePrefix: String # @param ProductName: 凭据所绑定的云产品名称,如Mysql,可以通过DescribeSupportedProducts接口获取所支持的云产品名称。 # @type ProductName: String # @param InstanceID: 云产品实例ID。 # @type InstanceID: String # @param Domains: 账号的域名,IP形式,支持填入%。 # @type Domains: Array # @param PrivilegesList: 将凭据与云产品实例绑定时,需要授予的权限列表。 # @type PrivilegesList: Array # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。 # @type Description: String # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。 # 如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。 # 您也可以指定在同region 下自行创建的KMS CMK进行加密。 # @type KmsKeyId: String # @param Tags: 标签列表。 # @type Tags: Array # @param RotationBeginTime: 用户自定义的开始轮转时间,格式:2006-01-02 15:04:05。 # 当EnableRotation为True时,此参数必填。 # @type RotationBeginTime: String # @param EnableRotation: 是否开启轮转 # True -- 开启 # False -- 不开启 # 如果不指定,默认为False。 # @type EnableRotation: Boolean # @param RotationFrequency: 轮转周期,以天为单位,默认为1天。 # @type RotationFrequency: Integer attr_accessor :SecretName, :UserNamePrefix, :ProductName, :InstanceID, :Domains, :PrivilegesList, :Description, :KmsKeyId, :Tags, :RotationBeginTime, :EnableRotation, :RotationFrequency 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) @SecretName = secretname @UserNamePrefix = usernameprefix @ProductName = productname @InstanceID = instanceid @Domains = domains @PrivilegesList = privilegeslist @Description = description @KmsKeyId = kmskeyid @Tags = tags @RotationBeginTime = rotationbegintime @EnableRotation = enablerotation @RotationFrequency = rotationfrequency end def deserialize(params) @SecretName = params['SecretName'] @UserNamePrefix = params['UserNamePrefix'] @ProductName = params['ProductName'] @InstanceID = params['InstanceID'] @Domains = params['Domains'] unless params['PrivilegesList'].nil? @PrivilegesList = [] params['PrivilegesList'].each do |i| productprivilegeunit_tmp = ProductPrivilegeUnit.new productprivilegeunit_tmp.deserialize(i) @PrivilegesList << productprivilegeunit_tmp end end @Description = params['Description'] @KmsKeyId = params['KmsKeyId'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| tag_tmp = Tag.new tag_tmp.deserialize(i) @Tags << tag_tmp end end @RotationBeginTime = params['RotationBeginTime'] @EnableRotation = params['EnableRotation'] @RotationFrequency = params['RotationFrequency'] end end # CreateProductSecret返回参数结构体 class CreateProductSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 创建的凭据名称。 # @type SecretName: String # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误。 # @type TagCode: Integer # @param TagMsg: 标签操作的返回信息。 # @type TagMsg: String # @param FlowID: 创建云产品凭据异步任务ID号。 # @type FlowID: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :TagCode, :TagMsg, :FlowID, :RequestId def initialize(secretname=nil, tagcode=nil, tagmsg=nil, flowid=nil, requestid=nil) @SecretName = secretname @TagCode = tagcode @TagMsg = tagmsg @FlowID = flowid @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @TagCode = params['TagCode'] @TagMsg = params['TagMsg'] @FlowID = params['FlowID'] @RequestId = params['RequestId'] end end # CreateSSHKeyPairSecret请求参数结构体 class CreateSSHKeyPairSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。 # @type SecretName: String # @param ProjectId: 密钥对创建后所属的项目ID。 # @type ProjectId: Integer # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。 # @type Description: String # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。 # 如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。 # 您也可以指定在同region 下自行创建的KMS CMK进行加密。 # @type KmsKeyId: String # @param Tags: 标签列表。 # @type Tags: Array # @param SSHKeyName: 用户自定义输入的SSH密钥对的名称,可由数字,字母和下划线组成,只能以数字和字母开头,长度不超过25个字符。 # @type SSHKeyName: String attr_accessor :SecretName, :ProjectId, :Description, :KmsKeyId, :Tags, :SSHKeyName def initialize(secretname=nil, projectid=nil, description=nil, kmskeyid=nil, tags=nil, sshkeyname=nil) @SecretName = secretname @ProjectId = projectid @Description = description @KmsKeyId = kmskeyid @Tags = tags @SSHKeyName = sshkeyname end def deserialize(params) @SecretName = params['SecretName'] @ProjectId = params['ProjectId'] @Description = params['Description'] @KmsKeyId = params['KmsKeyId'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| tag_tmp = Tag.new tag_tmp.deserialize(i) @Tags << tag_tmp end end @SSHKeyName = params['SSHKeyName'] end end # CreateSSHKeyPairSecret返回参数结构体 class CreateSSHKeyPairSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 创建的凭据名称。 # @type SecretName: String # @param SSHKeyID: 创建的SSH密钥ID。 # @type SSHKeyID: String # @param SSHKeyName: 创建的SSH密钥名称。 # @type SSHKeyName: String # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误 # @type TagCode: Integer # @param TagMsg: 标签操作的返回信息。 # @type TagMsg: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :SSHKeyID, :SSHKeyName, :TagCode, :TagMsg, :RequestId def initialize(secretname=nil, sshkeyid=nil, sshkeyname=nil, tagcode=nil, tagmsg=nil, requestid=nil) @SecretName = secretname @SSHKeyID = sshkeyid @SSHKeyName = sshkeyname @TagCode = tagcode @TagMsg = tagmsg @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @SSHKeyID = params['SSHKeyID'] @SSHKeyName = params['SSHKeyName'] @TagCode = params['TagCode'] @TagMsg = params['TagMsg'] @RequestId = params['RequestId'] end end # CreateSecret请求参数结构体 class CreateSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称,同一region内不可重复,最长128字节,使用字母、数字或者 - _ 的组合,第一个字符必须为字母或者数字。一旦创建不可修改。 # @type SecretName: String # @param VersionId: 凭据版本,查询凭据信息时需要根据SecretName 和 VersionId进行查询,最长64 字节,使用字母、数字或者 - _ . 的组合并且以字母或数字开头。若为空,则使用默认的初始凭据版本号。可选,若为空或该凭据为云产品类凭据,则该版本号默认为 SSM_Current。 # @type VersionId: String # @param Description: 描述信息,用于详细描述用途等,最大支持2048字节。 # @type Description: String # @param KmsKeyId: 指定对凭据进行加密的KMS CMK。如果为空则表示使用Secrets Manager为您默认创建的CMK进行加密。您也可以指定在同region 下自行创建的KMS CMK进行加密。 # @type KmsKeyId: String # @param SecretType: 凭据类型,默认为0自定义凭据。 # @type SecretType: Integer # @param SecretBinary: 二进制凭据信息base64编码后的明文。SecretBinary 和 SecretString 必须且只能设置一个,最大支持32KB字节。 # @type SecretBinary: String # @param SecretString: 文本类型凭据信息明文(不需要进行base64编码)。SecretBinary 和 SecretString 必须且只能设置一个,最大支持32KB字节。 # @type SecretString: String # @param AdditionalConfig: JSON 格式字符串,用于指定特定凭据类型的额外配置。 # @type AdditionalConfig: String # @param Tags: 标签列表 # @type Tags: Array attr_accessor :SecretName, :VersionId, :Description, :KmsKeyId, :SecretType, :SecretBinary, :SecretString, :AdditionalConfig, :Tags def initialize(secretname=nil, versionid=nil, description=nil, kmskeyid=nil, secrettype=nil, secretbinary=nil, secretstring=nil, additionalconfig=nil, tags=nil) @SecretName = secretname @VersionId = versionid @Description = description @KmsKeyId = kmskeyid @SecretType = secrettype @SecretBinary = secretbinary @SecretString = secretstring @AdditionalConfig = additionalconfig @Tags = tags end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @Description = params['Description'] @KmsKeyId = params['KmsKeyId'] @SecretType = params['SecretType'] @SecretBinary = params['SecretBinary'] @SecretString = params['SecretString'] @AdditionalConfig = params['AdditionalConfig'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| tag_tmp = Tag.new tag_tmp.deserialize(i) @Tags << tag_tmp end end end end # CreateSecret返回参数结构体 class CreateSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 新创建的凭据名称。 # @type SecretName: String # @param VersionId: 新创建的凭据版本。 # @type VersionId: String # @param TagCode: 标签操作的返回码. 0: 成功;1: 内部错误;2: 业务处理错误 # @type TagCode: Integer # @param TagMsg: 标签操作的返回信息 # @type TagMsg: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :VersionId, :TagCode, :TagMsg, :RequestId def initialize(secretname=nil, versionid=nil, tagcode=nil, tagmsg=nil, requestid=nil) @SecretName = secretname @VersionId = versionid @TagCode = tagcode @TagMsg = tagmsg @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @TagCode = params['TagCode'] @TagMsg = params['TagMsg'] @RequestId = params['RequestId'] end end # DeleteSecret请求参数结构体 class DeleteSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要删除的凭据名称。 # @type SecretName: String # @param RecoveryWindowInDays: 指定计划删除日期,单位(天),0(默认)表示立即删除, 1-30 表示预留的天数,超出该日期之后彻底删除。 # 当凭据类型为SSH密钥对凭据时,此字段只能取值只能为0。 # @type RecoveryWindowInDays: Integer # @param CleanSSHKey: 当凭据类型为SSH密钥对凭据时,此字段有效,取值: # True -- 表示不仅仅清理此凭据中存储的SSH密钥信息,还会将SSH密钥对从CVM侧进行清理。注意,如果SSH密钥此时绑定了CVM实例,那么会清理失败。 # False -- 表示仅仅清理此凭据中存储的SSH密钥信息,不在CVM进侧进行清理。 # @type CleanSSHKey: Boolean attr_accessor :SecretName, :RecoveryWindowInDays, :CleanSSHKey def initialize(secretname=nil, recoverywindowindays=nil, cleansshkey=nil) @SecretName = secretname @RecoveryWindowInDays = recoverywindowindays @CleanSSHKey = cleansshkey end def deserialize(params) @SecretName = params['SecretName'] @RecoveryWindowInDays = params['RecoveryWindowInDays'] @CleanSSHKey = params['CleanSSHKey'] end end # DeleteSecret返回参数结构体 class DeleteSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 指定删除的凭据名称。 # @type SecretName: String # @param DeleteTime: 凭据删除的日期,unix时间戳。 # @type DeleteTime: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :DeleteTime, :RequestId def initialize(secretname=nil, deletetime=nil, requestid=nil) @SecretName = secretname @DeleteTime = deletetime @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @DeleteTime = params['DeleteTime'] @RequestId = params['RequestId'] end end # DeleteSecretVersion请求参数结构体 class DeleteSecretVersionRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定凭据名称。 # @type SecretName: String # @param VersionId: 指定该名称下需要删除的凭据的版本号。 # @type VersionId: String attr_accessor :SecretName, :VersionId def initialize(secretname=nil, versionid=nil) @SecretName = secretname @VersionId = versionid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] end end # DeleteSecretVersion返回参数结构体 class DeleteSecretVersionResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param VersionId: 凭据版本号。 # @type VersionId: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :VersionId, :RequestId def initialize(secretname=nil, versionid=nil, requestid=nil) @SecretName = secretname @VersionId = versionid @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @RequestId = params['RequestId'] end end # DescribeAsyncRequestInfo请求参数结构体 class DescribeAsyncRequestInfoRequest < TencentCloud::Common::AbstractModel # @param FlowID: 异步任务ID号 # @type FlowID: Integer attr_accessor :FlowID def initialize(flowid=nil) @FlowID = flowid end def deserialize(params) @FlowID = params['FlowID'] end end # DescribeAsyncRequestInfo返回参数结构体 class DescribeAsyncRequestInfoResponse < TencentCloud::Common::AbstractModel # @param TaskStatus: 0:处理中,1:处理成功,2:处理失败 # @type TaskStatus: Integer # @param Description: 任务描述信息。 # @type Description: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskStatus, :Description, :RequestId def initialize(taskstatus=nil, description=nil, requestid=nil) @TaskStatus = taskstatus @Description = description @RequestId = requestid end def deserialize(params) @TaskStatus = params['TaskStatus'] @Description = params['Description'] @RequestId = params['RequestId'] end end # DescribeRotationDetail请求参数结构体 class DescribeRotationDetailRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要获取凭据轮转详细信息的凭据名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # DescribeRotationDetail返回参数结构体 class DescribeRotationDetailResponse < TencentCloud::Common::AbstractModel # @param EnableRotation: 否允许轮转,true表示开启轮转,false表示禁止轮转。 # @type EnableRotation: Boolean # @param Frequency: 轮转的频率,以天为单位,默认为1天。 # @type Frequency: Integer # @param LatestRotateTime: 最近一次轮转的时间,显式可见的时间字符串,格式 2006-01-02 15:04:05。 # @type LatestRotateTime: String # @param NextRotateBeginTime: 下一次开始轮转的时间,显式可见的时间字符串,格式 2006-01-02 15:04:05。 # @type NextRotateBeginTime: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :EnableRotation, :Frequency, :LatestRotateTime, :NextRotateBeginTime, :RequestId def initialize(enablerotation=nil, frequency=nil, latestrotatetime=nil, nextrotatebegintime=nil, requestid=nil) @EnableRotation = enablerotation @Frequency = frequency @LatestRotateTime = latestrotatetime @NextRotateBeginTime = nextrotatebegintime @RequestId = requestid end def deserialize(params) @EnableRotation = params['EnableRotation'] @Frequency = params['Frequency'] @LatestRotateTime = params['LatestRotateTime'] @NextRotateBeginTime = params['NextRotateBeginTime'] @RequestId = params['RequestId'] end end # DescribeRotationHistory请求参数结构体 class DescribeRotationHistoryRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要获取凭据轮转历史的凭据名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # DescribeRotationHistory返回参数结构体 class DescribeRotationHistoryResponse < TencentCloud::Common::AbstractModel # @param VersionIDs: 版本号列表 # @type VersionIDs: Array # @param TotalCount: 版本号个数,可以给用户展示的版本号个数上限为10个。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :VersionIDs, :TotalCount, :RequestId def initialize(versionids=nil, totalcount=nil, requestid=nil) @VersionIDs = versionids @TotalCount = totalcount @RequestId = requestid end def deserialize(params) @VersionIDs = params['VersionIDs'] @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeSecret请求参数结构体 class DescribeSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要获取凭据详细信息的凭据名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # DescribeSecret返回参数结构体 class DescribeSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param Description: 凭据描述信息。 # @type Description: String # @param KmsKeyId: 用于加密的KMS CMK ID。 # @type KmsKeyId: String # @param CreateUin: 创建者UIN。 # @type CreateUin: Integer # @param Status: 凭据状态:Enabled、Disabled、PendingDelete, Creating, Failed。 # @type Status: String # @param DeleteTime: 删除日期,uinx 时间戳,非计划删除状态的凭据为0。 # @type DeleteTime: Integer # @param CreateTime: 创建日期。 # @type CreateTime: Integer # @param SecretType: 0 -- 用户自定义凭据类型;1 -- 数据库凭据类型;2 -- SSH密钥对凭据类型;3 -- 云API密钥(AKSK)凭据类型(使用此功能需要联系云助手单独开启白名单);4 -- Redis类型凭据。 # @type SecretType: Integer # @param ProductName: 云产品名称。 # @type ProductName: String # @param ResourceID: 云产品实例ID。 # @type ResourceID: String # @param RotationStatus: 是否开启轮转:True -- 开启轮转;False -- 关闭轮转。 # @type RotationStatus: Boolean # @param RotationFrequency: 轮转周期,默认以天为单位。 # @type RotationFrequency: Integer # @param ResourceName: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对凭据的名称。 # @type ResourceName: String # @param ProjectID: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所属的项目ID。 # @type ProjectID: Integer # @param AssociatedInstanceIDs: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所关联的CVM实例ID。 # @type AssociatedInstanceIDs: Array # @param TargetUin: 当凭据类型为云API密钥对凭据时,此字段有效,用于表示此云API密钥对所属的用户UIN。 # @type TargetUin: Integer # @param AdditionalConfig: 凭据额外配置 # @type AdditionalConfig: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :Description, :KmsKeyId, :CreateUin, :Status, :DeleteTime, :CreateTime, :SecretType, :ProductName, :ResourceID, :RotationStatus, :RotationFrequency, :ResourceName, :ProjectID, :AssociatedInstanceIDs, :TargetUin, :AdditionalConfig, :RequestId 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, targetuin=nil, additionalconfig=nil, requestid=nil) @SecretName = secretname @Description = description @KmsKeyId = kmskeyid @CreateUin = createuin @Status = status @DeleteTime = deletetime @CreateTime = createtime @SecretType = secrettype @ProductName = productname @ResourceID = resourceid @RotationStatus = rotationstatus @RotationFrequency = rotationfrequency @ResourceName = resourcename @ProjectID = projectid @AssociatedInstanceIDs = associatedinstanceids @TargetUin = targetuin @AdditionalConfig = additionalconfig @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @Description = params['Description'] @KmsKeyId = params['KmsKeyId'] @CreateUin = params['CreateUin'] @Status = params['Status'] @DeleteTime = params['DeleteTime'] @CreateTime = params['CreateTime'] @SecretType = params['SecretType'] @ProductName = params['ProductName'] @ResourceID = params['ResourceID'] @RotationStatus = params['RotationStatus'] @RotationFrequency = params['RotationFrequency'] @ResourceName = params['ResourceName'] @ProjectID = params['ProjectID'] @AssociatedInstanceIDs = params['AssociatedInstanceIDs'] @TargetUin = params['TargetUin'] @AdditionalConfig = params['AdditionalConfig'] @RequestId = params['RequestId'] end end # DescribeSupportedProducts请求参数结构体 class DescribeSupportedProductsRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # DescribeSupportedProducts返回参数结构体 class DescribeSupportedProductsResponse < TencentCloud::Common::AbstractModel # @param Products: 支持的所有云产品列表。 # 每种云产品与凭据类型的对应关系如下: # 当SecretType为1时,支持的云产品列表包括:Mysql、Tdsql-mysql、Tdsql_C_Mysql; # 当SecretType为2时,支持的产品列表为:Cvm; # 当SecretType为3时,支持的产品列表为:Cam(此功能的使用需要联系云助手单独开始白名单); # 当SecretType为4时,支持的产品列表为:Redis。 # @type Products: Array # @param TotalCount: 支持的产品个数 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Products, :TotalCount, :RequestId def initialize(products=nil, totalcount=nil, requestid=nil) @Products = products @TotalCount = totalcount @RequestId = requestid end def deserialize(params) @Products = params['Products'] @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DisableSecret请求参数结构体 class DisableSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定停用的凭据名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # DisableSecret返回参数结构体 class DisableSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 停用的凭据名称。 # @type SecretName: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :RequestId def initialize(secretname=nil, requestid=nil) @SecretName = secretname @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @RequestId = params['RequestId'] end end # EnableSecret请求参数结构体 class EnableSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定启用凭据的名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # EnableSecret返回参数结构体 class EnableSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 启用的凭据名称。 # @type SecretName: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :RequestId def initialize(secretname=nil, requestid=nil) @SecretName = secretname @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @RequestId = params['RequestId'] end end # GetRegions请求参数结构体 class GetRegionsRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # GetRegions返回参数结构体 class GetRegionsResponse < TencentCloud::Common::AbstractModel # @param Regions: region列表。 # @type Regions: Array # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Regions, :RequestId def initialize(regions=nil, requestid=nil) @Regions = regions @RequestId = requestid end def deserialize(params) @Regions = params['Regions'] @RequestId = params['RequestId'] end end # GetSSHKeyPairValue请求参数结构体 class GetSSHKeyPairValueRequest < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称,此凭据只能为SSH密钥对凭据类型。 # @type SecretName: String # @param SSHKeyId: 密钥对ID,是云服务器中密钥对的唯一标识。 # @type SSHKeyId: String attr_accessor :SecretName, :SSHKeyId def initialize(secretname=nil, sshkeyid=nil) @SecretName = secretname @SSHKeyId = sshkeyid end def deserialize(params) @SecretName = params['SecretName'] @SSHKeyId = params['SSHKeyId'] end end # GetSSHKeyPairValue返回参数结构体 class GetSSHKeyPairValueResponse < TencentCloud::Common::AbstractModel # @param SSHKeyID: SSH密钥对ID。 # @type SSHKeyID: String # @param PublicKey: 公钥明文,使用base64编码。 # @type PublicKey: String # @param PrivateKey: 私钥明文,使用base64编码 # @type PrivateKey: String # @param ProjectID: 此密钥对所属的项目ID。 # @type ProjectID: Integer # @param SSHKeyDescription: SSH密钥对的描述信息。 # 用户可以在CVM侧控制台对密钥对的描述信息进行修改。 # @type SSHKeyDescription: String # @param SSHKeyName: SSH密钥对的名称。 # 用户可以在CVM侧控制台对密钥对的名称进行修改。 # @type SSHKeyName: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SSHKeyID, :PublicKey, :PrivateKey, :ProjectID, :SSHKeyDescription, :SSHKeyName, :RequestId def initialize(sshkeyid=nil, publickey=nil, privatekey=nil, projectid=nil, sshkeydescription=nil, sshkeyname=nil, requestid=nil) @SSHKeyID = sshkeyid @PublicKey = publickey @PrivateKey = privatekey @ProjectID = projectid @SSHKeyDescription = sshkeydescription @SSHKeyName = sshkeyname @RequestId = requestid end def deserialize(params) @SSHKeyID = params['SSHKeyID'] @PublicKey = params['PublicKey'] @PrivateKey = params['PrivateKey'] @ProjectID = params['ProjectID'] @SSHKeyDescription = params['SSHKeyDescription'] @SSHKeyName = params['SSHKeyName'] @RequestId = params['RequestId'] end end # GetSecretValue请求参数结构体 class GetSecretValueRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定凭据的名称。 # @type SecretName: String # @param VersionId: 指定对应凭据的版本号。 # 对于云产品凭据如Mysql凭据,通过指定凭据名称和历史版本号来获取历史轮转凭据的明文信息,如果要获取当前正在使用的凭据版本的明文,需要将版本号指定为:SSM_Current。 # @type VersionId: String attr_accessor :SecretName, :VersionId def initialize(secretname=nil, versionid=nil) @SecretName = secretname @VersionId = versionid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] end end # GetSecretValue返回参数结构体 class GetSecretValueResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据的名称。 # @type SecretName: String # @param VersionId: 该凭据对应的版本号。 # @type VersionId: String # @param SecretBinary: 在创建凭据(CreateSecret)时,如果指定的是二进制数据,则该字段为返回结果,并且使用base64进行编码,应用方需要进行base64解码后获取原始数据。 # SecretBinary和SecretString只有一个不为空。 # @type SecretBinary: String # @param SecretString: 在创建凭据(CreateSecret)时,如果指定的是普通文本数据,则该字段为返回结果。 # SecretBinary和SecretString只有一个不为空。 # @type SecretString: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString, :RequestId def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil, requestid=nil) @SecretName = secretname @VersionId = versionid @SecretBinary = secretbinary @SecretString = secretstring @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @SecretBinary = params['SecretBinary'] @SecretString = params['SecretString'] @RequestId = params['RequestId'] end end # GetServiceStatus请求参数结构体 class GetServiceStatusRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # GetServiceStatus返回参数结构体 class GetServiceStatusResponse < TencentCloud::Common::AbstractModel # @param ServiceEnabled: true表示服务已开通,false 表示服务尚未开通。 # @type ServiceEnabled: Boolean # @param InvalidType: 服务不可用类型: 0-未购买,1-正常, 2-欠费停服, 3-资源释放。 # @type InvalidType: Integer # @param AccessKeyEscrowEnabled: true表示用户已经可以使用密钥安全托管功能, # false表示用户暂时不能使用密钥安全托管功能。 # @type AccessKeyEscrowEnabled: Boolean # @param ExpireTime: 过期时间 # @type ExpireTime: String # @param QPSLimit: 计算性能限制 # @type QPSLimit: Integer # @param SecretLimit: 凭据个数限制 # @type SecretLimit: Integer # @param PayModel: 付费模式 # @type PayModel: String # @param RenewFlag: 自动续费标识,0:手动续费 1:自动续费 2:到期不续 # @type RenewFlag: Integer # @param ResourceId: 资源id # @type ResourceId: String # @param TotalCount: 已托管凭据个数 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ServiceEnabled, :InvalidType, :AccessKeyEscrowEnabled, :ExpireTime, :QPSLimit, :SecretLimit, :PayModel, :RenewFlag, :ResourceId, :TotalCount, :RequestId def initialize(serviceenabled=nil, invalidtype=nil, accesskeyescrowenabled=nil, expiretime=nil, qpslimit=nil, secretlimit=nil, paymodel=nil, renewflag=nil, resourceid=nil, totalcount=nil, requestid=nil) @ServiceEnabled = serviceenabled @InvalidType = invalidtype @AccessKeyEscrowEnabled = accesskeyescrowenabled @ExpireTime = expiretime @QPSLimit = qpslimit @SecretLimit = secretlimit @PayModel = paymodel @RenewFlag = renewflag @ResourceId = resourceid @TotalCount = totalcount @RequestId = requestid end def deserialize(params) @ServiceEnabled = params['ServiceEnabled'] @InvalidType = params['InvalidType'] @AccessKeyEscrowEnabled = params['AccessKeyEscrowEnabled'] @ExpireTime = params['ExpireTime'] @QPSLimit = params['QPSLimit'] @SecretLimit = params['SecretLimit'] @PayModel = params['PayModel'] @RenewFlag = params['RenewFlag'] @ResourceId = params['ResourceId'] @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # ListSecretVersionIds请求参数结构体 class ListSecretVersionIdsRequest < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # ListSecretVersionIds返回参数结构体 class ListSecretVersionIdsResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param Versions: VersionId列表。 # @type Versions: Array # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :Versions, :RequestId def initialize(secretname=nil, versions=nil, requestid=nil) @SecretName = secretname @Versions = versions @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] unless params['Versions'].nil? @Versions = [] params['Versions'].each do |i| versioninfo_tmp = VersionInfo.new versioninfo_tmp.deserialize(i) @Versions << versioninfo_tmp end end @RequestId = params['RequestId'] end end # ListSecrets请求参数结构体 class ListSecretsRequest < TencentCloud::Common::AbstractModel # @param Offset: 查询列表的起始位置,以0开始,不设置默认为0。 # @type Offset: Integer # @param Limit: 单次查询返回的最大数量,0或不设置则使用默认值 20。 # @type Limit: Integer # @param OrderType: 根据创建时间的排序方式,0或者不设置则使用降序排序, 1 表示升序排序。 # @type OrderType: Integer # @param State: 根据凭据状态进行过滤。 # 默认为0表示查询全部。 # 1 -- 表示查询Enabled 凭据列表。 # 2 -- 表示查询Disabled 凭据列表。 # 3 -- 表示查询PendingDelete 凭据列表。 # 4 -- 表示PendingCreate。 # 5 -- 表示CreateFailed。 # 其中状态PendingCreate和CreateFailed只有在SecretType为云产品凭据时生效 # @type State: Integer # @param SearchSecretName: 根据凭据名称进行过滤,为空表示不过滤。 # @type SearchSecretName: String # @param TagFilters: 标签过滤条件。 # @type TagFilters: Array # @param SecretType: 0 -- 表示用户自定义凭据,默认为0。 # 1 -- 表示用户云产品凭据。 # 2 -- 表示SSH密钥对凭据。 # 3 -- 表示云API密钥对凭据。 # @type SecretType: Integer # @param ProductName: 此参数仅在SecretType参数值为1时生效, # 当SecretType值为1时: # 如果ProductName值为空,则表示查询所有类型的云产品凭据; # 如果ProductName值为某个指定的云产品值如Mysql时,则表示查询Mysql数据库凭据; # 如果ProductName值为多个云产品值,如:Mysql,Tdsql-mysql,Tdsql_C_Mysql(多个值以英文逗号,分隔开)则表示查询三种云产品类型的凭据; # 支持的云产品列表请通过接口:DescribeSupportedProducts进行查询。 # @type ProductName: String attr_accessor :Offset, :Limit, :OrderType, :State, :SearchSecretName, :TagFilters, :SecretType, :ProductName def initialize(offset=nil, limit=nil, ordertype=nil, state=nil, searchsecretname=nil, tagfilters=nil, secrettype=nil, productname=nil) @Offset = offset @Limit = limit @OrderType = ordertype @State = state @SearchSecretName = searchsecretname @TagFilters = tagfilters @SecretType = secrettype @ProductName = productname end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] @OrderType = params['OrderType'] @State = params['State'] @SearchSecretName = params['SearchSecretName'] unless params['TagFilters'].nil? @TagFilters = [] params['TagFilters'].each do |i| tagfilter_tmp = TagFilter.new tagfilter_tmp.deserialize(i) @TagFilters << tagfilter_tmp end end @SecretType = params['SecretType'] @ProductName = params['ProductName'] end end # ListSecrets返回参数结构体 class ListSecretsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 根据State和SearchSecretName 筛选的凭据总数。 # @type TotalCount: Integer # @param SecretMetadatas: 返回凭据信息列表。 # @type SecretMetadatas: Array # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :SecretMetadatas, :RequestId def initialize(totalcount=nil, secretmetadatas=nil, requestid=nil) @TotalCount = totalcount @SecretMetadatas = secretmetadatas @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['SecretMetadatas'].nil? @SecretMetadatas = [] params['SecretMetadatas'].each do |i| secretmetadata_tmp = SecretMetadata.new secretmetadata_tmp.deserialize(i) @SecretMetadatas << secretmetadata_tmp end end @RequestId = params['RequestId'] end end # 凭据关联产品时被赋予的权限 class ProductPrivilegeUnit < TencentCloud::Common::AbstractModel # @param PrivilegeName: 权限名称,当前可选: # GlobalPrivileges # DatabasePrivileges # TablePrivileges # ColumnPrivileges # 当权限为DatabasePrivileges时,必须通过参数Database指定数据库名; # 当权限为TablePrivileges时,必须通过参数Database和TableName指定数据库名以及数据库中的表名; # 当权限为ColumnPrivileges时,必须通过参数Database、TableName和CoulmnName指定数据库、数据库中的表名以及表中的列名。 # @type PrivilegeName: String # @param Privileges: 权限列表。 # 对于Mysql产品来说,可选权限值为: # 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"。 # 注意,不传该参数表示清除该权限。 # 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"。 # 注意,不传该参数表示清除该权限。 # 3. TablePrivileges 权限的可选值为:权限的可选值为:"SELECT","INSERT","UPDATE","DELETE","CREATE", "DROP","REFERENCES","INDEX","ALTER","CREATE VIEW","SHOW VIEW", "TRIGGER"。 # 注意,不传该参数表示清除该权限。 # 4. ColumnPrivileges 权限的可选值为:"SELECT","INSERT","UPDATE","REFERENCES"。 # 注意,不传该参数表示清除该权限。 # @type Privileges: Array # @param Database: 仅当PrivilegeName为DatabasePrivileges时这个值才有效。 # @type Database: String # @param TableName: 仅当PrivilegeName为TablePrivileges时这个值才有效,并且此时需要填充Database显式指明所在的数据库实例。 # @type TableName: String # @param ColumnName: 仅当PrivilegeName为ColumnPrivileges时这个值才生效,并且此时必须填充: # Database - 显式指明所在的数据库实例。 # TableName - 显式指明所在表 # @type ColumnName: String attr_accessor :PrivilegeName, :Privileges, :Database, :TableName, :ColumnName def initialize(privilegename=nil, privileges=nil, database=nil, tablename=nil, columnname=nil) @PrivilegeName = privilegename @Privileges = privileges @Database = database @TableName = tablename @ColumnName = columnname end def deserialize(params) @PrivilegeName = params['PrivilegeName'] @Privileges = params['Privileges'] @Database = params['Database'] @TableName = params['TableName'] @ColumnName = params['ColumnName'] end end # PutSecretValue请求参数结构体 class PutSecretValueRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要增加版本的凭据名称。 # @type SecretName: String # @param VersionId: 指定新增加的版本号,最长64 字节,使用字母、数字或者 - _ . 的组合并且以字母或数字开头。 # @type VersionId: String # @param SecretBinary: 二进制凭据信息,使用base64编码。 # SecretBinary 和 SecretString 必须且只能设置一个。 # @type SecretBinary: String # @param SecretString: 文本类型凭据信息明文(不需要进行base64编码),SecretBinary 和 SecretString 必须且只能设置一个。 # @type SecretString: String attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil) @SecretName = secretname @VersionId = versionid @SecretBinary = secretbinary @SecretString = secretstring end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @SecretBinary = params['SecretBinary'] @SecretString = params['SecretString'] end end # PutSecretValue返回参数结构体 class PutSecretValueResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param VersionId: 新增加的版本号。 # @type VersionId: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :VersionId, :RequestId def initialize(secretname=nil, versionid=nil, requestid=nil) @SecretName = secretname @VersionId = versionid @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @RequestId = params['RequestId'] end end # RestoreSecret请求参数结构体 class RestoreSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要恢复的凭据名称。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # RestoreSecret返回参数结构体 class RestoreSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :RequestId def initialize(secretname=nil, requestid=nil) @SecretName = secretname @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @RequestId = params['RequestId'] end end # RotateProductSecret请求参数结构体 class RotateProductSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 需要轮转的凭据名。 # @type SecretName: String attr_accessor :SecretName def initialize(secretname=nil) @SecretName = secretname end def deserialize(params) @SecretName = params['SecretName'] end end # RotateProductSecret返回参数结构体 class RotateProductSecretResponse < TencentCloud::Common::AbstractModel # @param FlowID: 当凭据类型为云产品凭据时(即SecretType为1,如MySQL、Tdsql等托管凭据)此字段有效,返回轮转异步任务ID号。 # @type FlowID: Integer # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowID, :RequestId def initialize(flowid=nil, requestid=nil) @FlowID = flowid @RequestId = requestid end def deserialize(params) @FlowID = params['FlowID'] @RequestId = params['RequestId'] end end # 凭据的基础信息 class SecretMetadata < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称 # @type SecretName: String # @param Description: 凭据的描述信息 # @type Description: String # @param KmsKeyId: 用于加密凭据的KMS KeyId # @type KmsKeyId: String # @param CreateUin: 创建者UIN # @type CreateUin: Integer # @param Status: 凭据状态:Enabled、Disabled、PendingDelete、Creating、Failed # @type Status: String # @param DeleteTime: 凭据删除日期,对于status为PendingDelete 的有效,unix时间戳 # @type DeleteTime: Integer # @param CreateTime: 凭据创建时间,unix时间戳 # @type CreateTime: Integer # @param KmsKeyType: 用于加密凭据的KMS CMK类型,DEFAULT 表示SecretsManager 创建的默认密钥, CUSTOMER 表示用户指定的密钥 # @type KmsKeyType: String # @param RotationStatus: 1:--开启轮转;0--禁止轮转 # @type RotationStatus: Integer # @param NextRotationTime: 下一次轮转开始时间,uinx 时间戳 # @type NextRotationTime: Integer # @param SecretType: 0 -- 用户自定义凭据; # 1 -- 云产品凭据; # 2 -- SSH密钥对凭据; # 3 -- 云API密钥对凭据; # 4 -- Redis类型凭据; # @type SecretType: Integer # @param ProductName: 云产品名称,仅在SecretType为1,即凭据类型为云产品凭据时生效 # @type ProductName: String # @param ResourceName: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对凭据的名称。 # @type ResourceName: String # @param ProjectID: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所属的项目ID。 # @type ProjectID: Integer # @param AssociatedInstanceIDs: 当凭据类型为SSH密钥对凭据时,此字段有效,用于表示SSH密钥对所关联的CVM实例ID。 # @type AssociatedInstanceIDs: Array # @param TargetUin: 当凭据类型为云API密钥对凭据时,此字段有效,用于表示云API密钥对所属的用户UIN。 # @type TargetUin: Integer # @param RotationFrequency: 轮转的频率,以天作为单位,在轮转开启状态下生效。 # @type RotationFrequency: Integer # @param ResourceID: 云产品凭据对应的云产品实例 ID 号。 # @type ResourceID: String # @param RotationBeginTime: 用户指定的轮转开始时间。 # @type RotationBeginTime: String attr_accessor :SecretName, :Description, :KmsKeyId, :CreateUin, :Status, :DeleteTime, :CreateTime, :KmsKeyType, :RotationStatus, :NextRotationTime, :SecretType, :ProductName, :ResourceName, :ProjectID, :AssociatedInstanceIDs, :TargetUin, :RotationFrequency, :ResourceID, :RotationBeginTime 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, targetuin=nil, rotationfrequency=nil, resourceid=nil, rotationbegintime=nil) @SecretName = secretname @Description = description @KmsKeyId = kmskeyid @CreateUin = createuin @Status = status @DeleteTime = deletetime @CreateTime = createtime @KmsKeyType = kmskeytype @RotationStatus = rotationstatus @NextRotationTime = nextrotationtime @SecretType = secrettype @ProductName = productname @ResourceName = resourcename @ProjectID = projectid @AssociatedInstanceIDs = associatedinstanceids @TargetUin = targetuin @RotationFrequency = rotationfrequency @ResourceID = resourceid @RotationBeginTime = rotationbegintime end def deserialize(params) @SecretName = params['SecretName'] @Description = params['Description'] @KmsKeyId = params['KmsKeyId'] @CreateUin = params['CreateUin'] @Status = params['Status'] @DeleteTime = params['DeleteTime'] @CreateTime = params['CreateTime'] @KmsKeyType = params['KmsKeyType'] @RotationStatus = params['RotationStatus'] @NextRotationTime = params['NextRotationTime'] @SecretType = params['SecretType'] @ProductName = params['ProductName'] @ResourceName = params['ResourceName'] @ProjectID = params['ProjectID'] @AssociatedInstanceIDs = params['AssociatedInstanceIDs'] @TargetUin = params['TargetUin'] @RotationFrequency = params['RotationFrequency'] @ResourceID = params['ResourceID'] @RotationBeginTime = params['RotationBeginTime'] end end # 标签键和标签值 class Tag < TencentCloud::Common::AbstractModel # @param TagKey: 标签键 # @type TagKey: String # @param TagValue: 标签值 # @type TagValue: String attr_accessor :TagKey, :TagValue def initialize(tagkey=nil, tagvalue=nil) @TagKey = tagkey @TagValue = tagvalue end def deserialize(params) @TagKey = params['TagKey'] @TagValue = params['TagValue'] end end # 标签过滤器 class TagFilter < TencentCloud::Common::AbstractModel # @param TagKey: 标签键 # @type TagKey: String # @param TagValue: 标签值 # @type TagValue: Array attr_accessor :TagKey, :TagValue def initialize(tagkey=nil, tagvalue=nil) @TagKey = tagkey @TagValue = tagvalue end def deserialize(params) @TagKey = params['TagKey'] @TagValue = params['TagValue'] end end # UpdateDescription请求参数结构体 class UpdateDescriptionRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要更新描述信息的凭据名。 # @type SecretName: String # @param Description: 新的描述信息,最大长度2048个字节。 # @type Description: String attr_accessor :SecretName, :Description def initialize(secretname=nil, description=nil) @SecretName = secretname @Description = description end def deserialize(params) @SecretName = params['SecretName'] @Description = params['Description'] end end # UpdateDescription返回参数结构体 class UpdateDescriptionResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :RequestId def initialize(secretname=nil, requestid=nil) @SecretName = secretname @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @RequestId = params['RequestId'] end end # UpdateRotationStatus请求参数结构体 class UpdateRotationStatusRequest < TencentCloud::Common::AbstractModel # @param SecretName: 云产品凭据名称。 # @type SecretName: String # @param EnableRotation: 是否开启轮转。 # true -- 开启轮转; # false -- 禁止轮转。 # @type EnableRotation: Boolean # @param Frequency: 轮转周期,以天为单位,最小为30天,最大为365天。 # @type Frequency: Integer # @param RotationBeginTime: 用户设置的期望开始轮转时间,格式为:2006-01-02 15:04:05。 # 当EnableRotation为true时,如果不填RotationBeginTime,则默认填充为当前时间。 # @type RotationBeginTime: String attr_accessor :SecretName, :EnableRotation, :Frequency, :RotationBeginTime def initialize(secretname=nil, enablerotation=nil, frequency=nil, rotationbegintime=nil) @SecretName = secretname @EnableRotation = enablerotation @Frequency = frequency @RotationBeginTime = rotationbegintime end def deserialize(params) @SecretName = params['SecretName'] @EnableRotation = params['EnableRotation'] @Frequency = params['Frequency'] @RotationBeginTime = params['RotationBeginTime'] end end # UpdateRotationStatus返回参数结构体 class UpdateRotationStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateSecret请求参数结构体 class UpdateSecretRequest < TencentCloud::Common::AbstractModel # @param SecretName: 指定需要更新凭据内容的名称。 # @type SecretName: String # @param VersionId: 指定需要更新凭据内容的版本号。 # @type VersionId: String # @param SecretBinary: 新的凭据内容为二进制的场景使用该字段,并使用base64进行编码。 # SecretBinary 和 SecretString 只能一个不为空。 # @type SecretBinary: String # @param SecretString: 新的凭据内容为文本的场景使用该字段,不需要base64编码SecretBinary 和 SecretString 只能一个不为空。 # @type SecretString: String attr_accessor :SecretName, :VersionId, :SecretBinary, :SecretString def initialize(secretname=nil, versionid=nil, secretbinary=nil, secretstring=nil) @SecretName = secretname @VersionId = versionid @SecretBinary = secretbinary @SecretString = secretstring end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @SecretBinary = params['SecretBinary'] @SecretString = params['SecretString'] end end # UpdateSecret返回参数结构体 class UpdateSecretResponse < TencentCloud::Common::AbstractModel # @param SecretName: 凭据名称。 # @type SecretName: String # @param VersionId: 凭据版本号。 # @type VersionId: String # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SecretName, :VersionId, :RequestId def initialize(secretname=nil, versionid=nil, requestid=nil) @SecretName = secretname @VersionId = versionid @RequestId = requestid end def deserialize(params) @SecretName = params['SecretName'] @VersionId = params['VersionId'] @RequestId = params['RequestId'] end end # 凭据版本号列表信息 class VersionInfo < TencentCloud::Common::AbstractModel # @param VersionId: 版本号 # @type VersionId: String # @param CreateTime: 创建时间,unix时间戳。 # @type CreateTime: Integer attr_accessor :VersionId, :CreateTime def initialize(versionid=nil, createtime=nil) @VersionId = versionid @CreateTime = createtime end def deserialize(params) @VersionId = params['VersionId'] @CreateTime = params['CreateTime'] end end end end end