•  


Restricting the visibility of forwarded ports - GitHub Docs
Skip to main content

Restricting the visibility of forwarded ports

You can set constraints on the visibility options users can choose when they forward ports from codespaces in your organization.

Who can use this feature?

To manage access to port visibility constraints for the repositories in an organization, you must be an owner of the organization.

Organizations on GitHub Team and GitHub Enterprise plans can pay for members' and collaborators' use of GitHub Codespaces. These organizations can then access settings and policies to manage codespaces paid for by the organization. For more information, see " Choosing who owns and pays for codespaces in your organization " and " GitHub’s plans ."

Overview

Typically, within a codespace you are able to forward ports privately (only to yourself), to members of your organization, or publicly (to anyone with the URL). For more information, see " Forwarding ports in your codespace ."

As an organization owner, you may want to configure constraints on the visibility options users can set when forwarding ports. For example, for security reasons, you may want to disallow public port forwarding. You do this by defining one or more policies in the GitHub Codespaces settings for your organization.

Behavior when you set a port visibility constraint

If there are existing codespaces that no longer conform to a policy you have defined, these codespaces will continue to operate until they are stopped or time out. When the user resumes the codespace, it will be subject to the policy constraints.

Note : You can't disable private port forwarding, as private port forwarding is required by GitHub Codespaces to continue working as designed, for example to forward SSH on port 22.

Setting organization-wide and repository-specific policies

When you create a policy you choose whether it applies to all repositories in your organization, or only to specified repositories. If you set an organization-wide policy then any policies you set for individual repositories must fall within the restriction set at the organization level. Adding policies makes the choice of visibility options more, not less, restrictive.

For example, you could create an organization-wide policy that restricts the visibility options to organization only. You can then set a policy for Repository A that disallows both public and organization visibility, which would result in only private port forwarding being available for this repository. Setting a policy for Repository A that allowed both public and organization would result in only organization visibility, because the organization-wide policy does not allow public visibility.

If you add an organization-wide policy, you should set it to the most lenient visibility option that will be available for any repository in your organization. You can then add repository-specific policies to further restrict the choice.

Note : Codespaces policies only apply to codespaces that your organizations pays for. If someone creates a codespace for a repository in your organization at their own expense, then the codespace will not be bound by these policies. For more information, see " Choosing who owns and pays for codespaces in your organization ."

Adding a policy to limit the port visibility options

  1. In the upper-right corner of GitHub, select your profile photo, then click Your organizations .

    Screenshot of the dropdown menu under @octocat's profile picture. "Your organizations" is outlined in dark orange.

  2. Next to the organization, click Settings .

  3. In the "Code, planning, and automation" section of the sidebar, select Codespaces then click Policies .

  4. On the "Codespaces policies" page, click Create Policy .

  5. Enter a name for your new policy.

  6. Click Add constraint and choose Port visibility .

  7. Click to edit the constraint.

  8. Clear the selection of the port visibility options ( Org or Public ) that you don't want to be available.

    Screenshot of the "Allowed values" dropdown, with two checkboxes. "Org" is selected and "Public" is cleared.

  9. Click outside of the dialog box to close it.

  10. By default the policy is set to apply to all repositories, if you want it to apply only to some of the repositories in your organization, click All repositories and then click Selected repositories in the dropdown menu.

    Screenshot of the repository selection dropdown, showing the options "All repositories" and "Selected repositories."

    Note : If you're adding a constraint to an existing policy that already contains the "Maximum codespaces per user" constraint, you won't be able to apply the policy to selected repositories. This is because the "Maximum codespaces per user" constraint always applies to all repositories in the organization.

    With Selected repositories selected:

    1. Click .

      Screenshot of the settings icon (a gear symbol) to the left of a button labeled "Selected repositories."

    2. Select the repositories you want this policy to apply to.

    3. At the bottom of the repository list, click Select repositories .

      Screenshot of a list of repositories, each with a checkbox. Three repositories are selected.

  11. If you want to add another constraint to the policy, click Add constraint and choose another constraint. For information about other constraints, see:

  12. After you've finished adding constraints to your policy, click Save .

The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started.

Editing a policy

You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy.

  1. Display the "Codespaces policies" page. For more information, see " Adding a policy to limit the port visibility options ."
  2. Click the name of the policy you want to edit.
  3. Beside the "Port visibility" constraint, click .
  4. Make the required changes then click Save .

Deleting a policy

  1. Display the "Codespaces policies" page. For more information, see " Adding a policy to limit the port visibility options ."

  2. Click to the right of the policy you want to delete.

    Screenshot of a policy with the delete button (a trash can icon) highlighted with a dark orange outline.

- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본