Pular para o conteúdo

Convites, grupos, service principals, 7 permissões finas

Aula 3 de 107 minOperarAtualizada em 2026-10-04

Vídeo em produção

A gravação desta aula está no lote de produção. O objetivo, o exercício e a documentação já valem. Duração-alvo: 7 min.

Objetivo: Convidar e restringir (ex. sem ver PII)

Selo de estado: Preview (teto atual do produto) · Curso ACD-240 — Administração, segurança e governança · Aula 3 de 10 · Atualizado em 2026-10-04.

Objetivo#

Ao final desta aula você vai convidar e restringir (ex. sem ver PII) — emitindo um convite que não cria senha, ligando só as permissões finas necessárias e usando grupo de acesso para decidir o que a pessoa vê.

Vídeo#

Identificador no manifesto: acd-240-03-usuarios-grupos-7-permissoes · duração-alvo 7 min · tela do produto: /settings.

Roteiro de gravação (6 capítulos):

#Minutagem-alvoCapítuloTela do produto
10:00–0:40Abertura: papel (o que FAZ) × permissão fina (o que OPERA) × grupo (o que VÊ)./settings → Acesso
20:40–2:10Convidar ana@example.com: nome, e-mail, papel, permissões finas. O convite não emite senha — emite link de ativação./settings → Acesso
32:10–3:30As 7 permissões finas, todas desligadas por padrão; ligar runQuery e deixar exportData/viewPII desligados./settings → Acesso
43:30–4:50Grupos de acesso: PII em claro ou mascarada, camadas e allowlist de tabelas/colunas ocultas./governanca
54:50–6:00Service principals e chaves: identidade não-humana, sp_live_…, papel no envelope, revogação imediata./settings → Integrações e chaves
66:00–7:00Ciclo de vida do convite (24 h, uso único, reenviar/cancelar), erros comuns e o "faça você mesmo"./settings → Acesso

Conteúdo#

Três controles diferentes, na mesma pessoa

  • O papel (RBAC) diz o que a pessoa faz na plataforma — é a aula anterior.
  • As 7 permissões finas refinam o que ela opera sobre os dados.
  • O grupo de acesso decide o que ela vê: dados pessoais em claro ou mascarados, quais camadas e quais tabelas/colunas.
PermissãoChaveO que libera
Executar pipelinerunPipelinerodar ingestões/transformações
Executar queriesrunQueryexecutar consultas no datalake
Inserir dadosdataInsertgravar novas linhas
Atualizar dadosdataUpdatealterar linhas existentes
Deletar dadosdataDeleteremover linhas
Exportar dadosexportDatabaixar/exportar resultados
Ver dados PIIviewPIIver colunas sensíveis sem máscara

Um membro novo entra com todas as sete desligadas e status Convidado — menor privilégio por padrão. Ligar uma permissão é uma decisão consciente, não o default.

O convite não emite senha

Este é o ponto que mais gera chamado. Ao cadastrar alguém em Acesso, a plataforma não gera senha provisória e nunca envia nem exibe senha: ela emite um link de ativação de uso único, com validade de 24 horas, guardado apenas como resumo criptográfico. Quem não tem conta define a própria senha ao abrir o link; quem já tem conta no ingestia.io entra com a senha de sempre (e o código MFA) — e a senha existente nunca é sobrescrita pelo convite. O workspace e o papel vêm do convite, resolvidos no servidor; nada disso é escolhido no formulário do navegador.

Reenviar convite emite um link novo e invalida o anterior na hora. Cancelar derruba o link pendente sem remover a pessoa. Desativar ou remover o membro também derruba o convite — e o acesso deixa de ser resolvido já na sessão aberta, porque a checagem vai ao banco a cada requisição. Quando o link não vale mais, a tela diz o motivo e o que fazer sem revelar de qual workspace era nem se aquele e-mail existe.

Selo "Convite a reemitir"

Pessoas convidadas antes da correção do ciclo de convite receberam uma senha provisória que nunca autenticou em lugar nenhum. Essas linhas aparecem com o selo Convite a reemitir; o conserto é um clique em Reenviar convite.

Grupos de acesso: o que a pessoa VÊ

Em Governança de dados (/governanca), os grupos de acesso decidem quais tabelas, camadas (Bronze/Silver/Gold) e dados pessoais cada pessoa enxerga. Um grupo define se o membro vê PII em claro (auditado) ou mascarada (•••), quais camadas estão liberadas, uma allowlist de tabelas (vazio = todas as tabelas das camadas permitidas) e colunas ocultas — que é diferente de PII: coluna oculta não aparece, PII mascarada aparece sem o valor. Sem grupo, o padrão é ver tudo com PII mascarada. Todo bloqueio e toda revelação de dado pessoal ficam registrados na auditoria.

Identidades não-humanas

Integração e automação não usam a conta de uma pessoa: usam service principal. É uma identidade não-humana com escopo definido, cujo token tem prefixo sp_live_… e que carrega o papel no envelope da própria credencial — envelope ilegível cai para viewer (fail-closed). Chaves de API de dados (ing_live_…) e service principals viram hash SHA-256 mais um prefixo de 16 caracteres guardado em claro só para você identificar a chave na lista: o valor cru aparece uma única vez, na criação. Perdeu? Gere outra e revogue a anterior — a revogação vale imediatamente, porque cada requisição resolve a chave no banco, sem cache nem janela de graça. Um ing_live_… nunca é aceito como service principal, e vice-versa.

Exemplo: convidar Ana sem deixá-la ver PII nem exportar

Maria (owner) convida ana@example.com como member, liga runQuery e deixa exportData e viewPII desligados: Ana analisa vendas, consulta o datalake, mas não baixa arquivo e não vê CPF/e-mail em claro. Em /governanca, Ana entra num grupo "Analistas" com PII mascarada, camadas Silver e Gold e allowlist vendas, produtos, filiais — a tabela clientes fica fora. O resultado: a mesma pessoa, com recortes independentes de fazer, operar e ver.

Açãoviewermemberadminownerorg_admin
Receber convite e entrar no workspace✓✓✓✓—
Exportar dados (com exportData ligado)—✓✓✓—
member.manage (convidar, ativar, desativar)——✓✓—
apikey.manage (chaves e service principals)——✓✓—
role.assign (definir o papel de alguém)———✓—

Erros comuns

  • Dar admin para quem só precisa exportar. member + exportData resolve; admin abre query, refresh e IA.
  • Revelar PII sem registro. Ligar viewPII "para destravar" sem decisão escrita é o caminho mais curto para um incidente de privacidade; toda revelação é auditada — use grupo com PII mascarada como padrão.
  • Esperar a senha no e-mail. Não existe senha provisória: entregue o link de ativação; se expirou, reenvie.
  • Confundir coluna oculta com PII mascarada. Oculta não aparece; mascarada aparece sem valor. São decisões diferentes.
  • Usar a conta de uma pessoa para integração. Quando ela sai da empresa, a automação cai. Use service principal.

Estado do produto

RBAC, grupos e service principals são fail-closed e cobertos por testes; o teto público é Preview. Duas ressalvas úteis: a homologação de provisionamento automático por IdP (SCIM) é Preview — assunto da aula 5 — e a política de governança vale hoje nas telas, exportações e envios do ingestia; levá-la para dentro do datalake, valendo também para quem consulta as tabelas por fora, ainda não está disponível. Gerir usuários e permissões custa R$ 0; o número de criadores e visualizadores é limitado pelo plano.

Faça você mesmo#

No workspace de treino Aurora Varejo (abra /settings no console):

  1. Em Acesso, convide ana@example.com como member. Não preencha senha — confirme que a tela não pede nenhuma.
  2. Ligue apenas runQuery. Deixe exportData e viewPII desligados e anote quais das 7 permissões ficaram marcadas.
  3. Copie o link de ativação exibido e anote: validade de 24 h, uso único. Não compartilhe por canal aberto.
  4. Clique em Reenviar convite e confirme na tela que o link anterior foi invalidado.
  5. Abra /governanca e crie (ou inspecione) um grupo de acesso com PII mascarada, camadas Silver/Gold e allowlist vendas, produtos, filiais. Anote o que acontece com clientes.
  6. No mesmo grupo, identifique onde se declara uma coluna oculta e escreva em uma frase a diferença entre oculta e mascarada.
  7. Em Integrações e chaves, localize onde se cria um service principal e anote o prefixo do token. Não crie nem revogue nada em ambiente real.
  8. Responda por escrito: Ana consegue baixar o XLSX do mês? E ver o CPF do cliente? Justifique citando a permissão e o grupo.

Você terminou quando o convite de Ana existir com status Convidado, só runQuery ligado, um grupo de acesso com PII mascarada aplicado a ela — e você souber explicar, com a doc, por que nenhuma senha foi criada no processo.

Checagem rápida#

Três perguntas no final da aula, corrigidas no servidor. A aula só conta como concluída depois da checagem.

Documentação relacionada#

Capacidades ensinadas#

C11.2 — o selo exibido na aula é sempre o estado mais conservador entre as capacidades citadas; nada aqui é "GA".

Carregando seu progresso…