Equipes e RBAC
Organize sua equipe com controle de acesso baseado em funções, permissões em nível de projeto e uma trilha de auditoria completa de todas as ações.
Criando uma Equipe
Equipes permitem que múltiplos usuários colaborem na mesma instância sh0. O primeiro usuário (criado durante a instalação) é automaticamente o proprietário da equipe com privilégios totais de administrador.
- Navegue até Configurações → Equipe no painel.
- Sua equipe padrão é criada automaticamente. Você pode renomeá-la aqui.
- Adicione uma descrição e avatar da equipe (opcional).
Convidando Membros
Os administradores convidam novos membros pelo endereço de e-mail. O sh0 não envia nenhum e-mail: o convite gera um link de uso único, exibido uma só vez a quem convida, para ser repassado pelos seus próprios meios. O membro convidado abre o link e escolhe a própria senha; você nunca a conhece. Membros de equipe e papéis exigem uma licença Business.
- Abra Equipe na barra lateral.
- Clique em Convidar usuário.
- Insira o endereço de e-mail e selecione uma função (Admin, Desenvolvedor ou Visualizador).
- Confirme, copie o link de convite e envie-o à pessoa. Ele vale por 7 dias, para um único uso, e não será exibido novamente.
curl -X POST https://your-server:9000/api/team/invite \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"role": "developer"
}'Enquanto o link não for usado, o membro aparece como Convite pendente (e depois Convite expirado após 7 dias). Gerar ligação de acesso emite um novo link; o anterior deixa de funcionar. Pela CLI, sh0 users invite <email> --role developer mostra o link da mesma forma.
Tipos de Função
O sh0 fornece três funções integradas com níveis crescentes de acesso:
| Função | Descrição | Caso de Uso |
|---|---|---|
| Administrador | Acesso total a todos os recursos, configurações, gerenciamento de equipe e cobrança. | CTOs, líderes DevOps, proprietários de infraestrutura |
| Desenvolvedor | Pode criar, implantar e gerenciar aplicações. Não pode acessar configurações da equipe ou do servidor. | Engenheiros de software, membros da equipe DevOps |
| Visualizador | Acesso somente leitura. Pode visualizar aplicações, logs e métricas mas não pode modificar nada. | Stakeholders, equipe de QA, auditores |
Matriz de Permissões
Aqui está o detalhamento completo do que cada função pode fazer:
| Ação | Administrador | Desenvolvedor | Visualizador |
|---|---|---|---|
| Visualizar aplicações e painéis | Sim | Sim | Sim |
| Visualizar logs e métricas | Sim | Sim | Sim |
| Criar e implantar aplicações | Sim | Sim | Não |
| Gerenciar variáveis de ambiente | Sim | Sim | Não |
| Gerenciar domínios e SSL | Sim | Sim | Não |
| Acessar terminal | Sim | Sim | Não |
| Gerenciar membros da equipe | Sim | Não | Não |
| Configurações do servidor e nós | Sim | Não | Não |
| Cobrança e licença | Sim | Não | Não |
Acesso em Nível de Projeto
Além de funções globais, você pode restringir o acesso de um usuário a projetos específicos. Isso é útil quando diferentes membros da equipe trabalham em aplicações diferentes.
- Vá para a aba Configurações → Acesso do projeto.
- Clique em Adicionar Membro e selecione um membro da equipe.
- Escolha o nível de acesso para este projeto (Acesso Total, Apenas Implantação, Apenas Visualização).
Log de Auditoria
O sh0 registra toda ação significativa realizada por membros da equipe. O log de auditoria fornece uma linha do tempo completa de quem fez o quê e quando.
Eventos rastreados incluem:
- Eventos de login e logout
- Criação, implantação e exclusão de aplicações
- Alterações em variáveis de ambiente
- Adições e remoções de domínio
- Convites de membros da equipe e alterações de função
- Modificações de configurações
- Operações de banco de dados (backup, restauração, exclusão)
curl https://your-server:9000/api/team/audit-log?page=1&per_page=50 \
-H "Authorization: Bearer YOUR_TOKEN"Removendo Membros
Admins podem remover membros da equipe em Configurações → Equipe → Membros. Remover um membro:
- Revoga imediatamente todas as sessões ativas.
- Remove o acesso a todos os projetos e recursos.
- Não exclui nenhum recurso que criaram (aplicações, bancos de dados, etc.).
- Preserva suas ações no log de auditoria para responsabilização.
curl -X DELETE https://your-server:9000/api/team/members/usr_abc123 \
-H "Authorization: Bearer YOUR_TOKEN"