概览
通常,在代码空间中,您可以将端口以私有方式转发(仅对您自己),对组织成员转发,或以公开方式转发(对拥有 URL 的任何人)。更多信息,请参阅 在您的代码空间中转发端口。
作为组织所有者,您可能希望配置用户在转发端口时可设置的可见性选项的约束。例如,出于安全考虑,您可能希望禁止公共端口转发。您可以通过在组织的 GitHub Codespaces 设置中定义一个或多个策略来实现此目的。
设置端口可见性约束时的行为
如果已有的代码空间不再符合您定义的策略,这些代码空间将继续运行,直至它们被停止或超时。当用户恢复代码空间时,将受到该策略约束。
注意
您无法禁用私有端口转发,因为 GitHub Codespaces 需要私有端口转发才能按设计继续工作,例如转发 22 端口的 SSH。
设置组织范围和仓库特定的策略
创建策略时,您可以选择它是适用于组织中的所有仓库,还是仅适用于指定的仓库。如果您设置组织范围的策略,则对单个仓库设置的任何策略必须符合组织层面设定的限制。添加策略会使可见性选项的选择更加严格,而不是更宽松。
例如,您可以创建一个组织范围的策略,将可见性选项限制为仅组织内部。然后,您可以为仓库 A 设置一项策略,禁止公共和组织可见性,这将导致该仓库只能使用私有端口转发。若为仓库 A 设置的策略同时允许公共和组织可见性,则最终只能使用组织可见性,因为组织范围的策略不允许公共可见性。
如果添加组织范围的策略,您应将其设置为组织中任何仓库都可能使用的最宽松的可见性选项。随后,您可以添加仓库特定策略以进一步限制选择。
注意
Codespaces 策略仅适用于由贵组织支付费用的代码空间。如果有人自行承担费用为组织中的仓库创建代码空间,则该代码空间不受这些策略约束。更多信息,请参阅 选择组织中代码空间的所有者和付费方。
添加策略以限制端口可见性选项
-
在 GitHub 右上角,点击您的个人资料图片,然后点击 组织。
-
点击即可选择组织。
-
在您的组织名称下,点击 设置。如果看不到 “设置” 选项卡,请选择 下拉菜单,然后点击 设置。

-
在侧边栏的 “代码、规划和自动化” 部分,选择 Codespaces,然后点击 策略。
-
在 “Codespaces 策略” 页面,点击 创建策略。
-
为您的新策略输入名称。
-
点击 添加约束 并选择 端口可见性。
-
点击以编辑该约束。
-
取消选择您不希望提供的端口可见性选项(组织或公开)。

-
点击对话框外部以关闭对话框。
-
默认情况下,策略适用于所有仓库。如果您希望仅在组织中的部分仓库上应用该策略,请点击 “所有仓库”,然后在下拉菜单中点击 “已选仓库”。

注意
如果您在已有的策略中添加约束,而该策略已经包含 “Maximum codespaces per user”(每用户最大代码空间数) 约束,则无法将策略应用于已选仓库。这是因为 “Maximum codespaces per user” 约束始终适用于组织中的所有仓库。
在已选仓库已选中时
-
点击.

-
选择您希望该策略适用的仓库。
-
在仓库列表底部,点击 “选择仓库”。

-
-
如果您想向策略添加另一个约束,点击 添加约束 并选择其他约束。有关其他约束的信息,请参阅
-
完成向策略添加约束后,点击 保存。
该策略将应用于所有计费归属贵组织的新代码空间。端口可见性约束也将在下次启动现有代码空间时生效。
编辑策略
您可以编辑已有的策略。例如,您可能想向策略添加或删除约束。
- 显示 “Codespaces policies”(代码空间策略) 页面。更多信息,请参阅 添加策略以限制端口可见性选项。
- 点击您想编辑的策略名称。
- 在 “Port visibility”(端口可见性) 约束旁,点击.
- 进行所需更改后,点击 保存。
删除策略
-
显示 “Codespaces policies”(代码空间策略) 页面。更多信息,请参阅 添加策略以限制端口可见性选项。
-
点击在您想删除的策略右侧。
