Pesquisar K
Appearance
Appearance
A autenticação via URL é adequada para aplicações SSR porque o servidor tem acesso direto aos parâmetros da requisição antes de processar ou renderizar o conteúdo. Isso permite validar a sessão no servidor e garantir que apenas usuários autenticados tenham acesso às páginas protegidas.
Para portais externos, essa é a única forma de autenticação disponível, já que o SDK JavaScript LayersPortal.js funciona apenas quando o portal está embutido na Layers.
Requisito
Para usar esse tipo de autenticação, certifique-se que seu portal possui a feature "forward-session" habilitada.
Quando um usuário acessa um portal através da Layers, os parâmetros de autenticação são adicionados à URL como query parameters. O servidor da aplicação recebe esses parâmetros na requisição HTTP e pode validá-los antes de renderizar a página ou processar a requisição.
Os parâmetros fornecidos são (consulte a referência completa dos parâmetros de autenticação):
layers_session: identificador da sessão do usuáriolayers_community_id: identificador da comunidade através da qual o usuário está acessandolayers_user_id: identificador único do usuário na LayersNo servidor, extraia os parâmetros da query string da URL recebida. A implementação varia conforme a linguagem e framework utilizados.
Exemplo usando express:
app.get('/portal', async (req, res) => {
const { layers_session, layers_community_id, layers_user_id } = req.query;
// Validar sessão antes de renderizar
try {
await validateSession(layers_session, layers_community_id, layers_user_id)
// Sessão válida, pode continuar!
} catch (e) {
// Sessão inválida, apresentar erro
}
});Antes de processar a requisição ou renderizar a página, valide a sessão usando o endpoint de validação da Layers. A validação deve ser feita no servidor usando o token de aplicação fornecido pela Layers durante o processo de integração.
curl -X GET "https://api.layers.digital/v1/sso/session/validate?session=SESSION&community=COMMUNITY&userId=USER_ID" \
-H "Authorization: Bearer [TOKEN_DE_APLICACAO]"Segurança
É fundamental validar a sessão através do endpoint da API antes de confiar nos parâmetros recebidos na URL. Um agente malicioso pode tentar alterar os parâmetros layers_session, layers_community_id ou layers_user_id na query string para tentar acessar dados de outros usuários ou comunidades. Sempre valide a sessão no servidor antes de processar qualquer requisição autenticada.
A API retorna status 200 quando a sessão é válida. Qualquer outro status indica que a sessão não é válida e o usuário deve ser redirecionado para o login.