调用 ModifyTopicAccessPolicies 接口接口更改指定 Topic 的用户权限。
该接口用于修改 Topic 的用户权限,可以调整 Topic 对所有用户的默认权限,也可以自定义设置某些用户对于此 Topic 的权限。关于权限设置的详细说明,请参考设置 SASL 用户权限。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必填 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | ModifyTopicAccessPolicies | 要执行的操作,取值:ModifyTopicAccessPolicies。 |
Version | String | 是 | 2022-05-01 | API的版本,取值:2022-05-01。 |
InstanceId | String | 是 | kafka-**** | Topic 对应的实例 ID。 |
TopicName | String | 是 | my_topic | Topic 的名称。 |
AllAuthority | Boolean | 是 | true | Topic 默认是否对所有用户都开启读写权限。
|
AccessPolicies | Array of Object | 否 | -- | 自定义权限配置,即为某些用户设置对于此 Topic 的自定义权限。仅在 AllAuthority 为 false 时需要设置。 |
DeletePolicies | Array of String | 否 | ["user1","user2"] | 待删除 Topic 权限的用户列表,其中应指定用户名称。 |
本接口无特有的返回参数。更多信息请见返回结构。
POST /?Action=ModifyTopicAccessPolicies&Version=2022-05-01 HTTP/1.1 Content-Type: application/json Host: kafka.volcengineapi.com X-Date: 20210328T100802Z Authorization: HMAC-SHA256 Credential=AK********/20210328/cn-beijing/Kafka/request, SignedHeaders=x-date, Signature=******** { "InstanceId": "kafka-cnngbnntswg1****", "TopicName":"123", "AllAuthority":false, "AccessPolicies":[{"UserName":"user123","AccessPolicy":"PubSub"}] }
{ "ResponseMetadata": { "RequestId": "202302272036532B034FE726F55372A619", "Action": "ModifyTopicAccessPolicies", "Version": "2022-05-01", "Service": "Kafka", "Region": "cn-beijing" }, "Result": null }
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
状态码 | 错误码 | 说明 |
---|---|---|
400 | InvalidParameter | 参数值无效。 |
403 | OperationDenied.InvalidInstanceStatus | 当前实例状态不允许执行该操作。 |
403 | OperationDenied.InvalidTopicStatus | 当前Kafka主题状态不允许执行该操作。 |
403 | OperationDenied.AccountNotAuthorized | 您不具备相关权限 ,请授权或切换账号后重试。 |
404 | InvalidInstanceId.NotFound | 实例不存在。 |
404 | InvalidTopicName.NotFound | Topic 不存在。 |
404 | InvalidUserName.NotFound | SASL用户不存在。 |
500 | InternalError | 内部错误,请稍后重试。 |