Autorização (Authorization)
A Autorização (Authorization) define quais ações um usuário pode realizar ou quais recursos ele pode acessar após ser autenticado, determinando o que ele pode fazer em seu aplicativo.
O serviço de autorização do Logto usa um mecanismo baseado em token. Enquanto o Logto fornece token de acesso
, seu servidor de recursos é responsável por validá-los e aplicá-los como parte do controle de acesso.
Existem dois tipos de tokens de acesso:
- Tokens de acesso (Access tokens): Usados para acessar recursos de API de usuário / sistema.
- Tokens de organização (Organization tokens): Tokens de acesso especiais para recursos de organização, usados em uma arquitetura multi-tenant quando o recurso de organização está habilitado.
O Logto oferece serviços de autorização para vários cenários. Aqui estão alguns casos de uso típicos e você pode escolher o mais adequado e alinhar seus requisitos com os recursos e serviços do Logto.
Cenário | Como | Fluxo de autorização |
---|---|---|
Proteja seus recursos de API de forma simples, sem RBAC. | Registre sua API no Logto Console, e o Logto simplesmente concederá tokens de acesso | Logto concede token de acesso (sem permissões), e você precisa validar esses tokens para proteger seus recursos de API. |
Proteja seus recursos de API com RBAC | Registre sua API e aplique RBAC para controle de acesso flexível e granular. | Logto concede token de acesso com permissão incluída para proteger seus recursos de API. |
Proteja seus recursos de organização usando RBAC em nível de organização (modelo de organização). | Trate cada organização como um recurso, usando RBAC em nível de organização (modelo de organização) para controle de acesso em uma arquitetura multi-tenant. | Logto concede token de organização com permissão de organização para proteger recursos em nível de organização. |
Você também pode usar ferramentas como reivindicações de token personalizadas para incluir reivindicações adicionais em tokens de acesso para atender aos seus requisitos técnicos personalizados. Além disso, um caso de uso mais avançado: Proteja seus recursos de API usando RBAC em nível de organização (modelo de organização)
Familiarize-se com o controle de acesso baseado em papel
O controle de acesso baseado em papel é usado em toda a infraestrutura do Logto, tanto nos níveis de sistema (controle de acesso baseado em papel) quanto nos níveis de organização (RBAC de organização):
- Sujeitos (Subjects): Podem ser usuários reais (ou membros no contexto da organização) ou entidades não-humanas, como aplicativos máquina para máquina.
- Recursos de API (API resources): Os recursos dentro do seu sistema que precisam de proteção.
- Papéis (Roles): Representam funções ou responsabilidades de trabalho.
- Permissões (Permissions): Definem quais ações são autorizadas em recursos específicos.
Gerenciar essas entidades e seus relacionamentos permite que você atenda de forma flexível às suas necessidades de controle de acesso. No Logto, você pode usar RBAC em dois níveis, nível de usuário / sistemas (sem camada intermediária de organização envolvida) e organizações. No contexto da organização, há um design RBAC independente que chamamos de "Modelo de organização".
Recursos para autorização
Registre simplesmente recursos de API no Logto Console e proteja seus recursos de API.
Use o controle de acesso baseado em papel (RBAC) para gerenciar permissões em nível de usuário / sistema para facilitar a gestão e flexibilidade.
Use o modelo de organização (RBAC de organização) para proteger seus recursos. Ideal para produtos multi-tenant, com papéis definidos no nível da organização.
Use reivindicações de token personalizadas para adicionar reivindicações personalizadas e implementar controle de acesso baseado em atributos.