Pular para o conteúdo
Siglata Docs
Português
Esc
navegarabrir⌘Jpré-visualizar
Nesta página

Organizações

Crie uma equipe, convide membros e defina funções.

O Siglata organiza arquivos e permissões de acesso por organização. Todos os ativos de um projeto — incluindo arquivos, reservas de upload, cotas de armazenamento, listas de membros, convites e concessões do Model Context Protocol (MCP) — são particionados pelo identificador da organização. Um usuário pode pertencer a múltiplas organizações e alternar entre elas. Cada organização mantém seus próprios dados e permissões.

Arquitetura Multi-Inquilino

No Siglata, uma organização é o limite fundamental de segurança e retenção de dados:

┌────────────────────────────────────────────────────────────────────────┐
│                           Conta Siglata                                │
│                         (alex@exemplo.com)                             │
└──────────────────────────────────┬─────────────────────────────────────┘

         ┌─────────────────────────┴─────────────────────────┐
         ▼                                                   ▼
┌─────────────────────────────────┐         ┌─────────────────────────────────┐
│     Acme Corp (org_1a2b3c)      │         │     Dev Studio (org_9z8y7x)     │
├─────────────────────────────────┤         ├─────────────────────────────────┤
│ • Função: Proprietário (Owner)  │         │ • Função: Membro (Member)       │
│ • Cota: 10 GiB Dedicada         │         │ • Cota: 10 GiB Dedicada         │
│ • Arquivos Privados e Lixeira   │         │ • Arquivos Privados e Lixeira   │
│ • Membros e Convites Próprios   │         │ • Membros e Convites Próprios   │
│ • Concessões OAuth MCP Próprias │         │ • Concessões OAuth MCP Próprias │
└─────────────────────────────────┘         └─────────────────────────────────┘
  • Particionamento Estrito de Dados: Todas as consultas ao banco de dados e caminhos de armazenamento de objetos incluem o organizationId. O vazamento de dados entre inquilinos é impedido tanto no esquema do banco quanto nas camadas de aplicação.
  • Cotas de Armazenamento Independentes: Cada organização possui sua própria cota base de 10 GiB (limitBytes), que não é afetada pelo armazenamento de arquivos em outras organizações.
  • Integrações Delimitadas: Clientes MCP conectados e concessões OAuth vinculam-se estritamente a uma organização por vez. O MCP de produto também exige entitlement de piloto nessa organização antes de emitir tokens ou executar ferramentas.

Controle de Acesso Baseado em Funções (RBAC)

O Siglata define três funções organizacionais com hierarquia rígida e fundamentadas no princípio do menor privilégio:

Capacidade owner admin member
Visualizar, enviar, baixar e renomear arquivos
Mover arquivos para lixeira e restaurar em 30 dias
Consultar métricas de armazenamento da organização
Conectar clientes MCP pessoais
Convidar novos membros e atribuir funções
Cancelar convites pendentes
Atualizar funções de membros
Remover membros da organização
Atualizar nome e slug de URL da organização
Promover membros a Proprietário ou excluir organização

Proprietários excluem uma organização com confirmação pelo nome no console, a operação CallScript organization_delete (entrada vazia; ligada ao grant) ou POST /auth/organization/delete. A exclusão limpa o plano de arquivos da organização antes de remover membros, convites e a linha da organização.

Proteções e Invariantes de Função

  • Proteção ao Proprietário Exclusivo: Uma organização deve sempre possuir pelo menos um proprietário ativo. Um proprietário exclusivo não pode ser rebaixado ou removido até que outro membro seja promovido a proprietário.
  • Delegação de Administradores: Administradores podem convidar membros, atribuir funções de membro/administrador e remover colaboradores, mas não podem rebaixar ou remover proprietários existentes.
  • Validação de Políticas em Tempo Real: As verificações de função (requireRoleForScopes) ocorrem dinamicamente a cada requisição de API e operação MCP. Mudanças de função surtem efeito imediato sem exigir que os usuários saiam da sessão.

Ciclo de Vida de Convite de Membros

Convide colaboradores para o seu espaço de trabalho com segurança por meio de convites por e-mail localizados:

1. Admin envia convite ──> E-mail de convite localizado (pt-BR / en-US) ──> Token salvo


2. Destinatário abre link ──> Login com link mágico sem senha ──> Aceita convite


3. Registro de membro criado ──> Organização surge no seletor ──> Acesso ativo

1. Enviar um Convite

Administradores e proprietários podem convidar novos membros da equipe pela operação CallScript invitation_create dentro de um script MCP execute ou pelo endpoint POST /auth/organization/invite-member:

  • Informe o endereço de e-mail do destinatário.
  • Escolha a função a ser atribuída (owner, admin ou member).
  • Escolha a preferência de idioma (pt-BR ou en-US) pelo cabeçalho x-siglata-locale para garantir que os e-mails transacionais sejam entregues no idioma nativo do destinatário.

2. Gerenciar Convites Pendentes

  • Convites pendentes são retornados pela operação CallScript invitations_list ou por GET /auth/organization/list-invitations.
  • Reenvie um convite pendente com invitation_resend (mesmo e-mail e função do create).
  • Liste convites endereçados a você em outras organizações com invitations_mine.
  • Os convites permanecem válidos por 7 dias.
  • Um administrador pode cancelar um convite pendente a qualquer momento antes da aceitação (invitation_cancel), o que invalida imediatamente o token correspondente.

3. Aceitação e Integração

  • O destinatário clica no link seguro contido no e-mail, ou usa invitation_accept / invitation_reject vinculados à concessão quando o convite é da organização da concessão OAuth.
  • Aceitar e rejeitar recusam convites de outras organizações (INVITATION_ORG_MISMATCH); entrar em outra organização exige aceite no console e uma nova concessão OAuth.
  • Saia da organização vinculada à concessão com organization_leave; a próxima chamada MCP falha por falta de associação.
  • Caso ainda não possua uma conta no Siglata, ele se autentica instantaneamente por meio de um link mágico sem senha — nenhuma criação de senha é exigida.
  • Ao confirmar o convite, sua conta é vinculada como membro ativo e a organização passa a ser exibida no seletor de espaços de trabalho.

Alternar Espaços de Trabalho

Usuários que pertencem a múltiplas organizações podem alternar de contexto:

  • Console Siglata: Durante o login e a autorização MCP, a etapa de seleção da organização define o espaço de trabalho ativo.
  • Clientes de IA via MCP: Cada concessão de conexão MCP vincula-se a uma organização específica. Confirme o vínculo com a operação CallScript principal_get dentro de um script execute (organizationId, função, escopos); chame organization_get quando precisar do nome ou do slug. Para conectar um agente de IA a múltiplas organizações, autorize conexões de servidor individuais para cada espaço de trabalho.

Remoção de Membro e Revogação Imediata

Quando um colaborador deixa a equipe ou seu acesso é revogado:

  1. Um administrador remove o usuário pela operação CallScript member_remove ou pelo endpoint POST /auth/organization/remove-member.
  2. O registro de member do usuário no banco de dados é excluído atomicamente.
  3. Qualquer token MCP ativo detido por esse usuário para a organização é rejeitado na próxima chamada com:
    {
      "code": "ORGANIZATION_MEMBERSHIP_REQUIRED",
      "message": "Current organization membership is required"
    }
  4. Downloads binários autenticados e requisições à API são bloqueados de imediato, garantindo que não haja retenção indevida de dados. Conecte um cliente MCP ou gerencie arquivos.

Esta página foi útil?