【发布时间】:2022-01-22 05:50:07
【问题描述】:
我们一直在尝试在我们的 2.8.1 Apache Pulsar 集群上添加 JWT 身份验证,它似乎工作正常,除了权限。所以基本上,我们现在的状态是:
- 没有令牌,客户端得到一个 401
- 有了令牌,它可以访问,但生产或消费有问题,所以我们添加了这个:
./bin/pulsar-admin --admin-url https://pulsar-xxx-broker.pulsar-xx.svc.cluster.local:8443 --auth-plugin org.apache.pulsar.client.impl.auth.AuthenticationToken --auth-params file:///pulsar/tokens/代理/令牌命名空间授予权限“xxx-dev-FR/lol”--role pulsar-token---actions producer,consume
而且更好的是,命名空间上的权限似乎非常简单,并且只允许消费、生产查看代码。但后来我们遇到了这个错误:
org.apache.pulsar.client.admin.PulsarAdminException$NotAuthorizedException: 未授权 validateTopicPolicyOperation 用于主题 [persistent://xxx-dev-FR/ns-common-0.8.0/workflow-tag- 上的操作 [WRITE]新:com.xxx.xxx.commons.engine.workflow.xxxEngine] 策略 [PARTITION]
显然我们需要更多权限,因此我们考虑在创建租户时添加一个管理员角色,这就是我们所做的,但不幸的是,它并没有更好。
我错过了什么吗?
非常感谢。
亲属
【问题讨论】:
-
您是否使用超级角色令牌配置了 brokerClientAuthenticationPlugin 和 brokerClientAuthenticationParameters ?
-
Bonjour Christophe,我做到了,是的,掌舵图做到了:brokerClientAuthenticationPlugin=org.apache.pulsar.client.impl.auth.AuthenticationToken brokerClientAuthenticationParameters=file:///pulsar/tokens /broker/token 我确认,来自 pod 的那个与最初生成的那个相同。亲属
标签: apache-pulsar