跳至主要内容

管理您针对 GitHub Codespaces 的帐户特定密钥

您可以将敏感信息(如令牌)存储为环境变量,以便在代码空间中访问。

关于 GitHub Codespaces 的密钥

您可以向个人账户添加开发环境密钥,并在代码空间中使用它们。例如,您可能希望将以下敏感信息存储为密钥:

您可以选择哪些仓库能够访问每个密钥。随后,您可以在任何对该密钥有访问权限的仓库创建的代码空间中使用该密钥。若要将密钥与从模板创建的代码空间共享,需先将代码空间发布到 GitHub 上的仓库,然后授予该仓库对密钥的访问权限。

创建密钥后,它将在您创建新 codespace 或重启 codespace 时可用。如果您已在 GitHub 上创建了密钥,但想在当前运行的 codespace 中使用它,请先停止该 codespace,然后重新启动。有关停止 codespace 的信息,请参阅 在 GitHub Codespaces 中使用 Visual Studio Code 命令面板

命名密钥

以下规则适用于密钥名称

  • 密钥名称只能包含字母数字字符([a-z][A-Z][0-9])或下划线(_)。不允许使用空格。
  • 密钥名称不得以 GITHUB_ 前缀开头。
  • 密钥名称不得以数字开头。
  • 密钥名称不区分大小写。
  • 密钥名称在其创建的层级内必须唯一。例如,在仓库层级创建的密钥必须在该仓库中具有唯一名称。

如果同一名称的密钥存在于多个层级,则最低层级的密钥优先。例如,组织层级的密钥与仓库层级的同名密钥冲突时,以仓库层级的密钥为准。

密钥限制

您最多可以为 GitHub Codespaces 存储 100 个密钥。

密钥大小限制为 48 KB。

添加密钥

  1. 在 GitHub 任意页面的右上角,点击您的头像,然后点击 设置.

  2. 在侧边栏的“代码、计划和自动化”部分,点击 代码空间

  3. 在 “Codespaces secrets” 右侧,单击 新建密钥

  4. 在 “名称” 下,输入密钥的名称。

  5. 在 “值” 下,输入密钥的值。

  6. 选择 “仓库访问” 下拉菜单,然后点击您希望能够访问该密钥的仓库。对每个需要访问的仓库都重复此操作。

    Screenshot of the "Repository access" dropdown menu. Two repositories are listed in the dropdown menu.

  7. 点击 添加密钥

编辑密钥

您可以更新现有密钥的值,也可以更改哪些仓库可以访问该密钥。

  1. 在 GitHub 任意页面的右上角,点击您的头像,然后点击 设置.

  2. 在侧边栏的“代码、计划和自动化”部分,点击 代码空间

  3. 在 “Codespaces secrets” 下,找到要编辑的密钥,在其右侧单击 更新

  4. 在 “值” 下,点击链接 “输入新值”。

    Screenshot of the "Codespaces / Update secret" page. The "enter a new value" link is highlighted with a dark orange outline.

  5. 在 “值” 下,输入密钥的值。

  6. 选择 “仓库访问” 下拉菜单,然后点击您希望能够访问该密钥的仓库。对每个需要访问的仓库都重复此操作。

    Screenshot of the "Repository access" dropdown menu. Two repositories are listed in the dropdown menu.

  7. 如有需要,可通过取消选中相应仓库来撤销该仓库对密钥的访问权限。

    Screenshot showing a list of two repositories. Each has a selected checkbox.

  8. 点击 保存更改

删除密钥

  1. 在 GitHub 任意页面的右上角,点击您的头像,然后点击 设置.
  2. 在侧边栏的“代码、计划和自动化”部分,点击 代码空间
  3. 在 “Codespaces secrets” 下,找到要删除的密钥,在其右侧单击 删除
  4. 阅读警告信息后,单击 确定

使用密钥

开发环境密钥会作为环境变量导出到用户的终端会话中。

Screenshot of the Terminal in VS Code. The command "echo $EXAMPLE_API_KEY" has returned "aBCdeFG1234567."

代码空间构建完成并运行后,您即可使用开发环境密钥。例如,密钥可以用于

  • 从集成终端或 SSH 会话启动应用程序时。
  • 在代码空间运行后执行的 dev 容器生命周期脚本中。有关 dev 容器生命周期脚本的更多信息,请参阅 Development Containers 网站上的文档:规范

开发环境密钥不能在以下情况下使用

  • 代码空间构建期间(即在 Dockerfile 或自定义入口点内部)。
  • 在 dev 容器特性内部。更多信息请参阅 Development Containers 网站上的 features 属性(dev 容器规范)。

延伸阅读

© . This site is unofficial and not affiliated with GitHub, Inc.