在其中一个节点上执行,并把生成的my-secret.key拷贝到其他节点上
bin/pulsar tokens create-secret-key --output /data/my-secret.key --base64在其中一个节点上执行
bin/pulsar tokens create --secret-key file:///data/my-secret.key --subject pulsar-user(用户名)
token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJwdWxzYXItdXNlciJ9.pQObSlvRguNjOdHy-Vzrfx5DY8iacqq4Y9HP_gbXVYU在其中一个节点上执行
bin/pulsar-admin namespaces grant-permission public/functions --role pulsar-user --actions produce,consume
bin/pulsar-admin namespaces grant-permission capital/cloud --role pulsar-user(用户名) --actions produce,consume
bin/pulsar-admin namespaces grant-permission capital/enterprise --role pulsar-user(用户名) --actions produce,consume在所有节点上执行
vim conf/broker.conf
authenticationEnabled=true
superUserRoles=pulsar-user # 用户名
authorizationEnabled=true
authenticationProviders=org.apache.pulsar.broker.authentication.AuthenticationProviderToken
authenticateOriginalAuthData=true
tokenSecretKey=file:///data/my-secret.key # my-secret.key的绝对路径
brokerClientAuthenticationPlugin=org.apache.pulsar.client.impl.auth.AuthenticationToken
brokerClientAuthenticationParameters=token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJwdWxzYXItdXNlciJ9.pQObSlvRguNjOdHy-Vzrfx5DY8iacqq4Y9HP_gbXVYU # 第二步生成的tokenvim conf/client.conf
authPlugin=org.apache.pulsar.client.impl.auth.AuthenticationToken
authParams=token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJwdWxzYXItdXNlciJ9.pQObSlvRguNjOdHy-Vzrfx5DY8iacqq4Y9HP_gbXVYU # 第二步生成的token所有节点都执行
bin/pulsar-daemon stop broker
bin/pulsar-daemon start broker