关于密钥
开发环境机密是加密的环境变量,您可以在组织、仓库或个人账户的 GitHub Codespaces 设置中创建。本文章解释了如何管理组织机密和仓库机密。有关创建用户特定机密的信息,请参阅 管理 GitHub Codespaces 的账户特定机密。
您创建的开发环境机密可在 GitHub Codespaces 中使用。GitHub 使用 libsodium 密封盒 在机密传输到 GitHub 之前进行加密,并仅在您在代码空间中使用时进行解密。
组织机密允许您在多个仓库之间共享机密,从而减少创建重复机密的需求。您可以使用访问策略来控制哪些仓库可以使用组织机密。
创建密钥后,它将在您创建新 codespace 或重启 codespace 时可用。如果您已在 GitHub 上创建了密钥,但想在当前运行的 codespace 中使用它,请先停止该 codespace,然后重新启动。有关停止 codespace 的信息,请参阅 在 GitHub Codespaces 中使用 Visual Studio Code 命令面板。
命名密钥
以下规则适用于密钥名称
-
密钥名称只能包含字母数字字符(
[a-z]、[A-Z]、[0-9])或下划线(_)。不允许使用空格。 -
密钥名称不得以
GITHUB_前缀开头。 -
密钥名称不得以数字开头。
-
密钥名称不区分大小写。
-
机密名称必须在其创建的级别上保持唯一。例如,在仓库级别创建的机密必须在该仓库中具有唯一名称,而在组织级别创建的机密必须在该级别上保持唯一。
如果同一名称的密钥存在于多个层级,则最低层级的密钥优先。例如,组织层级的密钥与仓库层级的同名密钥冲突时,以仓库层级的密钥为准。
密钥限制
每个组织最多可存储 100 个机密,每个仓库最多可存储 100 个机密。
密钥大小限制为 48 KB。
仓库的推荐机密
您的项目可能需要特定的用户机密。例如,要在代码空间中运行应用程序,用户可能需要提供个人 API 密钥。如果出现这种情况,您可以在 dev container 配置中指定推荐机密。当用户使用高级选项页面创建代码空间时,如果他们尚未创建这些个人机密,系统会提示他们提供这些机密的值。如果用户提供了用于代码空间的机密值,该机密将被添加到其个人的 Codespaces 设置中。以后在为该仓库创建代码空间时,无需再次输入此机密的值。欲了解更多信息,请参阅 为仓库指定推荐机密。
为仓库添加机密
要为组织仓库创建开发环境机密,您必须拥有管理员访问权限。
-
在 GitHub 上,导航至仓库的主页面。
-
在仓库名称下,点击 设置。如果看不到 “设置” 选项卡,请选择 下拉菜单,然后点击 设置。

-
在侧边栏的 “安全” 区域,选择 机密和变量,然后点击 Codespaces。
-
在页面顶部,点击 新建仓库机密。
-
在 名称 输入框中输入密钥的名称。
-
输入密钥的值。
-
点击 添加密钥。
为组织添加机密
在组织中创建开发环境机密时,您可以使用策略限制哪些仓库可以访问该机密。例如,您可以授予所有仓库访问权限,或仅限制私有仓库或指定仓库列表的访问权限。
要在组织层级创建密钥,您必须拥有 admin 访问权限。
-
在 GitHub 上,前往该组织的首页。
-
在组织名称下,点击 设置。如果看不到 “设置” 选项卡,请选择 下拉菜单,然后点击 设置。

-
在侧边栏的 “安全” 区域,选择 机密和变量,然后点击 Codespaces。
-
在页面顶部,点击 新建机密。
-
在 名称 输入框中输入密钥的名称。
-
输入密钥的 Value(值)。
-
在 Repository access(仓库访问) 下拉列表中选择一个访问策略。
-
点击 添加密钥。
审查组织级别密钥的访问权限
您可以查看组织中开发环境机密所应用的访问策略。
-
在 GitHub 上,前往该组织的首页。
-
在组织名称下,点击 设置。如果看不到 “设置” 选项卡,请选择 下拉菜单,然后点击 设置。

-
在侧边栏的 “安全” 区域,选择 机密和变量,然后点击 Codespaces。
-
可选地,要查看或编辑每个机密的配置权限,请在该机密右侧,点击.