设置 Amplify 对仓库的访问权限 GitHub - AWS Amplify 托管

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

设置 Amplify 对仓库的访问权限 GitHub

Amplify 现在使用 GitHub 应用程序功能来授权 Amplify 对存储库的只读访问权限。 GitHub使用 Amplify GitHub 应用程序,可以对权限进行更精细的调整,使您能够仅向 Amplify 授予访问您指定的存储库的权限。要了解有关 GitHub应用程序的更多信息,请参阅 GitHub 网站上的关于 GitHub 应用程序

当你连接存储在存储库中的新应用程序时,Am GitHub plify 默认使用 GitHub 该应用程序来访问存储库。但是,您之前从存储库连接的现有 Am GitHub plify 应用程序将用于 OAuth 访问。 CI/CD 将继续适用于这些应用程序,但我们强烈建议您将它们迁移到使用新的 Amplify GitHub 应用程序。

当您使用 Amplify 控制台部署新应用程序或迁移现有应用程序时,系统会自动将您定向到 Amplify 应用程序的安装位置。 GitHub 要手动访问应用程序的安装登录页面,请打开 Web 浏览器并按地区导航到该应用程序。使用格式https://github.com/apps/aws-amplify-REGIONREGION替换为要部署 Amplify 应用程序的区域。例如,要在美国西部(俄勒冈)地区安装 Amplify GitHub 应用程序,请导航至 https://github.com/apps/ aws-amplify-us-west -2。

为新部署安装和授权 Amp GitHub lify 应用程序

当您使用存储库中的现有代码将新应用程序部署到 Am GitHub plify 时,请按照以下说明安装和授权该应用程序。 GitHub

安装和授权 Amplify 应用程序 GitHub
  1. 登录 AWS 管理控制台 并打开 Amplify 控制台。

  2. 所有应用程序页面中,选择新建应用程序,然后选择托管 Web 应用程序

  3. 在 “开始使用 Amplify Hosting” 页面上,选择 GitHub,然后选择继续。

  4. 如果这是首次连接 GitHub 存储库,则会在您的浏览器中打开 GitHub .com 上的新页面,请求 AWS Amplify 在您的 GitHub账户中进行授权。选择授权

  5. 接下来,您必须在您的 GitHub 账户中安装 Amplify GitHub 应用程序。GitHub.com 上会打开一个页面,请求允许 AWS Amplify 在你的 GitHub账户中安装和授权。

  6. 选择要在其中安装 Amplify 应用程序 GitHub 的 GitHub 账户。

  7. 请执行以下操作之一:

    • 要将安装应用于所有存储库,请选择所有存储库

    • 要将安装限于您所选择的特定存储库,请选择仅选择存储库。确保在您选择的存储库中包含要迁移的应用程序的存储库。

  8. 选择安装和授权

  9. 您将被重定向到 Amplify 控制台中应用程序的添加存储库分支页面。

  10. 最近更新的存储库列表中,选择要连接的存储库的名称。

  11. 分支列表中,选择要连接的存储库分支的名称。

  12. 选择下一步

  13. 配置构建设置页面上,选择下一步

  14. 查看页面上,选择保存并部署

将现有OAuth应用程序迁移到 Amplif GitHub y 应用程序

您之前从 GitHub 存储库连接的现有 Amplify 应用程序 OAuth用于访问存储库。我们强烈建议您将这些应用程序迁移到使用 Amplify GitHub 应用程序。

按照以下说明迁移应用程序并删除 GitHub 账户中相应的 OAuth webhook。请注意,根据是否已安装 Amplify GitHub 应用程序,迁移过程会有所不同。迁移第一个应用程序并安装并授权该 GitHub 应用程序后,您只需要更新存储库权限即可进行后续应用程序迁移。

将应用程序从迁移 OAuth 到 GitHub 应用程序
  1. 登录 AWS 管理控制台 并打开 Amplify 控制台。

  2. 选择要迁移的应用程序。

  3. 在应用程序的信息页面上,找到蓝色的 “迁移到我们的 GitHub应用程序” 消息,然后选择开始迁移

  4. 在 “安装和授权 GitHub 应用程序” 页面上,选择 “配置 GitHub 应用程序”。

  5. 您的浏览器中将打开一个新页面( GitHub.com),请求 AWS Amplify 在您的 GitHub 账户中进行授权。选择授权

  6. 选择要在其中安装 Amplify 应用程序 GitHub 的 GitHub 账户。

  7. 请执行以下操作之一:

    • 要将安装应用于所有存储库,请选择所有存储库

    • 要将安装限于您所选择的特定存储库,请选择仅选择存储库。确保在您选择的存储库中包含要迁移的应用程序的存储库。

  8. 选择安装和授权

  9. 您将被重定向到 GitHub Amplify 控制台中应用程序的 “安装和授权应用程序” 页面。如果 GitHub 授权成功,您将看到一条成功消息。选择下一步

  10. 完成安装页面上,选择完成安装。此步骤将删除您现有的 webhook,并创建一个新的 webhook,然后完成迁移。

为 CloudFormation CLI 和 SDK 部署设置 Amplify GitHub 应用程序

您之前从 GitHub 存储库连接的现有 Amplify 应用程序 OAuth用于访问存储库。这可能包括您使用 Amplify 命令行界面 (CLI) 部署的应用程序 CloudFormation,或者。 SDKs我们强烈建议您将这些应用程序迁移到使用新的 Amplify GitHub 应用程序。迁移必须在 AWS 管理控制台的 Amplify 控制台中执行。有关说明,请参阅将现有OAuth应用程序迁移到 Amplif GitHub y 应用程序

你可以使用 CloudFormation Amplify CLI 和 SDKs 来部署一个使用该应用程序访问存储库的新 Amplify GitHub 应用程序。此过程要求您首先在自己的 GitHub 账户中安装 Amplify GitHub 应用程序。接下来,您需要在您的 GitHub 账户中生成个人访问令牌。最后,部署应用程序并指定个人访问令牌。

在你的账户中安装 Amplify GitHub 应用程序
  1. 打开网络浏览器,导航到要部署应用程序的 AWS 区域中的 GitHub Amplify 应用程序的安装位置。

    使用该格式https://github.com/apps/aws-amplify-REGION/installations/newREGION替换为你自己的输入。例如,如果您要在美国西部(俄勒冈州)区域安装应用程序,请指定 https://github.com/apps/aws-amplify-us-west-2/installations/new

  2. 选择要在其中安装 Amplify 应用程序 GitHub 的 GitHub 账户。

  3. 请执行以下操作之一:

    • 要将安装应用于所有存储库,请选择所有存储库

    • 要将安装限于您所选择的特定存储库,请选择仅选择存储库。确保在您选择的存储库中包含要迁移的应用程序的存储库。

  4. 选择安装

在您的 GitHub 账户中生成个人访问令牌
  1. 登录您的 GitHub 账户。

  2. 在右上角,找到您的个人资料照片,然后从菜单中选择设置

  3. 在左侧导航菜单中,选择 SMTP 设置

  4. GitHub 应用程序页面的左侧导航菜单中,选择个人访问令牌

  5. 个人访问令牌页面上,选择生成新令牌

  6. 新建个人访问令牌页面上,请在注释中输入令牌的描述性名称。

  7. 选择范围部分,选择 admin:repo_hook

  8. 选择生成令牌

  9. 复制并保存个人访问令牌。当你使用 CLI 部署 Amplify 应用程序时,你需要提供它 CloudFormation,或者。 SDKs

在您的 GitHub 账户中安装 Amplify GitHub 应用程序并生成个人访问令牌后,您可以使用 Amplify CLI 或部署新应用程序。 CloudFormation SDKs使用 accessToken 字段指定您在上一步中创建的个人访问令牌。有关更多信息,请参阅 CreateAppAmplify API 参考和《AWS CloudFormation 用户AWS::Amplify::App指南》。

以下 CLI 命令部署了一个使用 GitHub 该应用程序访问仓库的新 Amplify 应用程序。用您自己的信息替换myapp-using-githubapphttps://github.com/Myaccount/react-app、和MY_TOKEN

aws amplify create-app --name myapp-using-githubapp --repository https://github.com/Myaccount/react-app --access-token MY_TOKEN

使用 Amplify GitHub 应用程序设置网页预览

Web 预览会将向 GitHub 仓库发出的每个拉取请求 (PR) 部署到一个唯一的预览 URL。预览现在使用 Amp GitHub lify 应用程序访问您的存储库。 GitHub 有关安装和授权 GitHub 应用程序进行网页预览的说明,请参阅。为拉取请求启用 Web 预览