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

Netdata API令牌认证失败求助:启用Bearer保护后无法访问受保护端点

解决Netdata本地节点受保护API端点的Bearer认证问题

核心问题

你使用的是Netdata Cloud的API令牌,但该令牌仅适用于访问Netdata Cloud的API接口,无法直接用于本地Netdata节点的Bearer认证。本地节点需要使用自身生成的专属API令牌。

解决步骤

1. 生成本地Netdata节点的API令牌

有两种生成方式:

  • 命令行方式:在Netdata节点服务器执行以下命令(替换TOKEN_NAME为自定义令牌名称):

    netdata-generate-api-token --name TOKEN_NAME
    

    执行后会输出生成的令牌,请复制保存。

  • Web UI方式:若能访问本地节点仪表盘(http://my-ip:19999),登录后进入设置 > API令牌,点击创建新令牌,设置名称和权限范围后完成生成。

2. 验证令牌有效性

用新生成的本地令牌测试访问受保护端点,示例curl命令:

curl -H 'Accept: application/json' -H "Authorization: Bearer 你的本地令牌" http://my-ip:19999/api/v1/alarms

Guzzle代码替换令牌后:

$client = new GuzzleHttp\Client();
$response = $client->get("http://my-ip:19999/api/v1/alarms", [
    'headers' => ['Authorization' => "Bearer 你的本地令牌"]
]);

3. (可选)细化令牌权限

如需限制令牌访问范围,生成时可指定权限,例如仅允许读取告警:

netdata-generate-api-token --name alarm-reader --allow /api/v1/alarms

也可在netdata.conf的[web]段添加配置,限制令牌的访问来源或路径:

[web]
    bearer token protection = yes
    # 允许特定IP段访问API
    allow api from = 192.168.0.0/24

补充说明

Netdata Cloud的API令牌主要用于:

  • 通过Cloud API管理节点、空间
  • 访问Cloud聚合的数据
  • 执行Cloud层面操作,并非用于本地节点的直接认证。

内容的提问来源于stack exchange,提问作者Ignas Damunskis

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 13:03:14