4.3 定位 acl 规则
acl 规则组成
AclBinding
ResourcePattern
ResourceType
: enum
类型,可选值有:
UNKNOWN
: 代表任何不理解的类型
ANY
: 在 filter 中,可以匹配任何类型
TOPIC
GROUP
CLUSTER
TRANSACTIONAL_ID
DELEGATION_TOKEN
Resource Name
: topic 名,group id,transaction id 等。特别说明: 资源类型为 CLUSTER
,Resource Name 固定为 kafka-cluster
。
PatternType
: enum
类型,可选值有:
UNKNOWN
: 代表任何不理解的类型
ANY
: 在 filter 中,可以匹配任何类型
MATCH
: 在 filter 中,任何能匹配到其的资源,比如 ResourcePatternFilter(TOPIC, "payments.received", MATCH)
,以下 3 个都能匹配:ResourcePattern(TOPIC, "payments.received", LITERAL)
, ResourcePattern(TOPIC, "*", LITERAL)
, ResourcePattern(TOPIC, "payments.", PREFIXED)
LITERAL
: 全匹配,此类型下如果 resource name 是 *
可以匹配任何名称的资源
PREFIXED
: 前缀匹配
AccessControlEntry
- principal: 模式为
{principalType}:{principalName}
的字符串,比如: KafkaPrincipal.USER_TYPE + ":alice"
- host
AclOperation
:
- UNKNOWN
- ANY
- ALL
- READ
- WRITE
- CREATE
- DELETE
- ALTER
- DESCRIBE
- CLUSTER_ACTION
- DESCRIBE_CONFIGS
- ALTER_CONFIGS
- IDEMPOTENT_WRITE
AclPermissionType