Criar organização
Imagine que você está construindo um aplicativo multi-inquilino (por exemplo, um aplicativo SaaS multi-inquilino) que atende a vários clientes, e cada cliente possui um inquilino dedicado. Quando um novo cliente chega, ele cria uma nova conta, assim como um novo inquilino para o seu próprio negócio.
Assim como você registrou sua conta no Logto Cloud e possui seu próprio inquilino Logto. Você pode implementar exatamente a mesma arquitetura em seu aplicativo também, usando o recurso de "organização" do Logto.
Crie suas organizações
Existem duas maneiras de criar organizações para o seu aplicativo.
Criar via Logto Console
Crie manualmente suas organizações através da interface do Logto Console. Vá para Console > Organizações para criar organização, atribuir membros e papéis, e personalizar a interface de experiência de login da organização.
Crie um "modelo de organização" se você quiser criar em lote organizações semelhantes que compartilham as mesmas configurações de papéis e permissões.
Criar via Logto Management API
Clicar em botões na interface do Console funciona bem, mas o ideal é permitir que os próprios usuários finais criem organizações e as gerenciem NO SEU Aplicativo. Assim, você precisará implementar esses recursos em seu aplicativo, com a ajuda do Logto Management API.
Se você não está familiarizado com o Logto Management API, por favor, certifique-se de ler estes documentos primeiro.
Management APIInteract with Management APISupondo que você já tenha conectado seu servidor backend de API ao endpoint do Logto Management API através do mecanismo Máquina para Máquina (M2M), e adquirido o token de acesso M2M.
Crie uma organização com o Management API (referências da API):
curl \
-X POST https://[tenant_id].logto.app/api/organizations \
-H "Authorization: Bearer $M2M_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tenantId":"string","name":"string","description":"string","customData":{},"isMfaRequired":false,"branding":{"logoUrl":"string","darkLogoUrl":"string","favicon":"string","darkFavicon":"string"},"createdAt":1234567890}'
Exemplo de resposta (201)
{
"tenantId": "string",
"id": "string",
"name": "string",
"description": "string",
"customData": {},
"isMfaRequired": false,
"branding": {
"logoUrl": "string",
"darkLogoUrl": "string",
"favicon": "string",
"darkFavicon": "string"
},
"createdAt": 1234567890
}
Em seguida, você pode implementar sua própria API para o seu aplicativo. Assim, quando seus usuários realizarem a ação de "criar organização" em seu aplicativo, você pode validar a solicitação verificando suas permissões e, então, chamar o Logto Management API para fazer o restante do trabalho.
Validando o token de organização na solicitação do usuário
No seu aplicativo, quando os usuários realizam ações no contexto de uma organização, eles precisam usar o token de organização em vez do token de acesso regular. O token de organização é um tipo especial de JWT que contém permissões da organização. E assim como qualquer token de acesso JWT, você pode decodificar as reivindicações do token e verificar a reivindicação "scope" para checar permissões.
Veja Autorização (Authorization) para mais detalhes sobre cenários de autorização e como validar tokens de organização.