

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Git 存储库 SSH 密钥
<a name="workingapps-deploykeys"></a>

**重要**  
该 AWS OpsWorks Stacks 服务于 2024 年 5 月 26 日终止，新客户和现有客户均已禁用。我们强烈建议客户尽快将其工作负载迁移到其他解决方案。如果您对迁移有疑问，请通过 re [AWS : Post 或通过 Pre](https://repost.aws/) mium Su [AWS pp](https://aws.amazon.com/support) ort 与 AWS 支持 团队联系。

Git 存储库 SSH 密钥，有时称为“部署 SSH 密钥”，是一种没有密码的 SSH 密钥，可通过它访问私有 Git 存储库。理想情况下，它不属于任何特定开发人员。其目的是允许 OpsWorks Stacks 异步部署来自 Git 存储库的应用程序或食谱，而无需您提供任何进一步的输入。

下面介绍了创建存储库 SSH 密钥的基本过程。有关详细信息，请参阅您的存储库的相关文档。例如，[管理部署密钥](https://help.github.com/articles/managing-deploy-keys)描述了如何为存储库创建存储库 SSH 密钥，Bitbucket [上的部署密钥描述了如何为 Bitbuck](http://blog.bitbucket.org/2012/06/20/deployment-keys/) et 存储库创建存储库 SSH 密钥。 GitHub 请注意，某些文档介绍了如何在服务器上创建密钥。对于 OpsWorks 堆栈，只需在说明中将 “服务器” 替换为 “工作站” 即可。

**创建存储库 SSH 密钥**

1. 使用 `ssh-keygen` 等程序在您的工作站上为 Git 存储库创建部署 SSH 密钥对。
**重要**  
OpsWorks 堆栈不支持 SSH 密钥密码。

1. 将公有密钥分配给存储库，并将私有密钥存储在您的工作站上。

1. 在您添加应用程序或指定说明书存储库时，在 **Repository SSH Key** 框中输入私有密钥。有关更多信息，请参阅 [添加应用程序](workingapps-creating.md)。

OpsWorks Stacks 将存储库 SSH 密钥传递给每个实例，然后内置配方使用该密钥连接到存储库并下载代码。在[`deploy` 属性](workingcookbook-json.md)中将密钥存储为 [`node[:deploy]['appshortname'][:scm][:ssh_key]`](attributes-json-deploy.md#attributes-json-deploy-app-scm-key)，并且仅可由根用户访问。