我有一个react Amplify应用程序。我想做的就是在它上面工作,推动更改来放大,等等。这些都是标准和基本的命令,如放大和推送。
问题是,在我开始制作应用程序后不久(一两个月),我不再被允许从命令行推送、拉或处理应用程序。没有任何解释,唯一的错误是…
An error occurred during the push operation: /
Access Denied
✅ Report saved: /var/folders/8j/db7_b0d90tq8hgpfcxrdlr400000gq/T/storygraf/report-1658279884644.zip
✔ Done
从错误中创建的日志显示了这一点。
error.json
{
"message": "Access Denied",
"code": "AccessDenied",
"region": null,
"time": "2022-07-20T01:20:01.876Z",
"requestId": "DRFVQWYWJAHWZ8JR",
"extendedRequestId": "hFfxnwUjbtG/yBPYG+GW3B+XfzgNiI7KBqZ1vLLwDqs/D9Qo+YfIc9dVOxqpMo8NKDtHlw3Uglk=",
"statusCode": 403,
"retryable": false,
"retryDelay": 60.622127086356855
}
我的.aws/凭据文件中有两个用户。一个是默认的(这是我的工作帐户)。另一种叫做"个人"。我试着用
推amplify push
amplify push --profile default
amplify push --profile personal
结果总是一样的。
我执行了标题为"创建环境变量以承担IAM角色并验证访问"的过程;并输入新的AWS_ACCESS_KEY_ID和新的AWS_SECRET_ACCESS_KEY。当我运行命令…
aws sts get-caller-id
返回正确的Arn。但是,文档说需要设置一个AWS_SESSION_TOKEN变量,我不知道那是什么。
在新的配置文件下运行amplify push仍然会导致错误。
我也试过
AWS_PROFILE=personal aws sts get-caller-identity
同样,这导致了正确的设置,但是由于同样的原因,amplify push仍然失败。
在这一点上,我准备放下它,转移到别的东西。我已经调试了几个月了,现在在S3上设置一个标准的react应用程序并手动建立我的资源要容易得多,而不需要处理这个问题。任何帮助都是感激的。
在amplify
文件夹中有一个.config
目录。有三个文件:
local-aws-info.json
local-env-info.json
project-config.json
project-config.json
是必需的,但是local-*
文件维护本地配置的状态。删除这些,您可以重新创建项目并重新验证环境
这对我来说也是同样的问题。一旦将CLI的身份验证方法设置为profile,似乎就没有办法重新配置它了。我试着把它改回放大工作室,但没能破解更新它的代码。这方面的文档非常糟糕。