Note
Atualmente, o Container registry está em beta no GitHub Enterprise Server e sujeito a alterações.
O GitHub Packages e o isolamento de subdomínio devem ser habilitados para usar o Container registry. Para obter mais informações, confira "Trabalhando com o registro do Contêiner".
Um pacote pode herdar as permissões de visibilidade e de acesso de um repositório ou, para registros que dão suporte a permissões granulares, você pode definir a visibilidade e as permissões do pacote separadamente de um repositório.
Para ver a lista de registros que dão suporte a permissões granulares e para obter mais informações sobre permissões para pacotes, escopos relacionados a pacotes para PATs ou gerenciamento de permissões para fluxos de trabalho do GitHub Actions, confira "Sobre permissões para o GitHub Packages".
Sobre a herança de permissões de acesso
Em registros que dão suporte a permissões granulares, os pacotes têm como escopo uma conta pessoal ou de organização. Nesses registros, você pode publicar um pacote sem vinculá-lo a um repositório e determinar quem pode acessar o pacote definindo permissões de acesso e visibilidade nas configurações do pacote.
Você pode optar por fazer com que um pacote herde as permissões de acesso de um repositório vinculado. Para obter mais informações, confira "Como selecionar se um pacote herda as permissões de um repositório" abaixo.
Se você publicar um pacote em um registro que só dê suporte a permissões no escopo do repositório, o pacote sempre será vinculado a um repositório e sempre herdará as permissões do repositório vinculado.
Sobre a configuração das permissões de acesso e visibilidade para pacotes
Se um pacote pertencer a um registro que dá suporte a permissões granulares, qualquer pessoa com permissões de administrador para o pacote poderá defini-lo como privado ou público e conceder permissões de acesso separadas das permissões definidas nos níveis de organização e repositório. Para ver a lista dos registros que dão suporte a permissões granulares, confira "Sobre permissões para o GitHub Packages".
Na maioria dos registros, para efetuar pull de um pacote, você deve autenticá-lo com um personal access token ou GITHUB_TOKEN
, independentemente de o pacote ser público ou privado. No entanto, no Container registry, os pacotes públicos permitem acesso anônimo e podem ser extraídos sem autenticação ou logon por meio da CLI.
Ao publicar um pacote, você obtém automaticamente permissões de administrador para ele. Se você publicar um pacote em uma organização, qualquer pessoa com a função owner
na organização também obterá permissões de administrador para o pacote.
Para pacotes com escopo definido para uma conta pessoal, você pode dar uma função de acesso a qualquer pessoa. Para pacotes com escopo definido para uma organização, você pode dar uma função de acesso a qualquer pessoa ou equipe na organização.
Se você estiver usando um fluxo de trabalho do GitHub Actions para gerenciar seus pacotes, poderá conceder uma função de acesso ao repositório no qual o fluxo de trabalho está armazenado no por meio da opção de menu de acesso a Ações. Para obter mais informações, confira "Configurando o controle de acesso e visibilidade de um pacote".
Permissão | Descrição do acesso |
---|---|
Ler | Pode fazer o download do pacote. Pode ler metadados do pacote. |
Gravar | Pode fazer upload e download deste pacote. Pode ler e gravar metadados do pacote. |
Admin | Pode fazer upload, download, excluir e gerenciar este pacote. Pode ler e gravar metadados do pacote. Pode conceder permissões de pacote. |
Note
A capacidade dos fluxos de trabalho do GitHub Actions de excluir e restaurar pacotes usando a API REST está em beta e está sujeita a alterações.
Configurar acesso a pacotes para sua conta pessoal
Se tiver permissões de administrador para um pacote que pertence a uma conta pessoal, você poderá atribuir funções de leitura, gravação ou administração a outros usuários. Para obter mais informações sobre essas funções de permissão, consulte "Sobre a herança de permissões de acesso".
Se o seu pacote for privado ou interno e tiver escopo definido para uma organização, você somente poderá dar acesso a outros membros ou equipes da organização.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Em "Gerenciar acesso" ou "Acesso herdado", clique em Convidar equipes ou pessoas e insira o nome, o nome de usuário ou o email da pessoa à qual deseja permitir acesso. As equipes não podem receber acesso a um pacote que tem como escopo uma conta pessoal.
-
Ao lado do nome de usuário ou do nome de equipe, use o menu suspenso Função para selecionar um nível de permissão desejado.
Os usuários selecionados receberão acesso automaticamente e não precisarão aceitar um convite primeiro.
Configurar o acesso a pacotes para uma organização
Se você tiver permissões de administrador para um pacote com escopo definido para uma organização, poderá atribuir funções de leitura, gravação ou administrador para outros usuários e equipes. Para obter mais informações sobre essas funções de permissão, consulte "Sobre a herança de permissões de acesso".
Se o seu pacote for privado ou interno e tiver escopo definido para uma organização, você somente poderá dar acesso a outros membros ou equipes da organização.
-
Em GitHub, acesse a página principal da sua organização.
-
No nome da sua organização, clique na guia Pacotes.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Em "Gerenciar acesso" ou "Acesso herdado", clique em Convidar equipes ou pessoas e insira o nome, o nome de usuário ou o email da pessoa à qual deseja permitir acesso. Você também pode inserir um nome de equipe da organização para dar acesso a todos os membros da equipe.
-
Ao lado do nome de usuário ou do nome de equipe, use o menu suspenso Função para selecionar um nível de permissão desejado.
Os usuários selecionados receberão acesso automaticamente e não precisarão aceitar um convite primeiro.
Como selecionar se um pacote herda as permissões de um repositório
Se você vincular um pacote a um repositório, poderá escolher se o pacote herda ou não as permissões de acesso do repositório vinculado. Recomendamos que você permita que os pacotes herdem as permissões de um repositório, pois isso simplifica o processo de gerenciamento de acesso a um pacote.
Quando um pacote herda as permissões de um repositório, para permitir ou remover o acesso ao pacote, você precisa configurar as permissões do repositório vinculado.
Note
Se você alterar como um pacote obtém as permissões de acesso, todas as permissões existentes para o pacote serão substituídas.
Como selecionar a configuração de herança para os pacotes que têm como escopo a sua conta pessoal
-
No GitHub, acesse a página principal da sua conta pessoal.
-
No canto superior direito do GitHub, selecione sua foto de perfil e selecione Seu perfil.
-
Na página do perfil, no cabeçalho, clique na guia Pacotes .
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Para escolher se um pacote herda as permissões de acesso do repositório vinculado, em "Gerenciar acesso" ou "Acesso herdado", marque ou desmarque Herdar acesso do repositório (recomendado) .
Note
O nome desta seção é alterado dependendo de o pacote já herdar suas permissões de um repositório.
Como selecionar a configuração de herança para os pacotes que têm como escopo uma organização
-
Em GitHub, acesse a página principal da sua organização.
-
No nome da sua organização, clique na guia Pacotes.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Para escolher se um pacote herda as permissões de acesso do repositório vinculado, em "Gerenciar acesso" ou "Acesso herdado", marque ou desmarque Herdar acesso do repositório (recomendado) .
Note
O nome desta seção é alterado dependendo de o pacote já herdar suas permissões de um repositório.
Garantir o acesso ao fluxo de trabalho para o seu pacote
Para pacotes com escopo definido para uma conta pessoal ou uma organização, para garantir que um fluxo de trabalho do GitHub Actions tenha acesso ao seu pacote, você deverá conceder acesso explícito ao repositório em que o fluxo de trabalho é armazenado.
O repositório especificado não precisa ser o repositório onde o código-fonte do pacote é mantido. Você pode conceder acesso ao fluxo de trabalho de vários repositórios para um pacote.
Note
- A sincronização do pacote com o por meio da opção de menu de acesso a Ações de um repositório é diferente da conexão do pacote com um repositório. Para obter mais informações sobre como vincular um repositório ao seu pacote, confira "Conectar um repositório a um pacote".
- Você pode optar por limitar as permissões para trabalhos de fluxo de trabalho usando a chave
packages
e o escopopermissions
. Para obter mais informações, confira "Controlando permissões para GITHUB_TOKEN". - Se você conceder a um repositório público acesso a pacotes privados, forks do repositório poderão acessar os pacotes privados.
Acesso do GitHub Actions para pacotes com escopo definido para contas pessoais
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Na barra lateral esquerda, clique em Acesso ao Actions.
-
Para garantir que seu fluxo de trabalho tenha acesso ao seu pacote, você deve adicionar o repositório em que o fluxo de trabalho é armazenado. Clique em Adicionar repositório e pesquise o repositório que deseja adicionar.
-
Use o menu suspenso Função, para selecionar o nível de acesso padrão que deseja conceder ao repositório no pacote.
Para personalizar ainda mais o acesso ao seu pacote, confira "Configurar o acesso a pacotes para sua conta pessoal".
Acesso do GitHub Actions para pacotes com escopo definido para organizações
-
Em GitHub, acesse a página principal da sua organização.
-
No nome da sua organização, clique na guia Pacotes.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Na barra lateral esquerda, clique em Acesso ao Actions.
-
Clique em Adicionar repositório e pesquise o repositório que deseja adicionar.
-
Use o menu suspenso Função, para selecionar o nível de acesso padrão que deseja conceder ao repositório no pacote.
Para personalizar ainda mais o acesso ao seu pacote, confira "Configurar o acesso a pacotes para uma organização".
Configurar a visibilidade de pacotes para sua conta pessoal
Ao publicar um pacote com escopo definido para uma conta pessoal, a visibilidade padrão é privada e só você poderá ver o pacote. Você pode modificar o acesso de um pacote privado ou público alterando as configurações de acesso.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Na parte inferior da página, em "Zona de Perigo", clique em Alterar visibilidade.
-
Selecione uma configuração de visibilidade:
-
Para tornar o pacote visível para qualquer pessoa, selecione Público.
Warning
Depois de tornar um pacote público, você não poderá torná-lo privado novamente.
-
Para tornar o pacote visível para uma seleção personalizada de pessoas, selecione Particular.
-
-
Para confirmar, digite o nome do pacote e clique em Entendo as consequências. Alterar visibilidade do pacote.
Visibilidade da criação de pacote para os membros da organização
Para Registros que dão suporte a permissões granulares, você pode escolher a visibilidade dos pacotes que os membros da organização podem publicar por padrão. Para ver uma lista desses registros, confira "Sobre permissões para o GitHub Packages".
- No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
- Ao lado da organização, clique em Configurações.
- À esquerda, clique em Pacotes.
- Em "Criação de Pacote", escolha se deseja habilitar a criação de pacotes públicos, privados ou internos.
- Para permitir que os membros da organização criem pacotes públicos, clique em Público.
- Para permitir que os membros da organização criem pacotes privados visíveis apenas para outros membros da organização, clique em Privado. Você pode personalizar ainda mais a visibilidade de pacotes privados.
- Para permitir que os membros da organização criem pacotes internos que são visíveis para todos os membros da organização, clique em Interno. Se a organização pertencer a uma empresa, os pacotes ficarão visíveis para todos os membros da empresa.
Configurar a visibilidade de pacotes para uma organização
Ao publicar um pacote, a visibilidade-padrão é privada e só você poderá ver o pacote. Você pode conceder a usuários ou equipes diferentes funções de acesso para seu pacote por meio das configurações de acesso. Uma vez que você torna público o seu pacote, mas você não poderá tornar o seu pacote privado novamente.
-
Em GitHub, acesse a página principal da sua organização.
-
No nome da sua organização, clique na guia Pacotes.
-
Procure e clique no nome do pacote que deseja gerenciar.
-
Na página de aterrissagem do pacote, no lado direito, clique em Configurações do pacote.
-
Na parte inferior da página, em "Zona de Perigo", clique em Alterar visibilidade e escolha uma configuração de visibilidade:
-
Para tornar o pacote visível para qualquer pessoa, clique em Público.
Warning
Depois de tornar um pacote público, você não poderá torná-lo privado novamente.
-
Para tornar o pacote visível para uma seleção personalizada de pessoas da sua organização, clique em Particular.
-
Para tornar o pacote visível para todos os membros da organização, clique em Interno. Se a organização pertencer a uma empresa, os pacotes ficarão visíveis para todos os membros da empresa.
-