配置 Amazon Q 开发者CloudZero插件 - Amazon Q 开发者版

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

配置 Amazon Q 开发者CloudZero插件

CloudZero是一个云成本优化平台,用于评估成本以提高云效率。如果您使用CloudZero监控 AWS 成本,则可以使用 Amazon Q Developer 聊天中的CloudZero插件访问成本见解,而无需离开 AWS Management Console。

您可以使用该CloudZero插件来了解您的 AWS 成本,获取成本优化见解并跟踪账单。收到回复后,您可以提出后续问题,例如CloudZero见解的状态或成本影响。

要配置插件,您需要提供CloudZero账户中的身份验证凭证,以启用 Amazon Q 和之间的连接CloudZero。配置插件后,您可以在 Amazon Q 聊天中将问题@cloudzero添加到问题的开头来访问CloudZero数据。

警告

CloudZeroAmazon Q 中的CloudZero插件无法检测到用户权限。当管理员在账户中配置CloudZero插件时,在该 AWS 账户中拥有插件权限的用户可以访问该账户中可由该CloudZero插件检索的任何资源。

您可以配置 IAM 策略来限制用户可以访问哪些插件。有关更多信息,请参阅 配置用户权限

先决条件

添加权限

要配置插件,需要以下管理员级别的权限:

获取凭证

在开始之前,请记下您CloudZero账户中的以下信息。配置插件时,这些身份验证凭据将存储在 AWS Secrets Manager 密钥中。

  • API 密钥 — 一种访问密钥,允许 Amazon Q 调用 CloudZero API 来访问贵组织的成本见解和账单信息。您可以在CloudZero账户设置中找到 API 密钥。有关更多信息,请参阅CloudZero文档中的授权

有关从您的CloudZero账户获取凭证的更多信息,请参阅CloudZero文档

机密和服务角色

AWS Secrets Manager 秘密

配置插件时,Amazon Q 会为您创建一个用于存储CloudZero身份验证凭证的新 AWS Secrets Manager 密钥。或者,您可以使用自己创建的现有密钥。

如果您自己创建了密钥,请以明文形式输入 API 密钥:

your-api-key

有关创建密钥的更多信息,请参阅AWS Secrets Manager 用户指南中的创建密钥

服务角色

要在 Amazon Q Developer 中配置CloudZero插件,您需要创建一个服务角色来授予 Amazon Q 访问您的 Secrets Manager 密钥的权限。Amazon Q 扮演此角色来访问存储您的CloudZero凭证的密钥。

在 AWS 控制台中配置插件时,您可以选择创建新密钥或使用现有密钥。如果您创建了新密钥,则会为您创建关联的服务角色。如果您使用现有密钥和现有服务角色,请确保您的服务角色包含以下权限并附加了以下信任策略。所需的服务角色取决于您的秘密加密方法。

如果您的密钥使用 AWS 托管 KMS 密钥加密,则需要以下 IAM 服务角色:

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:us-east-1:{{your-account-id}}:secret:[[secret-id]]" ] } ] }

如果您的密钥使用客户托管密 AWS KMS 钥加密,则需要以下 IAM 服务角色:

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:us-east-1:{{accountId}}:secret:{{secretId}}" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:{{accountId}}:key/{{keyId}}", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-1.amazonaws.com" } } } ] }

要允许 Amazon Q 担任服务角色,该服务角色需要以下信任策略:

注意

codewhisperer 前缀是与 Amazon Q Developer 合并前的服务的旧名称。有关更多信息,请参阅 Amazon Q 开发者版重命名:变更摘要

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "q.amazonaws.com" }, "Action": ["sts:AssumeRole", "sts:SetContext"], "Condition": { "StringEquals": { "aws:SourceAccount": "{{accountId}}", "aws:SourceArn": "arn:aws:codewhisperer:{{region}}:{{accountId}}:profile/{{profileId}}" } } } ] }

有关服务角色的更多信息,请参阅《AWS Identity and Access Management 用户指南》中的创建角色以向 AWS 服务委派权限

配置CloudZero插件

您可以在 Amazon Q 开发者控制台中配置插件。Amazon Q 使用存储在中的凭证 AWS Secrets Manager 来实现与的交互CloudZero。

要配置CloudZero插件,请完成以下步骤:

  1. 在开发者/主页打开 Amazon Q https://console.aws.amazon.com/amazonq/开发者控制台

  2. 在 Amazon Q 开发者控制台主页上,选择设置

  3. 在导航栏中,选择插件

  4. 在插件页面上,选择CloudZero面板上的加号。插件配置页面打开。

  5. 在 “配置” AWS Secrets Manager中,选择 “创建新密钥” 或 “使用现有密钥”。Secrets Manager 密钥是存储您的CloudZero身份验证凭据的地方。

    如果您创建了新密钥,请输入以下信息:

    1. 对于 CloudZeroAPI 密钥,请输入您CloudZero组织的 API 密钥。

    2. 将创建一个服务角色,Amazon Q 将使用该角色来访问存储您的CloudZero凭证的密钥。请勿编辑为您创建的服务角色。

    如果您使用现有密钥,请从密钥下拉菜单中选择一个AWS Secrets Manager 密钥。该密钥应包含上一步中指定的CloudZero身份验证凭证。

    有关所需凭证的更多信息,请参阅获取凭证

  6. 对于配置 AWS IAM 服务角色,选择创建新的服务角色使用现有服务角色

    注意

    如果您在步骤 6 中选择了创建新密钥,则无法使用现有的服务角色。将为您创建一个新角色。

    如果您创建新的服务角色,则会创建一个服务角色,Amazon Q 将使用该角色来访问存储您的CloudZero凭证的密钥。请勿编辑为您创建的服务角色。

    如果您使用现有的服务角色,请从出现的下拉菜单中选择一个角色。确保您的服务角色具有中定义的权限和信任策略服务角色

  7. 选择 Save configuration

  8. CloudZero插件面板出现在插件页面的已配置插件部分后,用户就可以访问该插件了。

如果要更新插件的凭据,则必须删除当前插件并配置一个新插件。删除插件会删除之前的所有规范。每当您配置新插件时,都会生成一个新的插件 ARN。

配置用户权限

要使用插件,需要以下权限:

  • 在控制台中与 Amazon Q 聊天的权限。有关授予聊天所需权限的 IAM 策略示例,请参阅允许用户与 Amazon Q 聊天

  • q:UsePlugin 权限。

当您向 IAM 身份授予对已配置CloudZero插件的访问权限时,该身份将获得该插件可检索的CloudZero账户中任何资源的访问权限。 CloudZero插件未检测到用户权限。如果您想控制对插件的访问权限,可以通过在 IAM 策略中指定插件 ARN 来实现。

每次创建、删除和重新配置插件时,都会为其分配一个新的 ARN。如果您在策略中使用插件 ARN,则需要对其进行更新,才能授予对新配置的插件的访问权限。

要找到CloudZero插件 ARN,请前往 Amazon Q 开发者控制台中的插件页面,然后选择已配置CloudZero的插件。在插件详情页面上,复制插件 ARN。您可以将此 ARN 添加到策略中,以允许或拒绝对插件的访问。CloudZero

如果您创建了控制CloudZero插件访问权限的策略,请在策略中CloudZero为插件提供者指定。

有关控制插件访问的 IAM 策略的示例,请参阅允许用户使用来自一个提供商的插件聊天

使用CloudZero插件聊天

要使用该CloudZero插件,请在有关CloudZero您的 AWS 应用程序监视器和案例的问题开头输入@cloudzero。后续问题或对来自 Amazon Q 的问题的回复还必须包括@cloudzero

以下是一些示例用例和相关问题,您可以询问以充分利用 Amazon Q CloudZero 插件:

  • 了解如何CloudZero与一起使用 AWS — 询问CloudZero功能的工作原理。Amazon Q 可能会要求您提供更多信息,说明您正在尝试采取哪些措施来提供最佳答案。

    • @cloudzero how do I use CloudZero?

    • @cloudzero how do I get started with CloudZero?

  • 列出成本见解 — 获取成本见解列表或了解有关特定见解的更多信息。

    • @cloudzero list my top cost insights

    • @cloudzero tell me more about insight <insight ID>

  • 获取账单信息 — 向 Amazon Q CloudZero 插件询问您的 AWS 账单信息。

    • @cloudzero what were my AWS costs for December 2024?