ranger管mysql_添加Kafka的Ranger访问权限策略

设置Kafka管理员权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - topic”的策略,单击9a00af2bbac4515c553982c42f7e5b6e.png按钮编辑策略。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Select/Deselect All”。

设置用户对Topic的创建权限

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Create”。

说明:

目前Kafka内核支持"--zookeeper"和"--bootstrap-server"两种方式创建Topic,社区将会在后续的版本中删掉对"--zookeeper"的支持,所以建议用户使用"--bootstrap-server"的方式创建Topic。

注意:目前Kafka只支持"--bootstrap-server"方式创建Topic行为的鉴权,不支持对"--zookeeper"方式的鉴权

设置用户对Topic的删除权限

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Delete”。

说明:

目前Kafka内核支持"--zookeeper"和"--bootstrap-server"两种方式删除Topic,社区将会在后续的版本中删掉对"--zookeeper"的支持,所以建议用户使用"--bootstrap-server"的方式删除Topic。

注意:目前Kafka只支持对"--bootstrap-server"方式删除Topic行为的鉴权,不支持对"--zookeeper"方式的鉴权

设置用户对Topic的查询权限

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Describe”和“Describe Configs”。

说明:

目前Kafka内核支持"--zookeeper"和"--bootstrap-server"两种方式查询Topic,社区将会在后续的版本中删掉对"--zookeeper"的支持,所以建议用户使用"--bootstrap-server"的方式查询Topic。

注意:目前Kafka只支持对"--bootstrap-server"方式查询Topic行为的鉴权,不支持对"--zookeeper"方式的鉴权

设置用户对Topic的生产权限

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Publish”。

设置用户对Topic的消费权限

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Consume”。

说明:

因为消费Topic时,涉及到Offset的管理操作,必须同时开启ConsumerGroup的“Consume”权限,详见“设置用户对ConsumerGroup Offsets 的提交权限”

设置用户对Topic的扩容权限(增加分区)

在“Topic”配置Topic名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Alter”。

设置用户对Topic的配置修改权限

当前Kafka内核暂不支持基于“--bootstrap-server”的Topic参数修改行为,故当前Ranger不支持对此行为的鉴权操作。

设置用户对Cluster的所有管理权限

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Kafka Admin”。

设置用户对Cluster的创建权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - cluster”的策略,单击16df36931744f45959d87dbe92e5e256.png按钮编辑策略。

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Create”。

说明:

对于Cluster的Create操作鉴权主要涉及以下两个场景:

集群开启了“auto.create.topics.enable”参数后,客户端向服务的还未创建的Topic发送数据的场景,此时会判断用户是否有集群的Create权限

对于用户创建大量Topic的场景,如果授予用户Cluster Create权限,那么该用户可以在集群内部创建任意Topic

设置用户对Cluster的配置修改权限

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Alter Configs”。

说明:

此处的配置修改权限,指的是Broker、Broker Logger的配置权限。

当授予用户配置修改权限后,即使不授予配置查询权限也可查询配置详情(配置修改权限高于且包含配置查询权限)。

设置用户对Cluster的配置查询权限

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Describe”和 “Describe Configs”。

说明:

此处查询指的是查询集群内的Broker、Broker Logger信息。该查询不涉及Topic。

设置用户对Cluster的Idempotent Write权限

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Idempotent Write”。

说明:

此权限会对用户客户端的Idempotent Produce行为进行鉴权。

设置用户对Cluster的分区迁移权限管理

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Alter”。

说明:

Cluster的Alter权限可以对以下三种场景进行权限控制:

Partition Reassign场景下,迁移副本的存储目录。

集群里各分区内部leader选举。

Acl管理(添加或删除)。

其中1和2都是集群内部Controller与Broker间、Broker与Broker间的操作,创建集群时,默认授予内置kafka用户此权限,普通用户授予此权限没有意义。

3涉及Acl的管理,Acl设计的就是用于鉴权,由于目前kafka鉴权已全部托管给Ranger,所以这个场景也基本不涉及(配置后亦不生效)。

设置用户对Cluster的Cluster Action权限

在“cluster”右侧输入并选择集群名。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Cluster Action”。

说明:

此权限主要对集群内部副本主从同步、节点间通信进行控制,在集群创建时已经授权给内置kakfa用户,普通用户授予此权限没有意义。

设置用户对TransactionalId的权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - transactionalid”的策略,单击f4ca38870ba1ca91cc8931fe35b2ff3c.png按钮编辑策略。

在“transactionalid”配置事务ID。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Publish”和 "Describe"。

说明:

“Publish”权限主要对用户开启了事务特性的客户端请求进行鉴权,例如事务开启、结束、提交offset、事务性数据生产等行为。

“Describe”权限主要对于开启事务特性的客户端与Coordinator的请求进行鉴权。

建议在开启事务特性的场景下,给用户同时授予“Publish”和“Describe”权限。

设置用户对DelegationToken的权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - delegationtoken”的策略,单击422ad5163e9247a941757388a92aea86.png按钮编辑策略。

在“delegationtoken”配置delegationtoken。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“ Describe”。

说明:

当前Ranger对DelegationToken的鉴权控制仅限于对查询的权限控制,不支持对DelegationToken的create、renew、expire操作的权限控制。

设置用户对ConsumerGroup Offsets 的查询权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - consumergroup”的策略,单击4b103f561e226215362713e529252368.png按钮编辑策略。

在“consumergroup”配置需要管理的consumergroup。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Describe”。

设置用户对ConsumerGroup Offsets 的提交权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - consumergroup”的策略,单击4940603e322ebbda6960a41cb2eb34e3.png按钮编辑策略。

在“consumergroup”配置需要管理的consumergroup。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Consume”。

说明:

当给用户授予了ConsumerGroup的“Consume”权限后,用户会同时被授予“Describe”权限。

设置用户对ConsumerGroup Offsets 的删除权限

在首页中单击“Kafka”区域的组件插件名称,例如“Kafka”。

选择“Policy Name”为“all - consumergroup”的策略,单击dd92728c799a14659416b9db956b88d6.png按钮编辑策略。

在“consumergroup”配置需要管理的consumergroup。

在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

单击“Add Permissions”,勾选“Delete”。

说明:

当给用户授予了ConsumerGroup的“Delete”权限后,用户会同时被授予“Describe”权限。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值