Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Sobre permissões para o GitHub Packages

Saiba como gerenciar as permissões dos seus pacotes.

GitHub Package Registry is available with GitHub Free, GitHub Pro, GitHub Free for organizations, GitHub Team, GitHub Enterprise Cloud, GitHub Enterprise Server 3.0 or higher, and GitHub AE.


O GitHub Package Registry não está disponível para repositórios privados de contas que utilizam planos antigos por-repositório. Além disso, as contas que usam os planos de legado por repositório não podem acessar o Container registry já que essas contas são cobradas por repositório. Para obter mais informações, consulte os "[produtos do GitHub](/get-started/learning-about-github/githubs-products)".

As permissões para pacotes são do escopo do repositório ou do escopo de usuário/organização.

Permissões para pacotes com escopo do repositório

Um pacote com escopo de repositório herda as permissões e visibilidade do repositório que possui o pacote. Você pode encontrar um escopo de pacote para um repositório, acessando a página principal do repositório e clicando no link Pacotes à direita da página. Para obter mais informações, consulte "Conectar um repositório a um pacote."

Os GitHub Package Registry registros abaixo usam permissões com escopo do repositório:

  • Docker registry (docker.pkg.github.com)
  • Registro de npm
  • Registro do Rubygems
  • Registro do Apache Maven
  • Registro do NuGet

Permissões granulares para pacotes com escopo de usuário/organização

Pacotes com permissões granulares são escopos para uma conta de usuário pessoal ou de organização. Você pode alterar o controle de acesso e a visibilidade do pacote separadamente de um repositório que está conectado (ou vinculado) a um pacote.

Atualmente, apenas o Container registry oferece permissões granulares para os seus pacotes de imagem de contêiner.

Visibilidade e permissões de acesso para imagens de contêiner

Se você tiver permissões de administrador para a imagem de um contêiner, você poderá definir as permissões de acesso para a imagem do contêiner como privada ou pública. As imagens públicas permitem acesso anônimo e podem ser carregadas sem autenticação ou login via CLI.

Como administrador, você também pode conceder permissões de acesso para uma imagem contêiner separada das permissões que você configurou nos níveis da organização e repositório.

For container images published and owned by a personal account, you can give any person an access role. Para imagens de contêineres publicadas e pertencentes a uma organização, você pode dar uma função de acesso a qualquer pessoa ou equipe na organização.

PermissãoDescrição de acesso
LeituraPode fazer o download do pacote.
Pode ler metadados do pacote.
GravaçãoPode fazer upload e download deste pacote.
Pode ler gravar metadados do pacote.
AdministradorPode fazer upload, download, excluir e gerenciar este pacote.
Pode ler gravar metadados do pacote.
Pode conceder permissões de pacote.

Para obter mais informações, consulte "Configurar o controle de acesso e visibilidade de um pacote".

Sobre escopos e permissões para registros de pacotes

Para usar ou gerenciar um pacote hospedado por um registro de pacotes, você deve usar um token com o escopo apropriado, e sua conta pessoal deve ter as permissões necessárias.

Por exemplo:

  • Para fazer o download e instalar pacotes de um repositório, seu token deve ter o escopo read:packages e sua conta de usuário deve ter permissão de leitura.
  • |Para excluir um pacote em GitHub Enterprise Cloud, o seu token deve ter pelo menos o escopo delete:packages e read:packages. O escopo do repositório também é necessário para pacotes com escopo de repositório. Para obter mais informações, consulte "format@@0Excluindo e restaurando um pacote. | Escopo | Descrição | Permissão necessária | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -------------------- | | read:packages | Faça o download e instale pacotes do GitHub Package Registry | leitura | | write:packages | Faça o upload e publique os pacotes em GitHub Package Registry | gravação | | delete:packages | | | | Excluir pacotes de GitHub Package Registry | | | | administrador | | | | repo | Faça o upload e exclua os pacotes (junto com write:packages ou delete:packages) | gravação ou admin |

Ao criar um fluxo de trabalho de GitHub Actions, você pode usar o GITHUB_TOKEN para publicar e instalar pacotes no GitHub Package Registry sem precisar armazenar e gerenciar um token de acesso pessoal.

Para mais informações, consulte:

Mantendo acesso a pacotes nos fluxos de trabalho de GitHub Actions

Para garantir que seus workflows mantenham o acesso aos seus pacotes, certifique-se de que você esteja usando o token de acesso correto do seu fluxo de trabalho e que você habilitou o acesso do GitHub Actions para o seu pacote.

Para obter um contexto mais conceitual sobre GitHub Actions ou exemplos do uso de pacotes nos fluxos de trabalho, consulte "Gerenciar o GitHub Packages usando fluxos de trabalho do GitHub Actions".

Tokens de acesso

  • Para publicar pacotes associados ao repositório do fluxo de trabalho, use GITHUB_TOKEN.
  • Para instalar pacotes associados a outros repositórios privados que GITHUB_TOKEN não consegue acessar, use um token de acesso pessoal

Para obter mais informações sobre GITHUB_TOKEN usado nos fluxos de trabalho de GitHub Actions, consulteAutenticação em um fluxo de trabalho".

Acesso a GitHub Actions para imagens de contêiner

Para garantir que seus fluxos de trabalho tenham acesso à imagem do contêiner, você deve permitir o acesso do GitHub Actions aos repositórios em que o seu fluxo de trabalho é executado. Você pode encontrar essa configuração na página de configurações do seu pacote. Para obter mais informações, consulte "Garantir o acesso do fluxo de trabalho para o seu pacote".