繁体   English   中英

AWS CDK Python(未找到凭证)

[英]AWS CDK Python (No Credentials Found)

在使用 AWS CDK 设置虚拟环境后,我尝试使用命令CDK Bootstrap 这是我的应用程序的代码,上面的命令从中提取凭据。

#!/usr/bin/env python3

from aws_cdk import core

from hello.hello_stack import MyStack


app = core.App()
MyStack(app, "hello-cdk-1", env={'account':'IDHERE','region': 'us-east-2'})
MyStack(app, "hello-cdk-2", env={'account':'IDHERE','region': 'us-west-2'})

app.synth()

显然我已经把accountID拿出来了。 使用命令 CDK Bootstrap 这里是我的错误 output

 ❌  Environment aws://ACCOUNTIDHERE/us-west-2 failed bootstrapping: Error: Need to perform AWS calls for account ACCOUNTIDHERE, but no credentials found. Tried: default credentials.
    at CredentialsCache.getCredentials (/usr/local/lib/node_modules/aws-cdk/lib/api/util/sdk.ts:261:11)
    at CredentialsCache.get (/usr/local/lib/node_modules/aws-cdk/lib/api/util/sdk.ts:223:25)
    at SDK.cloudFormation (/usr/local/lib/node_modules/aws-cdk/lib/api/util/sdk.ts:117:20)
    at Object.deployStack (/usr/local/lib/node_modules/aws-cdk/lib/api/deploy-stack.ts:56:15)
    at Object.bootstrapEnvironment (/usr/local/lib/node_modules/aws-cdk/lib/api/bootstrap-environment.ts:93:10)
    at /usr/local/lib/node_modules/aws-cdk/bin/cdk.ts:270:24
    at async Promise.all (index 1)
Need to perform AWS calls for account ACCOUNTIDHERE, but no credentials found. Tried: default credentials.

你一开始运行aws configure了吗? 尝试cat ~/.aws/credentials ,如果您看到类似一切都必须正常的内容:

[default]
region = us-east-1
aws_access_key_id = *********************
aws_secret_access_key = ******************************************

或者您在[default]部分没有aws_access_key_id / aws_secret_access_key 您可以在此处阅读所有这些信息 - https://cdkworkshop.com/15-prerequisites/200-account.html (官方 CDK Workshop)。

只需尝试使用环境变量: AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_DEFAULT_REGION

https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html

这个对我有用。

我正在使用 cdk 版本1.57.0

在我的例子中,我使用 aws-runas 获取临时凭证并使用代码编辑器终端 (windows 10) 设置它。

set AWS_ACCESS_KEY_ID=..........
set AWS_SECRET_ACCESS_KEY=.......
set AWS_SESSION_TOKEN=...........
set AWS_REGION=.......

使用代码编辑器终端我遇到了同样的问题,但是使用不同的window 命令提示符,我能够毫无问题地运行引导程序和部署命令。

我的根目录上安装了一些东西,阻止了我的节点模块执行 cdk。 我重新映像了我的 Mac,它工作正常。 谢谢你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM