AWS Codecommit - fatal: unable to access : The requested URL returned error: 403

AWS Codecommit - fatal: unable to access : The requested URL returned error: 403

我能够从我的 AWS CodeCommit 存储库中提取 and/or 推送更新,直到我重新安装 aws-cli。 我尝试了所有我能找到的建议解决方案,但似乎没有任何效果。

我正在开发 Ubuntu 21.10 并安装了:

$ aws --v
  aws-cli/1.19.1 Python/3.9.7 Linux/5.13.0-41-generic botocore/1.20.0

git version 2.32.0

我得到的错误是:

fatal: unable to access 'https://git-codecommit.eu-west-2.amazonaws.com/v1/repos/myrepo/': The requested URL returned error: 403

它曾经询问我的用户名和密码,但在我尝试解决问题后,它不再完全询问我的凭据。无论哪种方式,我都确认我使用的是正确的凭据。此外,我在 AWS 确实拥有必要的权限。直到几个小时前,我才成功拉取和推送更新。

aws credential helper 按照大多数在线解决方案的建议进行设置。更具体地说,我的 .gitconfig 文件如下所示:

[user]
    name = My_name
    email = My_email
[credential]
    helper = !aws codecommit credential-helper $@
    UseHttpPath = true

此外,我正确地(使用正确的区域)设置了 $ aws configure 配置。

清单$ git config --list --show-origin我得到:

file:/etc/gitconfig     user.email=My_email
file:/home/f_user/.gitconfig user.name=My_name
file:/home/f_user/.gitconfig user.email=My_email
file:/home/f_user/.gitconfig credential.helper=!aws codecommit credential-helper $@
file:/home/f_user/.gitconfig credential.usehttppath=true

老实说,我不知道还能尝试什么,如有任何帮助,我们将不胜感激!

编辑: 我解决问题的方法是:

我不确定解决它的部分是什么,可能是第一步。

Double-check 您的 AWS managed policies 用于 CodeCommit。
如果您的 ,则需要使用令牌,而不是密码。

在本地,检查您的凭据管理器存储的密码:

printf "protocol=https\nhost=git-codecommit.eu-west-2.amazonaws.com"|aws codecommit credential-helper get

我最终解决问题的方法是:

Uninstalled aws client from my system and re installed and configured it from scratch.
I cloned my IAM account and gave it Full AWSCodeCommit access.

我不确定是什么部分解决了它,这可能是我重新安装所有内容后再次提示我使用我的凭据的第一步。