You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用nats-pub.py脚本向NATS服务器传递token解决授权报错问题

NATS Token授权配置解决方案

错误原因

你当前使用的--creds参数仅适用于NATS JWT凭据文件认证场景,而你的集群明确配置为auth: token类型认证,参数不匹配导致授权失败。

操作步骤

  • 第一步:从K8s Secret中取出有效token
    你提供的配置中token存储在K8s名为eventbus-default-client的Secret的client-auth字段中,执行以下命令导出token:
kubectl get secret eventbus-default-client -o jsonpath='{.data.client-auth}' | base64 -d > /tmp/nats-token
  • 第二步:调整执行命令完成认证,两种方案二选一即可

方案1:将token嵌入连接URL(兼容性最好)

python /tmp/nats-pub.py -s nats://$(cat /tmp/nats-token)@eventbus-default-stan-svc:4222 {label} -d '{json}'

方案2:直接传递token参数(需你的nats-pub.py脚本支持--token参数)

python /tmp/nats-pub.py --token $(cat /tmp/nats-token) -s nats://eventbus-default-stan-svc:4222 {label} -d '{json}'

注意事项

  • 不要将token明文硬编码在命令或脚本中,生产环境建议通过环境变量或加密文件读取token
  • 确认执行命令的环境有权限访问eventbus-default-stan-svc:4222端口,避免网络问题叠加导致认证报错

内容的提问来源于stack exchange,提问作者Eduard Nickel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:18:03