使用 API 密钥通过 Grafana HTTP API 进行身份验证 - Amazon Managed Grafana

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 API 密钥通过 Grafana HTTP API 进行身份验证

访问 Grafana API 的一种方法是使用 API 密钥,也称为 API 令牌。要创建 API 密钥,请使用以下过程之一。API 密钥在创建时指定的有限时间内有效,最长 30 天。

注意

在版本 9 或更高版本中,首选使用服务账户而不是 API 密钥。服务账户正在取代 API 密钥,成为对与 Grafana API 交互的应用程序进行身份验证的主要方式。Grafana Labs 已宣布将在未来的发行版中移除 API 密钥。

创建 API 密钥时,需要为密钥指定一个角色。角色决定了密钥用户拥有的管理权限级别。

下表显示了授予管理员、编辑者和查看者角色的权限。第一个表显示了一般的组织权限。在此表中,完全表示能够查看、编辑、添加权限和删除权限。浏览列显示角色是否可以使用浏览视图。其他权限列显示角色是否拥有管理用户、团队、插件和组织设置的权限。

角色 控制面板 播放列表 文件夹 Explore 数据来源 其他权限

查看者

查看 查看

Editor (编辑器)

完整 完整 完整

Admin

完整 完整 完整 完整 完整

下表显示了您可以设置的其他控制面板级和文件夹级权限。这些角色不同于管理员、编辑者和查看者角色。

角色 控制面板 文件夹 更改权限

视图

查看 查看

编辑

创建、编辑 查看

Admin

创建、编辑、删除 创建、编辑、删除
注意

如果存在具有更多权限的一般规则,则范围更大、级别较低的权限不会生效。例如,如果您为用户授予组织编辑者角色,然后仅向该用户分配控制面板的查看权限,则限制性更强的查看权限将会无效,因为该用户具有编辑者角色而拥有完全的编辑访问权限。

创建 Grafana API 密钥,以便在工作区(控制台)中与 Grafana API 结合使用

注意

在与 Grafana 版本 10 及更高版本兼容的 Amazon Managed Grafana 工作区中,移除了在工作区中创建 API 密钥的功能。如果您的工作区是 Grafana 版本 10 的工作区,则只能通过 AWS CLI 或 API 创建 API 密钥。

Grafana Labs 已宣布将在未来的发行版中删除 API 密钥。建议您改用服务账户。

要创建 Grafana API 密钥,以便在工作区(控制台)中与 Grafana API 结合使用
  1. 打开 Amazon Managed Grafana 控制台,网址为 https://console.aws.amazon.com/grafana/

  2. 在页面左上角,选择菜单图标,然后选择所有工作区

  3. 选择 Amazon Managed Grafana 工作区的名称。

  4. 在工作区详细信息页面中,选择 Grafana 工作区 URL 下显示的 URL。

  5. 在 Grafana 控制台侧边菜单中,将鼠标悬停在配置(齿轮)图标上,然后选择 API 密钥

  6. 选择新的 API 密钥

  7. 输入密钥的唯一名称。

  8. 对于角色,选择要授予密钥的访问级别。选择管理员,允许拥有此密钥的用户在最广泛、最强大的管理级别使用 API。选择编辑者查看者以将密钥的用户限制为这些权限级别。有关更多信息,请参阅前面的表。

  9. 对于生存时间,指定您希望密钥有效的时间。最长为 30 天(一个月)。输入一个数字和一个字母。有效字母为 s 表示秒,m 表示分钟,h 表示小时,d 表示天,w 表示周,M 表示月。例如,12h 为 12 小时,1M 为 1 个月(30 天)。

    强烈建议您将密钥的生存时间设置为较短的时间,例如几个小时或更短。与拥有长期有效的 API 密钥相比,这样做风险要小得多。

  10. 选择添加

  11. (可选)您可以使用 Terraform 通过创建 API 密钥 API 自动创建 API 密钥。有关使用 Terraform 自动创建 API 密钥的更多信息,请参阅使用 Terraform 创建 Grafana API 密钥

使用 AWS CLI 创建 Amazon Managed Grafana 工作区 API 密钥

要使用 AWS CLI 创建 Amazon Managed Grafana 工作区 API 密钥

在以下示例中,将 key_namekey_roleseconds_to_liveworkspace_id 替换为您自己的信息。要了解 key-name、key-role 和 seconds-to-live 的格式,请参阅 API 指南中的 https://docs.aws.amazon.com/grafana/latest/APIReference/API_CreateWorkspaceApiKey.html

aws grafana create-workspace-api-key --key-name "key_name" --key-role "key_role" --seconds-to-live seconds_to_live --workspace-id "workspace_id"

以下为示例 CLI 响应:

create-workspace-api-key 输出示例

您可以运行以下命令来查找工作区的 workspace_id

aws grafana list-workspaces