Português (Portugal)
  • jwt
  • auth
  • user data

Centro seguro para dados de utilizadores em movimento

Contrasta autenticação e dados de utilizadores. Detalha o armazenamento seguro e movimento do Logto. Descreve as melhores práticas de fluxo de dados (mapeamento de atributos, sincronização de dados, JWTs personalizadas).

Ran
Ran
Product & Design

Os metadados do utilizador são o sangue vital dos serviços de Gestão de Identidade e Acesso (IAM). Alimenta características do produto como análise de dados, experiências personalizadas, monitorização de segurança e controlo de acesso. Mas, à medida que as aplicações se tornam mais interconectadas entre plataformas, organizações e aplicações, gerir metadados de utilizadores pode tornar-se complexo. Não temas! Ao compreender o fluxo de dados de utilizadores, podes criar uma experiência de autenticação perfeita e segura.

Dados de autenticação vs. dados de utilizadores

Nem todos os dados de utilizadores são criados de igual forma. Os dados de autenticação são um subconjunto específico trocado durante a emissão de tokens. Imagina um JWT (JSON Web Token) a viajar nos teus pedidos HTTP. Um JWT grande pode abrandar as coisas. Para manter tudo rápido e seguro, só incluímos informações essenciais sobre o utilizador, como identidade, estado da conta, detalhes de autenticação, permissões e um perfil de utilizador básico.

Aqui no Logto, focamo-nos em armazenar os seguintes dados de autenticação:

  • Estado da conta: Rastreia o tempo de criação, atualizações, estado de suspensão e histórico de login. Incluindo create_at, updated_at, account_suspended, last_ip.
  • Informações de autenticação: Inclui identificadores de utilizadores, fatores de autenticação e dados relacionados à verificação. Incluindo user_id, password_digest, password_algorithm, username, email, email_verified, phone, phone_verified, social_identities, sso_identities, mfa_config, mfa_verification_factors.
  • Informações de autorização: Gere papéis, permissões, pertencimentos a organizações e aplicações e dispositivos autorizados para controlo de acesso granular. Incluindo role, permission, organization_id, organization_role, organization_permission, grant_application, grant_device.
  • Perfil padrão do utilizador: Este é o perfil de utilizador mais comum registado por OIDC. Logto também o define como metadados do utilizador padrão, armazenados sob o namespace 'profile.'. Incluindo first_name, last_name, middle_name, name, nickname, profile, website, avatar, gender, birthdate, zoneinfo, locale, address.

Para além do básico: Personalizar dados de utilizadores com Logto

  • Logto vai além do perfil padrão. A nossa API de Gestão permite-te definir dados personalizados específicos para as necessidades do teu negócio. Estes dados são armazenados de forma segura sob um namespace dedicado ‘custom.data’. Aqui estão alguns casos: occupation, company_name, company_size.

Pensar fora do cofre: dados de API externa com JWT personalizada

  • Certos dados de negócios podem não necessitar de armazenamento permanente no Logto. A beleza da JWT Personalizada é que podes buscar dinamicamente estes dados através de chamadas API durante a emissão de tokens, expandindo o alcance dos teus dados de utilizadores. Lembra-te, a segurança é primordial, por isso evita incluir informações sensíveis em JWTs, pois são facilmente analisáveis. Aqui estão alguns casos: subscribed_status, last_path_visited, app_theme.

A jornada dos dados de utilizadores: aquisição & distribuição

Os dados de utilizadores vêm de várias fontes:

  • Entrada do utilizador: Durante inscrição, integração ou atualizações de perfil na tua aplicação.
  • Provedores de identidade (IdPs): Sincronizados perfeitamente durante logins sociais ou SSO empresarial.
  • Migrações de dados: Transferência de dados de bases de dados existentes.
  • Intervenção do administrador: Edições manuais pelo administrador via o console ou base de dados.

Uma vez que tens estes dados valiosos, podes partilhá-los com segurança:

  • Concessão de permissões a apps de terceiros: Fornece acesso controlado a dados de utilizadores para aplicações autorizadas.
  • Exportações de dados: Exporta dados de utilizadores do Logto para análise adicional.
  • Entrega via JWTs, Webhooks ou APIs: Partilha dados de utilizadores com os teus serviços internos para uma experiência de utilizador unificada.

Como um centro de identidade, o Logto destaca-se em facilitar o fluxo de dados de utilizadores. Facilitamos a aquisição de informações de utilizadores de vários provedores e a entrega segura às partes autorizadas.

Pontos chave

Agora que compreendes a jornada dos dados de utilizadores, vamos explorar algumas considerações chave de design:

  1. Mapeamento de atributos Garante o mapeamento preciso dos atributos dos utilizadores de diferentes fontes para evitar silos de dados. Para conexões SAML, é necessário mapeamento manual. Ao usar OIDC, aproveita as reivindicações padronizadas ou cria namespaces únicos para evitar conflitos.
  2. Sincronização de dados IdP e RP A sincronização de dados entre IdPs (provedores de identidade) e RPs (partes dependentes) geralmente envolve autorização e pedidos de âmbitos específicos em ambos os lados. Tem cuidado com o estado de verificação. Uma "verificação de email=false" sincronizada de um IdP como GitHub ou Azure AD pode não ser um email verificado no teu sistema. Lida com isso em conformidade.
  3. Segregação de dados e sobreposição numa estrutura multi-entidade Em ambientes complexos com múltiplas organizações, aplicações e provedores, a segregação de dados e o comportamento de sobreposição tornam-se cruciais.
    • Multi-organização: Um utilizador pode pertencer a várias organizações. Diferencia os dados de utilizadores armazenados na conta do utilizador dos dados específicos da organização. Alterações dentro de uma organização não devem afetar as outras.
    • Multi-aplicação: Para aplicações que partilham uma base de dados de utilizadores via Logto, implementa um módulo central de configurações de conta ou perfil no teu serviço.
    • Multi-provedor: Aplicações com vários métodos de autenticação recebem diferentes informações de utilizadores de cada provedor. No Logto, escolhe sincronizar dados durante o registo de login social ou em casa login para SSO empresarial. O login social é ideal para a sincronização inicial de dados, enquanto o SSO empresarial pode sincronizar informações de membros em cada login para uma gestão mais fácil dentro do IdP da empresa.
  4. JWTs personalizadas para acesso expandido a dados O poder das JWTs personalizadas reside na sua capacidade de recuperar informações externas dinamicamente durante a emissão de tokens via chamadas API. Isso permite-te aceder a pontos de dados que podem não ser essenciais para a funcionalidade central, mas que enriquecem a experiência do utilizador. Lembra-te, com grande flexibilidade vem grande responsabilidade. Como as JWTs são facilmente analisáveis por qualquer pessoa que as receba, evita incluir dados sensíveis.
  5. Registo progressivo para um fluxo de integração mais suave Não sobrecarregues os utilizadores com um formulário de registo do tamanho de um romance. Implementa registo progressivo, uma técnica onde solicitas apenas as informações mais críticas do utilizador inicialmente. Isto simplifica o processo de inscrição e mantém os utilizadores envolvidos. À medida que os utilizadores interagem com a tua aplicação, podes gradualmente recolher pontos de dados adicionais para construir um perfil de utilizador mais rico.

Ao seguir estas melhores práticas, podes assegurar um fluxo suave e seguro de dados de utilizadores ao longo da jornada de autenticação.

Logto: O teu centro seguro para dados de utilizadores em movimento

Gerir eficazmente metadados de utilizadores permite-te personalizar experiências de utilizador, melhorar a segurança e obter insights valiosos sobre o comportamento dos utilizadores. Ao aproveitar a plataforma segura e flexível do Logto, podes desbloquear todo o potencial dos dados de utilizadores e ganhar uma vantagem competitiva no atual cenário orientado por dados.