首页 > 解决方案 > 可以连接到 Code Commit SSH 但权限被拒绝 git clone

问题描述

我第一次尝试按照适用于 Windows 的 AWS 文档克隆 CodeCommit 存储库:https ://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-ssh-windows.html 。

我创建了一个密钥对,我的配置文件如下所示:

Host git-codecommit.*.amazonaws.com
User <SSH key name from console>
IdentityFile ~/.ssh/id_rsa

我能够成功连接到 ssh git-codecommit.eu-west-2.amazonaws.com(我被告知不支持交互式 shell),所以我认为这表明密钥配对和配置是可以的.

当我尝试克隆存储库时,从控制台复制 URL:

git clone ssh://git-codecommit.eu-west-2.amazonaws.com/v1/repos/<repo name>

有人告诉我:

权限被拒绝(公钥)。致命:无法从远程存储库中读取。

请确保您具有正确的访问权限并且存储库存在。

非根 IAM 用户拥有 AdministratorAccess 托管策略,其中包括对 CodeCommit 的完全访问权限:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*"
        }
    ]
}

我已尝试按照此处的建议修改 URL 以包含用户:git clone ssh permission denied这也不起作用。

客户端和服务器之间有一个公司代理,但如果这有干扰,我预计 SSH 连接也会失败。

任何建议表示赞赏。

谢谢

更新 这在非公司机器上工作得非常好,这表明它是客户端或网络,这意味着我能够解决这个问题。不过,我仍然会对建立 SSH 连接和克隆存储库之间的区别感兴趣。

标签: amazon-iamaws-codecommit

解决方案


推荐阅读