关于 GitHub Codespaces
的机密
你可以将开发环境机密添加到要在 codespace 中使用的个人帐户。 例如,可能希望将以下敏感信息作为机密进行存储和访问:
- 云服务的访问令牌
- 服务主体
- 订阅标识符
- 专用映像注册表的凭据(有关详细信息,请参阅“允许 codespace 访问专用注册表”)
您可以选择哪些仓库应有权访问每个密码。 然后,您可以在为有权访问密码的仓库创建的任何代码空间中使用该密码。 若要与通过模板创建的 codespace 共享机密,需要将 codespace 发布到 GitHub 上的存储库,然后授予该存储库对该机密的访问权限。
一旦创建了密码,便可以在创建新的代码空间或重新启动代码空间时使用它。 如果已在 GitHub 上创建了机密,并且想要在当前正在运行的 codespace 中使用它,请停止 codespace,然后重启它。 有关停止 codespace 的信息,请参阅“在 GitHub Codespaces 中使用 Visual Studio Code 命令面板”。
命名密钥
以下规则适用于密码名称:
- 密钥名称只能包含字母数字字符(
[a-z]
、[A-Z]
、[0-9]
)或下划线 (_
)。 不允许空格。 - 机密名称不得以
GITHUB_
前缀开头。 - 密码名称不能以数字开头。
- 机密名称不区分大小写。
- 密码名称在所创建的级别上必须是唯一的。 例如,在仓库级别创建的密钥必须在该仓库中具有唯一的名称。
如果具有相同名称的机密存在于多个级别,则级别最低的机密优先。 例如,如果组织级别密码的名称与仓库级别的密码相同,则仓库级别的密码优先。
密码的限制
最多可以为 GitHub Codespaces 存储 100 个密码。
密码大小限于 48 KB。
添加密码
-
在 GitHub 任意页面的右上角,单击个人资料照片,然后单击 “设置”****。
-
在边栏的“代码、规划和自动化”部分中,单击“ Codespaces”。
-
在“Codespaces 机密”右侧,单击“新建机密”。
-
在“名称”下,输入机密的名称。
-
在“Value(值)”下,输入密码的名称。
-
选择“Repository access(仓库访问)”下拉菜单,然后单击要访问该机密的仓库。 对每个您想要访问该机密的仓库重复操作。
-
单击“添加机密”。
编辑密码
您可以更新现有密码的值,也可以更改哪些仓库可以访问密码。
-
在 GitHub 任意页面的右上角,单击个人资料照片,然后单击 “设置”****。
-
在边栏的“代码、规划和自动化”部分中,单击“ Codespaces”。
-
在“Codespaces 机密”下,要编辑的机密右侧,单击“更新”。****
-
在“值”下,单击“输入新值”链接。****
-
在“Value(值)”下,输入密码的名称。
-
选择“Repository access(仓库访问)”下拉菜单,然后单击要访问该机密的仓库。 对每个您想要访问该机密的仓库重复操作。
-
(可选)要删除密码对仓库的访问权限,请取消选择仓库。
-
单击“保存更改”。
删除密码
- 在 GitHub 任意页面的右上角,单击个人资料照片,然后单击 “设置”****。
- 在边栏的“代码、规划和自动化”部分中,单击“ Codespaces”。
- 在“Codespaces 机密”下,要删除的机密右侧,单击“删除”。****
- 阅读警告,然后单击“确定”。
使用机密
开发环境机密作为环境变量导出到用户的终端会话中。
生成 codespace 并运行后,可以使用开发环境机密。 例如,机密可用于:
- 从集成终端或 ssh 会话启动应用程序时。
- 在 Codespace 开始运行后运行的开发容器生命周期脚本中。 有关开发容器生命周期脚本的详细信息,请参阅开发容器网站上的相关文档:规范。
在以下情况下,不能使用开发环境机密:
- codespace 生成时(即,在 Dockerfile 或自定义入口点内)。
- 在开发容器功能内。 有关详细信息,请参阅开发容器网站上的开发容器规范中的
features
属性。