/*
* Copyright (c) 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.
*/
namespace TencentCloud.Kms.V20190118.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class ListKeyDetailRequest : AbstractModel
{
///
/// 含义跟 SQL 查询的 Offset 一致,表示本次获取从按一定顺序排列数组的第 Offset 个元素开始,缺省为0
///
[JsonProperty("Offset")]
public ulong? Offset{ get; set; }
///
/// 含义跟 SQL 查询的 Limit 一致,表示本次最多获取 Limit 个元素。缺省值为10,最大值为200
///
[JsonProperty("Limit")]
public ulong? Limit{ get; set; }
///
/// 根据创建者角色筛选,默认 0 表示用户自己创建的cmk, 1 表示授权其它云产品自动创建的cmk
///
[JsonProperty("Role")]
public ulong? Role{ get; set; }
///
/// 根据CMK创建时间排序, 0 表示按照降序排序,1表示按照升序排序
///
[JsonProperty("OrderType")]
public ulong? OrderType{ get; set; }
///
/// 根据CMK状态筛选, 0表示全部CMK, 1 表示仅查询Enabled CMK, 2 表示仅查询Disabled CMK,3 表示查询PendingDelete 状态的CMK(处于计划删除状态的Key),4 表示查询 PendingImport 状态的CMK
///
[JsonProperty("KeyState")]
public ulong? KeyState{ get; set; }
///
/// 根据KeyId或者Alias进行模糊匹配查询
///
[JsonProperty("SearchKeyAlias")]
public string SearchKeyAlias{ get; set; }
///
/// 根据CMK类型筛选, "TENCENT_KMS" 表示筛选密钥材料由KMS创建的CMK, "EXTERNAL" 表示筛选密钥材料需要用户导入的 EXTERNAL类型CMK,"ALL" 或者不设置表示两种类型都查询,大小写敏感。
///
[JsonProperty("Origin")]
public string Origin{ get; set; }
///
/// 根据CMK的KeyUsage筛选,ALL表示筛选全部,可使用的参数为:ALL 或 ENCRYPT_DECRYPT 或 ASYMMETRIC_DECRYPT_RSA_2048 或 ASYMMETRIC_DECRYPT_SM2,为空则默认筛选ENCRYPT_DECRYPT类型
///
[JsonProperty("KeyUsage")]
public string KeyUsage{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "Offset", this.Offset);
this.SetParamSimple(map, prefix + "Limit", this.Limit);
this.SetParamSimple(map, prefix + "Role", this.Role);
this.SetParamSimple(map, prefix + "OrderType", this.OrderType);
this.SetParamSimple(map, prefix + "KeyState", this.KeyState);
this.SetParamSimple(map, prefix + "SearchKeyAlias", this.SearchKeyAlias);
this.SetParamSimple(map, prefix + "Origin", this.Origin);
this.SetParamSimple(map, prefix + "KeyUsage", this.KeyUsage);
}
}
}