故障排除 Amazon Secrets Manager - Amazon Secrets Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

故障排除 Amazon Secrets Manager

使用此处的信息可帮助您诊断和修复您在使用 Secrets Manager 时可能遇到的问题。

有关轮换的问题,请参阅 Amazon Secrets Manager 轮换问题排查

“访问被拒绝”消息

当你API拨打 Secrets GetSecretValue Manager 之类的电话时,你必须拥有拨打该电话的IAM权限。 CreateSecret 当您使用控制台时,控制台会代表您API拨打相同的呼叫,因此您还必须拥有IAM权限。管理员可以通过将IAM策略附加到您的IAM用户或您所属的群组来授予权限。如果授予这些权限的政策声明包含任何条件,例如 time-of-day或 IP 地址限制,则您在发送请求时也必须满足这些要求。有关查看或修改IAM用户、组或角色策略的信息,请参阅《IAM用户指南》中的使用策略。有关 Secrets Manager 所需权限的信息,请参阅 Amazon Secrets Manager 的身份验证和访问控制

如果您在不使用的情况下手动签署API请求,请验证您是否正确签署了请求Amazon SDKs

对于临时安全凭证的“拒绝访问”

验证您用于发出请求的IAM用户或角色是否具有正确的权限。临时安全证书的权限来自IAM用户或角色。这意味着权限仅限于授予IAM用户或角色的权限。有关如何确定临时安全证书权限的更多信息,请参阅IAM用户指南中的控制临时安全证书的权限

确认已正确对请求进行签名,并且请求格式正确无误。有关详细信息,请参阅您选择的工具包文档SDK,或IAM用户指南中的使用临时安全证书请求 Amazon 资源访问权限

验证您的临时安全凭证没有过期。有关更多信息,请参阅《IAM用户指南》中的 “申请临时安全证书”。

有关 Secrets Manager 所需权限的信息,请参阅 Amazon Secrets Manager 的身份验证和访问控制

并非始终立即显示我所做的更改。

Secrets Manager 使用名为最终一致性的分布式计算模型。你在 Secrets Manager(或其他 Amazon 服务)中所做的任何更改都需要一段时间才能从所有可能的端点中看见。它在服务器与服务器之间、复制区域与复制区域之间,以及全球的区域与区域之间发送数据需要时间,这会造成一定的延迟。Secrets Manager 也使用缓存来提高性能,但在某些情况下,这可能会增加时间。在之前缓存的数据超时之前,更改可能不可见。

在设计全球应用程序时应考虑到这些可能的延迟。此外,确保应用程序可以按预期工作,即使在一个位置进行的更改不能立即在其他位置可见。

有关最终一致性如何影响其他一些 Amazon 服务的更多信息,请参阅:

创建密钥时 “无法使用非对称KMS密钥生成数据密钥”

Secrets Manager 使用与密KMS钥关联的对称加密密钥为每个密钥值生成数据密钥。您不能使用非对称KMS密钥。确认您使用的是对称加密KMS密钥而不是非对称KMS密钥。有关说明,请参阅识别非对称KMS密钥

O Amazon CLI R Amazon SDK 操作无法从部分内容中找到我的秘密 ARN

在许多情况下,Secrets Manager 可以从部分ARN而不是全部中找到你的秘密ARN。但是,如果你的密钥名称以连字符结尾,后面跟着六个字符,那么 Secrets Manager 可能无法仅从密钥的一部分中找到秘密。ARN相反,我们建议您使用密钥的完整名称ARN或名称。

更多详细信息

Secrets Manager 在机密名称的末尾包含六个随机字符,以帮助确保密钥的ARN唯一性。如果删除了原始密钥,然后使用相同的名称创建了新密钥,则ARNs由于这些字符,这两个密钥会有所不同。有权访问旧密钥的用户不会自动获得对新密钥的访问权限,因为两ARNs者不同。

Secr ARN ets Manager 使用区域、帐户、机密名称,然后是连字符和另外六个字符构造一个代表机密,如下所示:

arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName-abcdef

如果你的密钥名称以连字符和六个字符结尾,那么在 Secrets Manager ARN 看来,只使用其中一部分就好像你在指定完整名称一样。ARN例如,你可能有一个名MySecret-abcdef为 ARN

arn:aws:secretsmanager:us-east-2:111122223333:secret:MySecret-abcdef-nutBrk

如果您调用以下操作,该操作仅使用部分密钥ARN,那么 Secrets Manager 可能找不到该密钥。

$ aws secretsmanager describe-secret --secret-id arn:aws:secretsmanager:us-east-2:111122223333:secret:MySecret-abcdef

此密钥由 Amazon 服务管理,您必须使用该服务对其进行更新。

如果您在尝试修改密钥时遇到此消息,则只能使用消息中列出的管理服务来更新密钥。有关更多信息,请参阅 由其他 Amazon 服务托管的 Amazon Secrets Manager 密钥

要确定谁管理密钥,您可以查看密钥名称。由其他服务管理的密钥以该服务的 ID 作为前缀。或者,在中 Amazon CLI,调用 d escribe-secret,然后查看该字段。OwningService