Usuários
Por padrão (no modo usuários gerenciado por banco de dados) os usuários precisam ser criados pelo administrador. Para permitir que alguém crie uma conta sozinho é necessário habilitar o Allow Self-Registration que por default vem desmarcado.


O projeto library é padrão e pertence ao administrador
Para utilizar a autenticação via SSO como o Okta, Keycloak e outros, nenhum usuário pode existir no banco de dados. Nesse caso você não cria as contas de usuário no Harbor. Também não será possível autoregistro (como mostramos acima), exclusão de usuário e nem redefinição de senhas.
Se algum usuário foi criado, exclua-o para que as opções abaixo apareçam.

Consulte a documentação para mais informações.
Gerenciando Usuários
- As imagens precisam estar em algum projeto.
- Nos projetos aplicamos as cotas e regras, como por exemplo tamanho máximo da imagem, número máximo de tags, etc.
- Usuários existem independente de projetos, assim como um cadastro qualquer.
- Eles podem ser convidados a participar de um projeto criado por outro usuário ou criar seu próprio projeto para gerenciar suas imagens.
- O usuário dono do projeto ou mantenedor pode definir funções para outros usuários membros do projeto.
- Não é possível granularizar as permissões. As permissões estão de acordo com as roles (funções).
- Um projeto pode ser público ou privado.
Um membro de um projeto pode ter as seguintes roles: Limited Guest, Guest, Developer, Maintainer e Project Admin.
| Ação | Convidado limitado | Convidado | Desenvolvedor | Mantenedor | Administrador do Projeto |
|---|---|---|---|---|---|
| Ver configurações do projeto | ✓ | ✓ | ✓ | ✓ | ✓ |
| Editar configurações do projeto | ✓ | ||||
| Veja lista de membros do projeto | ✓ | ✓ | ✓ | ✓ | |
| Criar/editar/excluir membros do projeto | ✓ | ||||
| Ver lista de logs de projetos | ✓ | ✓ | ✓ | ✓ | |
| Ver lista de replicações de projetos | ✓ | ✓ | |||
| Ver lista de jobs de replicação do projeto | ✓ | ||||
| Ver lista de tags de projetos | ✓ | ✓ | |||
| Criar/editar/excluir rótulos de projeto | ✓ | ✓ | |||
| Ver lista de repositórios | ✓ | ✓ | ✓ | ✓ | ✓ |
| Criar repositórios | ✓ | ✓ | ✓ | ||
| Editar/excluir repositórios | ✓ | ✓ | |||
| Ver lista de imagens | ✓ | ✓ | ✓ | ✓ | ✓ |
| Remarcar imagem | ✓ | ✓ | ✓ | ✓ | |
| Pull da imagem | ✓ | ✓ | ✓ | ✓ | ✓ |
| Push da imagem | ✓ | ✓ | ✓ | ||
| Digitalizar/excluir imagem | ✓ | ✓ | |||
| Editar scanners em projetos | ✓ | ||||
| Ver lista de vulnerabilidades de imagem | ✓ | ✓ | ✓ | ✓ | ✓ |
| Criar lista de vulnerabilidades do projeto | ✓ | ✓ | ✓ | ||
| ler lista de vulnerabilidades do projeto | ✓ | ✓ | ✓ | ||
| Exportar lista de vulnerabilidades do projeto | ✓ | ✓ | ✓ | ||
| Ver histórico de construção de imagens | ✓ | ✓ | ✓ | ✓ | ✓ |
| Adicionar/remover tags de imagem | ✓ | ✓ | ✓ | ||
| Ver lista de helm charts | ✓ | ✓ | ✓ | ✓ | ✓ |
| Baixar helm charts | ✓ | ✓ | ✓ | ✓ | ✓ |
| Carregar helm charts | ✓ | ✓ | ✓ | ||
| Excluir helm charts | ✓ | ✓ | |||
| Ver lista de versões de helm charts | ✓ | ✓ | ✓ | ✓ | ✓ |
| Baixar versões de helm charts | ✓ | ✓ | ✓ | ✓ | ✓ |
| Carregar versões de helm charts | ✓ | ✓ | ✓ | ||
| Excluir versões de helm charts | ✓ | ✓ | |||
| Adicionar/remover tags de versão de helm charts | ✓ | ✓ | ✓ | ||
| Ver lista de robôs do projeto | ✓ | ✓ | |||
| Criar/editar/excluir robôs de projeto | ✓ | ||||
| Ver lista de permissões CVE configurada | ✓ | ✓ | ✓ | ✓ | ✓ |
| Criar/editar/remover lista de permissões CVE | ✓ | ||||
| Ver eventos de webhook | ✓ | ✓ | |||
| Adicionar novos eventos de webhook | ✓ | ||||
| Habilitar/desabilitar webhooks | ✓ | ||||
| Criar/excluir regras de retenção de tags | ✓ | ✓ | ✓ | ||
| Habilitar/desabilitar regras de retenção de tags | ✓ | ✓ | ✓ | ||
| Criar/excluir regras de imutabilidade de tags | ✓ | ✓ | |||
| Habilitar/desabilitar regras de imutabilidade de tags | ✓ | ✓ | |||
| Ver cotas de projetos | ✓ | ✓ | ✓ | ✓ | ✓ |
| Deletar o projeto | ✓ |
O administrador do projeto pode utilizar scanners já configurados no Harbor para o projeto, mas não adicioná-los ao Harbor.
É função do administrador do Harbor:
- Adicionar os scanners.
- Definir cotas para os projetos.
- Dar permissão de administrador para outro usuário. Membros são para projetos, usuário é do sistema. Um usuário pode ser membro de um projeto.
- Definir políticas de scan de vulnerabilidade para todos os projetos.
- Criar, alterar e deletar usuários e projetos.
Um usuário anônimo é um usuário que não está logado no sistema e somente pode ter acesso read-only em projetos públicos.
Uma conta de automação é usada para criar um usuário no sistema para ser usado por outro sistema.