本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
管理机密和资源策略
配置第三方语音提供商时,需要在 Secrets Manager 中创建一个包含语音提供商的 API 密钥的密钥。创建密钥的过程分为两步:
-
创建包含 API 密钥的密钥。有关说明,请参阅创建 AWS Secrets Manager 密钥。
-
配置必要的权限:
-
将基于资源的策略附加到密钥。
-
将基于资源的策略附加到与密钥关联的 KMS 密钥(不是 API 密钥)。KMS 密钥保护机密中的 API 密钥。
这些政策允许 Connect 客户访问密钥中的 API 密钥。请注意,您不能使用默认
aws/secretsmanagerKMS 密钥;必须创建新密钥或使用现有的客户管理密钥。有关 KMS 密钥如何保护机密的更多信息,请参阅密钥管理器中的密钥加密和解密。 -
确保密钥的基于资源的策略包括aws:SourceAccount和aws:SourceArn混乱的代理条件(参见混乱的代理人问题),并且 KMS 密钥的基于资源的策略包括该kms:EncryptionContext:SecretARN条件。这将确保 Connect 客户只能在单个特定实例的上下文中访问您的 API 密钥,并且只能在该实例和特定密钥的上下文中访问您的 KMS 密钥。
Secrets Manager 密钥的基于资源的策略示例
以下是您可以附加到密钥的基于资源的策略的示例。
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "connect.amazonaws.com" ] }, "Action": "secretsmanager:GetSecretValue", "Resource": "*", "Condition": { "ArnLike": { "aws:sourceArn": "///the ARN of your Amazon Connect instance///" }, "StringEquals": { "aws:sourceAccount": "///Your account ID///" } } } ] }
基于资源的策略示例 AWS KMS key s
以下是您可以附加到 KMS 密钥的基于资源的策略的示例。
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "connect.amazonaws.com" ] }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "ArnLike": { "aws:sourceArn": "///the ARN of your Amazon Connect instance///" }, "StringEquals": { "aws:sourceAccount": "///Your account ID///", "kms:EncryptionContext:SecretARN": "///the ARN of your secrets manager secret///" } } } ] }
将基于资源的策略附加到 Secrets Manager 密钥
要将基于资源的策略附加到您的密钥,请转到中的密钥管理器控制台 AWS 管理控制台,导航到您的密钥,选择编辑权限或资源权限,然后直接在页面上添加或修改资源策略,使其看起来与示例类似。您还可以通过的put-resource-policy命令附加资源策略,也可以使用 PutResourcePolicy API 操作以编程方式附加资源策略。 AWS CLI
将基于资源的策略附加到您的 KMS 密钥
要将基于资源的策略附加到您的 KMS 密钥,请转到中的 AWS Key Management Service 控制台 AWS 管理控制台,导航到您的 KMS 密钥并编辑您的密钥策略,使其与示例类似。您还可以通过的put-key-policy命令更新密钥,也可以使用 PutKeyPolicy API 操作以编程方式更新密钥。 AWS CLI
轮换 API 密钥
我们建议至少每 90 天轮换一次 API 密钥,以最大限度地降低泄露风险,并保持良好的密钥轮换流程以应对紧急情况。
要轮换 API 密钥,必须轮换包含该密钥的密钥。有关如何轮换密钥的更多信息,请参阅凭据管理器用户指南中的轮换凭据管理器密钥。轮换 API 密钥时,建议您等待先前密钥的使用量降至零后再撤消旧 API 密钥,以确保正在进行的请求不受影响。