Pular para o conteúdo principal

Template de organização

O template de organização no Logto define um conjunto consistente de papéis (roles) e permissões disponíveis para cada organização (tenant) em seu produto SaaS. Ao centralizar essas definições, você pode reforçar a segurança, permitir onboarding escalável e garantir uma excelente experiência do usuário em todas as organizações.

info:

Se você não está construindo um aplicativo multi-tenant ou não precisa de papéis/permissões específicos por organização, pode pular esta seção. Os papéis e permissões globais do Logto são suficientes para aplicativos single-tenant ou que não utilizam organizações.

O que é o template de organização?

Um template de organização é um modelo que especifica quais papéis e permissões estão disponíveis em cada organização. Toda organização criada em seu tenant Logto herda automaticamente o template, garantindo um modelo de autorização consistente em todos os tenants.

  • Por que usar um template?
    • Impõe políticas de controle de acesso uniformes para cada organização.
    • Simplifica o onboarding de novos tenants e membros da equipe.
    • Facilita atualizações e auditorias do controle de acesso baseado em papel (RBAC) à medida que seu produto cresce.

Conceitos principais

  • Papéis da organização: Coleções de permissões concedidas a usuários ou clientes M2M (máquina para máquina) dentro de uma organização. Os papéis definem "quem pode fazer o quê" dentro de cada organização.
  • Permissões da organização: Ações não relacionadas à API, de granularidade fina (por exemplo, recursos de UI, lógica de negócio) que podem ser atribuídas a papéis.
  • Recursos de API (API resources): Endpoints/serviços de API protegidos por permissões. Papéis da organização podem ser vinculados a recursos de API para acesso à API com escopo de organização.
  • Mapeamento papel-permissão: Cada papel da organização no template pode ser mapeado para uma ou mais permissões.
  • Propagação do template: Alterações no template atualizam os papéis e permissões disponíveis para todas as organizações.
nota:

Papéis e permissões da organização (incluindo permissões de recursos de API) são distintos dos papéis globais e suas permissões. No entanto, recursos de API e suas permissões são definidos centralmente e podem ser referenciados tanto em contextos globais quanto de organização.

Comparação com papéis e permissões globais

Comparação de tipos de papel

Tipo de papelPode ter permissões de recurso de API?Pode ter permissões da organização (não-API)?
GlobalSimNão
OrganizaçãoSimSim

Comparação de tipos de permissões

Tipo de permissãoDefinido emAtribuível a papéis globais?Atribuível a papéis de organização?
Recurso de APIEntidade de recurso de APISimSim
OrganizaçãoTemplate de organizaçãoNãoSim

Anatomia de um template de organização

Um template de organização é composto por:

  • Papéis: Ex.: Admin, Membro, Visualizador, Financeiro
  • Permissões da organização: Ex.: invite:member, manage:billing, view:analytics
  • Matriz papel-permissão: Um mapeamento de quais permissões (incluindo permissões da organização e permissões de recursos de API) são concedidas por cada papel.

Visão geral visual

Visão geral do template de organização

Este diagrama ilustra como papéis da organização, permissões e recursos de API se conectam em um template de organização do Logto.

Cada organização criada no Logto terá esse mesmo conjunto de papéis e permissões, e usuários/clientes podem ser atribuídos a papéis por organização conforme necessário.

Use o template de organização em seu produto

O template de organização do Logto foi projetado para aplicações SaaS modernas e multi-tenant onde:

  • Cada organização deve ter as mesmas opções de papel e permissão para onboarding, colaboração e gestão.
  • Você quer evitar definir papéis/permissões manualmente para cada nova organização.
  • Um RBAC consistente é fundamental para conformidade, segurança e confiança do cliente.
  • Você precisa evoluir o controle de acesso conforme seu produto muda, sem quebrar organizações existentes.

Exemplos de uso

  • Produtos SaaS que oferecem workspaces, equipes ou empresas (cada um sendo um tenant).
  • Plataformas com papéis granulares de admin/membro/visualizador por organização.
  • Produtos com permissões tanto de API quanto não-API.

Boas práticas & versionamento

  • Mantenha papéis e permissões orientados ao negócio: Use nomes claros que correspondam a ações reais (não apenas endpoints técnicos).
  • Evite proliferação de papéis/permissões: Comece simples; adicione novos papéis/permissões apenas quando seu produto realmente precisar.
  • Comunique mudanças: Avise usuários/admins se as opções de papel ou permissão em suas organizações estiverem prestes a mudar.
  • Evolua o template: À medida que seu produto cresce, você pode atualizar o template a qualquer momento. Todas as organizações terão acesso automaticamente aos novos papéis/permissões.
  • Versionamento (opcional): Para mudanças maiores, considere versionar seu template e comunicar planos de migração aos seus clientes.

Gerenciando seu template de organização

Você pode gerenciar o template de organização pelo Console → Template de organização ou via Logto Management API.

  • Criar papéis: Adicione papéis de usuário e papéis M2M ao seu template. Cada papel fica disponível para todas as organizações em seu tenant Logto.
  • Criar permissões: Defina permissões tanto para recursos de API quanto para ações não-API (dentro do app).
  • Editar a matriz papel-permissão: Atribua permissões a papéis usando o Console do Logto ou Management API.
  • Atualizar ou excluir papéis/permissões: Alterações no template são aplicadas automaticamente a todas as organizações. (Usuários/clientes mantêm suas atribuições de papel; apenas o conjunto de permissões muda.)

Para guias passo a passo sobre como gerenciar papéis e permissões da organização, veja Controle de acesso baseado em papel (RBAC).

Perguntas frequentes

Preciso usar permissões da organização?

Não, permissões da organização são opcionais. Você pode usar o template de organização apenas para definir papéis e permissões de recursos de API, se preferir.

O que acontece se eu alterar o template de organização?

Alterações em papéis ou permissões são refletidas imediatamente em todas as organizações. Usuários e clientes mantêm suas atribuições de papel; apenas o que esses papéis permitem pode mudar.

Posso personalizar papéis ou permissões por organização?

Não diretamente. Templates de organização impõem um modelo consistente em todos os tenants. (Você ainda pode atribuir papéis diferentes para usuários/clientes diferentes em cada organização.)

Como faço rollback ou migro mudanças?

Atualize manualmente o template para restaurar papéis/permissões anteriores. Para migrações complexas, considere estratégias de versionamento.

O que acontece se eu excluir um papel ou permissão?

Usuários/clientes com esse papel perdem acesso às permissões vinculadas a ele. Excluir uma permissão a remove de todos os papéis que a possuíam.

Existem limitações?

A personalização é feita no nível do template, não por organização. Entre em contato se precisar de exceções avançadas por tenant.

Leitura adicional

Proteger permissões da organização (não-API)

Proteger recursos de API no nível da organização

Personalizando reivindicações de token