86 lines
3.4 KiB
C#
86 lines
3.4 KiB
C#
|
|
/*
|
|||
|
|
* 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.Ckafka.V20190819.Models
|
|||
|
|
{
|
|||
|
|
using Newtonsoft.Json;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using TencentCloud.Common;
|
|||
|
|
|
|||
|
|
public class CreateAclRequest : AbstractModel
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 实例id信息
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("InstanceId")]
|
|||
|
|
public string InstanceId{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Acl资源类型,(0:UNKNOWN,1:ANY,2:TOPIC,3:GROUP,4:CLUSTER,5:TRANSACTIONAL_ID),当前只有TOPIC,其它字段用于后续兼容开源kafka的acl时使用
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ResourceType")]
|
|||
|
|
public long? ResourceType{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 资源名称,和resourceType相关,如当resourceType为TOPIC时,则该字段表示topic名称,当resourceType为GROUP时,该字段表示group名称
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("ResourceName")]
|
|||
|
|
public string ResourceName{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Acl操作方式,(0:UNKNOWN,1:ANY,2:ALL,3:READ,4:WRITE,5:CREATE,6:DELETE,7:ALTER,8:DESCRIBE,9:CLUSTER_ACTION,10:DESCRIBE_CONFIGS,11:ALTER_CONFIGS)
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Operation")]
|
|||
|
|
public long? Operation{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 权限类型,(0:UNKNOWN,1:ANY,2:DENY,3:ALLOW),当前ckakfa支持ALLOW(相当于白名单),其它用于后续兼容开源kafka的acl时使用
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("PermissionType")]
|
|||
|
|
public long? PermissionType{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 默认为\*,表示任何host都可以访问,当前ckafka不支持host为\*,但是后面开源kafka的产品化会直接支持
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Host")]
|
|||
|
|
public string Host{ get; set; }
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 用户列表,默认为*,表示任何user都可以访问,当前用户只能是用户列表中包含的用户
|
|||
|
|
/// </summary>
|
|||
|
|
[JsonProperty("Principal")]
|
|||
|
|
public string Principal{ get; set; }
|
|||
|
|
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// For internal usage only. DO NOT USE IT.
|
|||
|
|
/// </summary>
|
|||
|
|
internal override void ToMap(Dictionary<string, string> map, string prefix)
|
|||
|
|
{
|
|||
|
|
this.SetParamSimple(map, prefix + "InstanceId", this.InstanceId);
|
|||
|
|
this.SetParamSimple(map, prefix + "ResourceType", this.ResourceType);
|
|||
|
|
this.SetParamSimple(map, prefix + "ResourceName", this.ResourceName);
|
|||
|
|
this.SetParamSimple(map, prefix + "Operation", this.Operation);
|
|||
|
|
this.SetParamSimple(map, prefix + "PermissionType", this.PermissionType);
|
|||
|
|
this.SetParamSimple(map, prefix + "Host", this.Host);
|
|||
|
|
this.SetParamSimple(map, prefix + "Principal", this.Principal);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|