Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Fabric Apps inclui um serviço de autenticação interno que conecta os usuários, gerencia suas sessões e anexa sua identidade a cada chamada de armazenamento e dados que seu aplicativo faz. Este artigo explica os conceitos que você precisa entender antes de configurar a autenticação para seu projeto.
Para obter detalhes de implementação, consulte:
- Configurar a autenticação SSO do Fabric para seu aplicativo do Fabric – código de login e cadastro para aplicativos implantados.
- Definir permissões de dados – use a identidade do usuário conectado para controlar o acesso a dados.
Modos de autenticação
Fabric Apps dá suporte a dois métodos de autenticação. O método usado depende de onde o aplicativo é executado:
| Ambiente | Método com suporte | Quando usar isso |
|---|---|---|
| Desenvolvimento local | Email e senha | Itere rapidamente sem depender do portal Fabric. |
| Implantado no Fabric | Fabric SSO (Microsoft Entra ID) | Login de produção para qualquer usuário com acesso ao workspace do Fabric. |
Conceitos-chave:
- Fabric SSO conecta o usuário por meio do portal Fabric usando sua identidade de Microsoft Entra ID existente. Ele só funciona quando o aplicativo é aberto de Fabric, portanto, você não pode usá-lo durante o desenvolvimento local.
- O email e a senha destinam-se apenas ao desenvolvimento local. Ele não funciona após a implantação.
- No primeiro login, o usuário é provisionado. Com Fabric SSO, não há nenhuma etapa de inscrição separada: os usuários são criados automaticamente na primeira vez que entram.
- A autenticação é necessária para implantações de Fabric. Definir
services.auth.enabledcomofalsefaz com quenpx rayfin upfalhe.
Sessões e identidade
Depois que um usuário entra, o SDK cria uma sessão que representa o usuário conectado. As sessões são opacas, seu aplicativo não deve inspecionar os tokens subjacentes. Em vez disso, seu aplicativo lê um pequeno conjunto de propriedades de alto nível:
- Se uma sessão está autenticada no momento.
- Os
ideemaildo usuário. - Declarações personalizadas configuradas em
rayfin.yml.
A mesma instância de cliente que faz login do usuário vincula automaticamente a identidade dele a todas as chamadas de dados e armazenamento. Você não transfere tokens manualmente.
As sessões também geram eventos de alteração, para que a interface do usuário possa reagir quando um usuário entrar ou sair sem recarregar a página.
Habilitar a autenticação em seu projeto
A autenticação está configurada em rayfin/rayfin.yml. O exemplo a seguir habilita Fabric SSO (para aplicativos implantados) e entrada por email/senha (para desenvolvimento local):
services:
auth:
enabled: true
allowedRedirectUris:
- http://localhost:5173
fabric:
enabled: true
password:
enabled: true # Local development only
O que cada configuração controla:
-
services.auth.enabled– ativa o serviço de autenticação. Necessário para qualquer implantação do Fabric. -
allowedRedirectUris– As origens autorizadas a receber o usuário após o login. Adicione a URL de desenvolvimento local aqui.npx rayfin upadiciona automaticamente a origem do aplicativo implantado. -
fabric.enabled– habilita Fabric SSO. Necessário para aplicativos implantados. -
password.enabled– Habilita o login com email e senha para desenvolvimento local.
Importante
As implantações do Fabric exigem que a autenticação esteja habilitada.
npx rayfin up falha quando services.auth.enabled é definido como false.
Após a edição rayfin.yml, reinicie o back-end local ou execute npx rayfin up para aplicar a alteração.
Declarações personalizadas
As declarações personalizadas permitem anexar metadados específicos do aplicativo a cada sessão, por exemplo, um nome de locatário, um sinalizador de recurso ou uma versão do aplicativo. Eles são úteis para controle de acesso baseado em função e controle de recursos sem alterar seu modelo de dados.
services:
auth:
enabled: true
customClaims:
tenant: default
app_version: 1.0.0
As declarações personalizadas aparecem dentro do objeto de sessão e podem ser referenciadas de suas regras de permissão de dados.
O que o SDK fornece
Quando você usa o RayfinClient, o serviço de autenticação está disponível em client.auth. Em um nível conceitual, ele fornece:
- Inscreva-se e entre com email e senha durante o desenvolvimento local.
- Iniciar sessão e cadastrar-se por meio do Fabric SSO para aplicativos implantados. A mesma chamada atende tanto usuários novos quanto recorrentes.
- Saia para encerrar a sessão atual.
- Leitura da sessão e assinaturas para que a interface do usuário permaneça sincronizada com o estado de autenticação do usuário.
Para ver o código que integra isso a um aplicativo real, consulte Configurar a autenticação SSO do Fabric para seu aplicativo do Fabric.