我尝试使用运行python3(kivy)的独立应用程序检索AWS Secret(boto3配置)。在
客户端使用boto3,使用硬编码的凭据可以很好地工作。在
我试着在boto3中使用get_credentials_for_identity
来获取creds。在
我创建了一个联合身份池,并为其分配了一个策略以访问机密管理器:
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "secretsmanager:GetSecretValue",
"Resource": "<arn-of-the-secret-the-app-needs-to-access>"
}
}
我也使用通用的Cognito角色做了同样的操作。(我知道这不是问题所在,但我相信我们都会蠢蠢欲动想办法解决问题)。在
^{pr2}$给了我错误的AccessKeyId
和{identity
的IAM的访问密钥/密码,但是我需要访问secrets manager
的IAM角色的访问密钥/密码,这样我就可以将它们输入boto3并检索creds/secret。在
对于user pool
我也需要相同的配置,但是一旦我意识到我所做的愚蠢,我可以配置出来。在
Cognito生成由AWS STS提供的新凭证。您将无法将这些凭据与现有的IAM生成的凭据相匹配。要访问AWS Secrets Manager api,请确保您的Cognito标识池的
Authenticated Role
具有足够的权限。在相关问题 更多 >
编程相关推荐