AWS CodeCommit
用户指南 (API 版本 2015-04-13)

适用于不使用 AWS CLI 的 SSH 用户的设置

如果您打算为存储库使用 SSH 连接,则可在不安装 AWS CLI 的情况下连接 AWS CodeCommit。AWS CLI 包含在您使用和管理 CodeCommit 存储库时非常有用的命令,但对于初始设置来说,它不是必需的。

本主题假定:

  • 您已设置具有 CodeCommit 所需的策略或权限的 IAM 用户,以及上传密钥所需的 IAMUserSSHKeys 托管策略或等效权限。有关更多信息,请参阅为 CodeCommit 使用基于身份的策略(IAM 策略)

  • 您已有或知道如何创建公有-私有密钥对。我们强烈建议您为 SSH 密钥使用安全密码。

  • 您熟悉 SSH、Git 客户端及其配置文件。

  • (如果您使用的是 Windows)您已安装命令行实用程序,例如模拟 bash shell 的 Git Bash。

如果您需要更多指导,请按照对于 Linux, macOS, or Unix 上的 SSH 连接Windows 上的 SSH 连接中的说明操作。

步骤 1:将公有密钥与 IAM 用户关联

  1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.aws.amazon.com/iam/

  2. 在 IAM 控制台的导航窗格中,选择 Users (用户),然后从用户列表中选择您的 IAM 用户。

  3. Security Credentials 选项卡上选择 Upload SSH public key

  4. 将 SSH 公有密钥的内容粘贴到该字段中,然后选择 Upload SSH Key (上传 SSH 密钥)

    提示

    公有-私有密钥对必须为 SSH-2 RSA、采用 OpenSSH 格式且包含 2048 位。该密钥看上去类似于以下内容:

    ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2 5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@ip-192-0-2-137

    IAM 只接受 OpenSSH 格式的公有密钥。如果您以其他格式提供自己的公有密钥,系统会显示一条错误消息,指出该密钥格式无效。

  5. 复制 SSH 密钥 ID(例如,APKAEIBAERJR2EXAMPLE),然后关闭控制台。

    
            IAM 控制台中的 SSH 密钥 ID

步骤 2:将 CodeCommit 添加到 SSH 配置中

  1. 在终端 (Linux, macOS, or Unix) 或 bash 仿真器 (Windows) 中,通过键入 cat>> ~/.ssh/config 来编辑 SSH 配置文件:

    Host git-codecommit.*.amazonaws.com User Your-SSH-Key-ID, such as APKAEIBAERJR2EXAMPLE IdentityFile Your-Private-Key-File, such as ~/.ssh/codecommit_rsa or ~/.ssh/id_rsa

    提示

    如果您有多个 SSH 配置,请确保在内容前后包含空白行。保存文件 (同时按 Ctrld 键)。

  2. 运行下面的命令测试您的 SSH 配置:

    ssh git-codecommit.us-east-2.amazonaws.com

    出现提示时,输入 SSH 密钥文件的密码。如果一切配置正确,您应会看到下面的成功消息:

    You have successfully authenticated over SSH. You can use Git to interact with CodeCommit. Interactive shells are not supported. Connection to git-codecommit.us-east-2.amazonaws.com closed by remote host.

后续步骤

您已满足先决条件。请按照CodeCommit 教程中的步骤进行操作,开始使用 CodeCommit。

要连接到存储库,请按照连接存储库中的步骤操作。要创建存储库,请按照创建存储库中的步骤操作。