Skip to main content

패키지의 액세스 제어 및 표시 여부 구성

패키지에 대한 읽기, 쓰기 또는 관리자 액세스 권한을 가진 사용자 및 GitHub에서 패키지의 공개 여부를 선택합니다.

참고

Container registry는 현재 GitHub Enterprise Server의 공개 미리 보기 버전이며 변경될 수 있습니다.

GitHub Packages 및 하위 도메인 격리를 모두 사용하도록 설정해야 Container registry를 사용할 수 있습니다. 자세한 내용은 컨테이너 레지스트리 작업을(를) 참조하세요.

패키지는 리포지토리에서 표시 여부 및 액세스 권한을 상속하거나, 세분화된 권한을 지원하는 레지스트리의 경우 리포지토리와 별도로 패키지의 표시 여부 및 사용 권한을 설정할 수 있습니다.

세분화된 사용 권한을 지원하는 레지스트리의 목록과 패키지 사용 권한, PAT에 대한 패키지 관련 범위 또는 GitHub Actions 워크플로 사용 권한 관리에 대한 자세한 내용은 GitHub 패키지에 대한 사용 권한 정보을(를) 참조하세요.

액세스 권한 상속 정보

세분화된 사용 권한을 지원하는 레지스트리에서 패키지는 개인 계정 또는 조직으로 범위가 지정됩니다. 이러한 레지스트리에서는 패키지를 리포지토리에 연결하지 않고 패키지를 게시한 다음, 패키지 설정에서 액세스 권한 및 표시 여부를 설정하여 패키지에 액세스할 수 있는 사용자를 결정할 수 있습니다.

패키지가 연결된 리포지토리의 액세스 권한을 상속하도록 선택할 수 있습니다. 자세한 내용은 아래에서 패키지가 리포지토리에서 사용 권한을 상속할지 여부 선택을 참조하세요.

리포지토리 범위 권한만 지원하는 패키지를 레지스트리에 게시하는 경우 패키지는 항상 리포지토리에 연결되며, 연결된 리포지토리의 사용 권한을 항상 상속합니다.

패키지의 표시 여부 및 액세스 권한 설정 정보

패키지가 세분화된 권한을 지원하는 레지스트리에 속하는 경우 패키지에 대한 관리자 권한이 있는 모든 사용자는 패키지를 프라이빗 또는 퍼블릭으로 설정할 수 있으며, 조직 및 리포지토리 수준에서 설정된 사용 권한과는 별개인 패키지에 대한 액세스 권한을 부여할 수 있습니다. 세분화된 권한을 지원하는 레지스트리의 목록은 GitHub 패키지에 대한 사용 권한 정보을(를) 참조하세요.

대부분의 레지스트리에서 패키지를 끌어오려면 패키지가 퍼블릭인지 프라이빗인지에 관계없이 personal access token 또는 GITHUB_TOKEN로 인증해야 합니다. 그러나 Container registry에서 퍼블릭 패키지는 익명 액세스를 허용하며 인증 또는 CLI를 통해 로그인하지 않고 끌어올 수 있습니다.

패키지를 게시하면 패키지에 대한 관리자 권한이 자동으로 부여됩니다. 조직에 패키지를 게시하는 경우 조직에서 owner 역할이 있는 모든 사용자는 패키지의 관리자 권한도 받습니다.

개인 계정 범위의 패키지는 모든 사용자에게 액세스 역할을 부여할 수 있습니다. 조직 범위의 패키지는 조직의 모든 사용자 또는 팀에게 액세스 역할을 부여할 수 있습니다.

GitHub Actions 워크플로를 사용하여 패키지를 관리하는 경우 워크플로가 작업 액세스 메뉴 옵션을 통해에 저장된 리포지토리에 액세스 역할을 부여할 수 있습니다. 자세한 내용은 패키지의 액세스 제어 및 표시 여부 구성을(를) 참조하세요.

Permission액세스 설명
읽기패키지를 다운로드할 수 있습니다.
패키지 메타데이터를 읽을 수 있습니다.
쓰기이 패키지를 업로드하고 다운로드할 수 있습니다.
패키지 메타데이터를 읽고 쓸 수 있습니다.
관리자이 패키지를 업로드, 다운로드, 삭제 및 관리할 수 있습니다.
패키지 메타데이터를 읽고 쓸 수 있습니다.
패키지 권한을 부여할 수 있습니다.

참고

GitHub Actions 워크플로에서 REST API를 사용하여 패키지를 삭제하고 복원하는 기능은 현재 공개 미리 보기 버전이며 변경될 수 있습니다.

개인 계정의 패키지에 대한 액세스 구성

개인 계정으로 범위가 지정된 패키지에 대한 관리자 권한이 있는 경우 읽기, 쓰기 또는 관리자 역할을 다른 사용자에게 할당할 수 있습니다. 이러한 권한 역할에 대한 자세한 내용은 액세스 권한 상속 정보를 참조하세요.

프라이빗 또는 내부 패키지로, 조직으로 범위가 지정된 경우 다른 조직 구성원 또는 팀에만 액세스 권한을 부여할 수 있습니다.

  1. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  2. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  3. "액세스 관리" 또는 "상속된 액세스"에서 팀 또는 사용자 초대를 클릭하고 액세스 권한을 부여하려는 이름, 사용자 이름 또는 이메일을 입력합니다. 개인 계정으로 범위가 지정된 패키지에 대한 액세스 권한은 팀에 부여할 수 없습니다.

  4. 사용자 이름 또는 팀 이름 옆에 있는 역할 드롭다운 메뉴로 원하는 권한 수준을 선택합니다.

선택한 사용자는 자동으로 액세스 권한을 부여받게 되며 먼저 초대를 수락할 필요가 없습니다.

조직의 패키지에 대한 액세스 구성

조직으로 범위가 지정된 패키지에 대한 관리자 권한이 있는 경우 읽기, 쓰기 또는 관리자 역할을 다른 사용자 및 팀에 할당할 수 있습니다. 이러한 권한 역할에 대한 자세한 내용은 액세스 권한 상속 정보를 참조하세요.

프라이빗 또는 내부 패키지로, 조직으로 범위가 지정된 경우 다른 조직 구성원 또는 팀에만 액세스 권한을 부여할 수 있습니다.

  1. GitHub에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 패키지 탭을 클릭합니다.

    @octo-org의 프로필 페이지 스크린샷. "패키지" 탭이 주황색 윤곽선으로 강조 표시됩니다.

  3. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  4. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  5. "액세스 관리" 또는 "상속된 액세스"에서 팀 또는 사용자 초대를 클릭하고 액세스 권한을 부여하려는 이름, 사용자 이름 또는 이메일을 입력합니다. 조직의 팀 이름을 입력하여 모든 팀원에게 액세스 권한을 부여할 수도 있습니다.

  6. 사용자 이름 또는 팀 이름 옆에 있는 역할 드롭다운 메뉴로 원하는 권한 수준을 선택합니다.

선택한 사용자 또는 팀은 자동으로 액세스 권한을 부여받게 되며 먼저 초대를 수락할 필요가 없습니다.

패키지가 리포지토리에서 사용 권한을 상속할지 여부 선택

패키지를 리포지토리에 연결하는 경우 패키지가 연결된 리포지토리의 액세스 권한을 상속할지 여부를 선택할 수 있습니다.연결된 리포지토리의 액세스 권한을 상속합니다. 패키지에 대한 액세스를 관리하는 프로세스가 간소화되므로 패키지가 리포지토리에서 권한을 상속하도록 하는 것이 좋습니다.

패키지가 리포지토리에서 권한을 상속하는 경우 패키지에 대한 액세스 권한을 부여하거나 제거하려면 연결된 리포지토리의 권한을 구성해야 합니다.

참고

패키지가 액세스 권한을 가져오는 방법을 변경하면 패키지에 대한 기존 사용 권한을 덮어씁니다.

개인 계정으로 범위가 지정된 패키지의 상속 설정 선택

  1. GitHub에서 개인 계정의 기본 페이지로 이동합니다.

  2. GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭한 다음, Your profile을 클릭합니다.

    @octocat 프로필 사진의 드롭다운 메뉴 스크린샷입니다. "프로필"은 진한 주황색으로 표시됩니다.

  3. 프로필 페이지의 헤더에서 패키지 탭을 클릭합니다.

  4. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  5. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  6. 연결된 리포지토리에서 패키지가 액세스 권한을 상속할지 여부를 선택하려면 "액세스 관리" 또는 "상속된 액세스"에서 리포지토리에서 액세스 상속을 선택하거나 선택 취소합니다(권장).

    참고

    이 섹션의 이름은 리포지토리의 사용 권한을 패키지가 상속했는지 여부에 따라 변경됩니다.

조직으로 범위가 지정된 패키지의 상속 설정 선택

  1. GitHub에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 패키지 탭을 클릭합니다.

    @octo-org의 프로필 페이지 스크린샷. "패키지" 탭이 주황색 윤곽선으로 강조 표시됩니다.

  3. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  4. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  5. 연결된 리포지토리에서 패키지가 액세스 권한을 상속할지 여부를 선택하려면 "액세스 관리" 또는 "상속된 액세스"에서 리포지토리에서 액세스 상속을 선택하거나 선택 취소합니다(권장).

    참고

    이 섹션의 이름은 리포지토리의 사용 권한을 패키지가 상속했는지 여부에 따라 변경됩니다.

패키지에 대한 워크플로 액세스 보장

개인 계정 또는 조직으로 범위가 지정된 패키지의 경우 GitHub Actions 워크플로가 패키지에 액세스할 수 있도록 하려면 워크플로가 저장되는 리포지토리에 대한 명시적 액세스 권한을 부여해야 합니다.

지정된 리포지토리는 패키지의 소스 코드가 유지되는 리포지토리일 필요가 없습니다. 패키지에 여러 리포지토리 워크플로 액세스 권한을 부여할 수 있습니다.

참고

  • 패키지를 리포지토리 작업 액세스 메뉴 옵션을 통해과(와) 동기화하는 것은 패키지를 리포지토리에 연결하는 것과 다릅니다. 리포지토리를 패키지에 연결하는 방법에 대한 자세한 내용은 리포지토리를 패키지에 연결을(를) 참조하세요.
  • permissions 키 및 packages 범위를 사용하여 워크플로 작업에 대한 권한을 제한하도록 선택할 수 있습니다. 자세한 내용은 워크플로에서 인증에 GITHUB_TOKEN 사용을(를) 참조하세요.
  • 프라이빗 패키지에 퍼블릭 리포지토리 액세스 권한을 부여하는 경우 리포지토리의 포크가 프라이빗 패키지에 액세스할 수 있습니다.

개인 계정으로 범위가 지정된 패키지에 대한 GitHub Actions 액세스 권한

  1. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  2. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  3. 왼쪽 사이드바에서 작업 액세스를 클릭합니다.

  4. 워크플로가 패키지에 액세스할 수 있도록 하려면 워크플로가 저장되는 리포지토리를 추가해야 합니다. 리포지토리 추가를 클릭하여 추가할 리포지토리를 검색합니다. 패키지 설정 페이지의 "작업 액세스 관리" 섹션

    스크린샷. "리포지토리 추가" 단추가 주황색 윤곽선으로 강조 표시됩니다.

  5. Use 역할 드롭다운 메뉴를 사용하여 패키지에 대해 리포지토리에 부여할 기본 액세스 수준을 선택합니다.

패키지에 대한 액세스를 추가로 사용자 지정하려면 개인 계정의 패키지에 대한 액세스 구성을 참조하세요.

조직으로 범위가 지정된 패키지에 대한 GitHub Actions 액세스 권한

  1. GitHub에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 패키지 탭을 클릭합니다.

    @octo-org의 프로필 페이지 스크린샷. "패키지" 탭이 주황색 윤곽선으로 강조 표시됩니다.

  3. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  4. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  5. 왼쪽 사이드바에서 작업 액세스를 클릭합니다.

  6. 리포지토리 추가를 클릭하여 추가할 리포지토리를 검색합니다. 패키지 설정 페이지의 "작업 액세스 관리" 섹션

    스크린샷. "리포지토리 추가" 단추가 주황색 윤곽선으로 강조 표시됩니다.

  7. Use 역할 드롭다운 메뉴를 사용하여 패키지에 대해 리포지토리에 부여할 기본 액세스 수준을 선택합니다.

패키지에 대한 액세스를 추가로 사용자 지정하려면 조직의 패키지에 대한 액세스 구성을 참조하세요.

개인 계정에 대한 패키지 표시 여부 구성

개인 계정으로 범위가 지정된 패키지를 처음 게시할 때 기본 표시 여부는 프라이빗이므로 사용자만 패키지를 볼 수 있습니다. 액세스 설정을 변경하여 프라이빗 또는 퍼블릭 패키지의 액세스를 수정할 수 있습니다.

  1. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  2. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  3. 페이지 아래쪽의 "위험 영역"에서 표시 여부 변경을 클릭합니다.

  4. 표시 여부 설정을 선택합니다.

    • 패키지를 모든 사용자에게 표시하려면 퍼블릭을 선택합니다.

      경고

      패키지를 퍼블릭으로 설정한 후에는 다시 프라이빗으로 설정할 수 없습니다.

    • 사용자 지정한 사용자 그룹에게 패키지를 표시하려면 프라이빗을 선택합니다.

  5. 확인하려면 패키지 이름을 입력한 후 결과를 이해하고 있으며 표시 여부를 변경합니다를 클릭합니다.

조직 구성원에 대한 패키지 만들기 표시 여부

세분화된 권한을 지원하는 레지스트리의 경우 조직 멤버가 기본적으로 게시할 수 있는 패키지의 표시 여부를 선택할 수 있습니다. 이러한 레지스트리의 목록은 GitHub 패키지에 대한 사용 권한 정보을(를) 참조하세요.

  1. GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭한 다음, Your organizations를 클릭합니다.
  2. 조직 옆에 있는 설정을 클릭합니다.
  3. 왼쪽에서 패키지를 클릭합니다.
  4. “패키지 만들기”에서 퍼블릭, 프라이빗 또는 내부 패키지 만들기 중 사용 설정 항목을 선택합니다.
    • 조직 구성원이 퍼블릭 패키지를 만들 수 있도록 하려면 퍼블릭을 클릭합니다.

    • 조직 구성원이 다른 조직 구성원에게만 표시되는 프라이빗 패키지를 만들 수 있도록 하려면 프라이빗을 클릭합니다. 프라이빗 패키지의 표시 여부를 추가로 사용자 지정할 수 있습니다.

    • 조직 구성원이 모든 조직 멤버에게 표시되는 내부 패키지를 만들 수 있도록 하려면 내부를 클릭합니다. 조직이 엔터프라이즈에 속하는 경우 패키지는 모든 엔터프라이즈 멤버에게 표시됩니다.

조직에 대한 패키지의 표시 여부 구성

패키지를 처음 게시할 때 기본 표시 여부는 프라이빗이므로 사용자만 패키지를 볼 수 있습니다. 액세스 설정을 통해 사용자 또는 팀에게 패키지에 대한 다양한 액세스 역할을 부여할 수 있습니다. 패키지를 퍼블릭으로 설정한 후에는 패키지를 다시 프라이빗으로 설정할 수 없습니다.

  1. GitHub에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 패키지 탭을 클릭합니다.

    @octo-org의 프로필 페이지 스크린샷. "패키지" 탭이 주황색 윤곽선으로 강조 표시됩니다.

  3. 관리하려는 패키지의 이름을 검색한 다음 클릭합니다.

  4. 패키지 랜딩 페이지에서 오른쪽의 패키지 설정을 클릭합니다.

    패키지 방문 페이지의 스크린샷. 오른쪽 아래 모서리에서 "패키지 설정"이 주황색 윤곽선으로 강조 표시됩니다.

  5. 페이지 아래쪽의 "위험 영역"에서 표시 여부 변경을 클릭하고 표시 여부 설정을 선택합니다.

    • 패키지를 모든 사용자에게 표시하려면 퍼블릭을 클릭합니다.

      경고

      패키지를 퍼블릭으로 설정한 후에는 다시 프라이빗으로 설정할 수 없습니다.

    • 조직에서 선택한 사용자에게 패키지를 표시하려면 프라이빗을 클릭합니다.

    • 패키지를 모든 조직 멤버에게 표시하려면 내부를 클릭합니다. 조직이 엔터프라이즈에 속하는 경우 패키지는 모든 엔터프라이즈 멤버에게 표시됩니다.