Pular para o conteúdo principal

Configurar login social com Facebook (Set up social login with Facebook)

Integre o sistema de autenticação OAuth 2.0 do Facebook para habilitar o login com Facebook, vinculação de contas e acesso seguro às APIs do Facebook.

dica:

Este guia assume que você tem um entendimento básico dos Conectores (Connectors) do Logto. Para aqueles que não estão familiarizados, consulte o guia de Conectores para começar.

Primeiros passos

O conector do Facebook permite a integração OAuth 2.0 para que seu aplicativo possa:

  • Adicionar autenticação “Entrar com Facebook”
  • Vincular contas de usuários a identidades do Facebook
  • Sincronizar informações do perfil do usuário do Facebook
  • Acessar APIs do Facebook por meio do armazenamento seguro de tokens no Logto Secret Vault para tarefas de automação (por exemplo, responder a tópicos; publicar conteúdo e vídeos em seu aplicativo)

Para configurar esses recursos de autenticação, crie primeiro um conector do Facebook no Logto:

  1. Acesse Logto > Conector > Conector social.
  2. Clique em Adicionar conector social, selecione Facebook, clique em Próximo e siga o tutorial passo a passo para concluir a integração.

Etapa 1: Configure um aplicativo no Painel de Apps do Facebook

Antes de usar o Facebook como um provedor de autenticação, você deve configurar um aplicativo na plataforma de desenvolvedores do Facebook para obter credenciais OAuth 2.0.

  1. Registre-se como Desenvolvedor do Facebook se ainda não tiver uma conta.
  2. Visite a página de Apps.
  3. Clique em seu app existente ou crie um novo se necessário.
dica:

Um caso de uso é a principal forma como seu aplicativo irá interagir com a Meta e determina quais APIs, recursos, permissões e produtos estarão disponíveis para seu app. Se você precisa apenas de autenticação social (para obter email & public_profile), selecione "Authentication and request data from users with Facebook Login". Se quiser acessar APIs do Facebook, escolha seus casos de uso preferidos — a maioria deles também suporta a integração com "Facebook Login for business" após a criação do app.

  1. Após criar o app, na página do painel do app, navegue até Use cases > Facebook Login > Settings ou Facebook Login for business > Settings.
  2. Preencha o campo Valid OAuth Redirect URIs com o Callback URI do Logto (copie isso do seu conector Facebook do Logto). Após os usuários fazerem login com o Facebook, eles serão redirecionados para cá com um código de autorização que o Logto usa para finalizar a autenticação.
  3. Navegue até Use cases e clique em Customize do seu caso de uso para adicionar os escopos. Recomendamos adicionar email e public_profile, que são necessários para implementar o login com Facebook no Logto.

Etapa 2: Configure o conector Logto com as credenciais do cliente

  1. No Painel de Apps do Facebook, clique na barra lateral em App settings > Basic.
  2. Você verá o App ID e o App secret no painel.
  3. Clique no botão Show ao lado do campo App secret para revelar e copiar seu conteúdo.
  4. Configure as definições do seu conector Facebook do Logto:
    • Preencha o campo clientId com o App ID.
    • Preencha o campo clientSecret com o App secret.
    • Clique em Save and Done no Logto para conectar seu sistema de identidade ao Facebook.

Etapa 3: Configure os escopos

Os escopos definem as permissões que seu app solicita dos usuários e controlam quais dados privados seu projeto pode acessar das contas do Facebook deles.

Configure os escopos no Painel de Apps do Facebook

  1. Navegue até Facebook App Dashboard > Use cases e clique no botão Customize.
  2. Adicione apenas os escopos que seu app precisa. Os usuários irão revisar e autorizar essas permissões na tela de consentimento do Facebook:
    • Para autenticação (Obrigatório): email e public_profile.
    • Para acesso à API (Opcional): Quaisquer escopos adicionais que seu app necessite (por exemplo, threads_content_publish, threads_read_replies para acessar a API do Threads). Consulte a Documentação do Desenvolvedor Meta para serviços disponíveis.

Configure os escopos no Logto

Escolha uma ou mais das abordagens abaixo conforme sua necessidade:

Opção 1: Nenhum escopo extra de API necessário

  • Deixe o campo Scopes em branco no seu conector Facebook do Logto.
  • O escopo padrão email public_profile será solicitado para garantir que o Logto possa obter corretamente as informações básicas do usuário.

Opção 2: Solicitar escopos adicionais no login

  • Insira todos os escopos desejados no campo Scopes, separados por espaços.
  • Quaisquer escopos listados aqui substituem os padrões, então sempre inclua os escopos de autenticação: email public_profile.

Opção 3: Solicitar escopos incrementais posteriormente

  • Após o usuário fazer login, você pode solicitar escopos adicionais sob demanda reiniciando um fluxo de autorização social federado e atualizando o conjunto de tokens armazenados do usuário.
  • Esses escopos adicionais não precisam ser preenchidos no campo Scopes do seu conector Facebook do Logto e podem ser obtidos através da Social Verification API do Logto.

Seguindo esses passos, seu conector Facebook do Logto solicitará exatamente as permissões que seu app precisa — nem mais, nem menos.

dica:

Se seu app solicitar esses escopos para acessar a API do Facebook e realizar ações, certifique-se de habilitar Store tokens for persistent API access no conector Facebook do Logto. Veja a próxima seção para detalhes.

Etapa 4: Configurações gerais

Aqui estão algumas configurações gerais que não bloqueiam a conexão com o Facebook, mas podem afetar a experiência de autenticação do usuário final.

Sincronizar informações do perfil

No conector do Facebook, você pode definir a política para sincronizar informações do perfil, como nomes de usuário e avatares. Escolha entre:

  • Sincronizar apenas no cadastro: As informações do perfil são buscadas uma vez quando o usuário faz login pela primeira vez.
  • Sempre sincronizar no login: As informações do perfil são atualizadas toda vez que o usuário faz login.

Armazenar tokens para acessar APIs do Facebook (Opcional)

Se você deseja acessar APIs do Facebook e realizar ações com autorização do usuário (seja via login social ou vinculação de conta), o Logto precisa obter escopos específicos de API e armazenar tokens.

  1. Adicione os escopos necessários seguindo o tutorial acima.
  2. Habilite Store tokens for persistent API access no conector Facebook do Logto. O Logto armazenará com segurança os tokens de acesso do Facebook no Secret Vault.
nota:

O Facebook não fornece tokens de atualização (refresh tokens). No entanto, quando o armazenamento de tokens está habilitado, o Logto solicita automaticamente um token de acesso de longa duração (60 dias) na autenticação do usuário. Durante esse período, os usuários podem revogar manualmente os tokens de acesso, mas, caso contrário, não precisarão de nova autorização para acessar as APIs do Facebook. Observação: Não adicione offline_access ao campo Scope, pois isso pode causar erros.

Etapa 5: Teste o login com usuários de teste do Facebook (Opcional)

Você pode usar contas de usuário de teste, desenvolvedor e administrador para testar o login com o app. Também é possível publicar o app diretamente para que qualquer usuário do Facebook possa fazer login.

  1. No Painel de Apps do Facebook, clique na barra lateral em App roles > Test Users.
  2. Clique no botão Create test users para criar um usuário de teste.
  3. Clique no botão Options de um usuário de teste existente para ver mais operações, como "Change name and password".

Etapa 6: Publique as configurações de login do Facebook

Normalmente, apenas usuários de teste, administradores e desenvolvedores podem fazer login com o app. Para permitir que usuários normais do Facebook façam login com o app em ambiente de produção, pode ser necessário publicar esse app.

  1. No Painel de Apps do Facebook, clique na barra lateral em Publish.
  2. Preencha os campos Privacy Policy URL e User data deletion se necessário.
  3. Clique no botão Save changes no canto inferior direito.
  4. Clique no botão de alternância Live na barra superior do app.

Utilizar o conector do Facebook

Depois de criar um conector do Facebook e conectá-lo ao Facebook, você pode incorporá-lo aos fluxos de experiência do usuário final. Escolha as opções que atendem às suas necessidades:

Habilitar "Entrar com Facebook"

  1. No Logto Console, vá para Experiência de login > Cadastro e login
  2. Adicione o conector do Facebook na seção Login social para permitir que os usuários se autentiquem com o Facebook

Saiba mais sobre a experiência de login social.

Use a Account API para construir um Centro de Conta personalizado em seu aplicativo que permita aos usuários autenticados vincular ou desvincular sua conta do Facebook. Siga o tutorial da Account API

dica:

É permitido habilitar o conector do Facebook apenas para vinculação de contas e acesso à API, sem habilitá-lo para login social.

Acessar a API do Facebook e realizar ações

Seu aplicativo pode recuperar tokens de acesso do Facebook armazenados no Secret Vault para chamar APIs do Facebook e automatizar tarefas de backend (por exemplo, publicar conteúdo ou gerenciar postagens). Consulte o guia sobre como recuperar tokens armazenados para acesso à API.

Gerenciar a identidade do usuário no Facebook

Após um usuário vincular sua conta do Facebook, os administradores podem gerenciar essa conexão no Logto Console:

  1. Navegue até Gerenciamento de usuários e abra o perfil do usuário.
  2. Em Conexões sociais, localize o item do Facebook e clique em Gerenciar.
  3. Nesta página, os administradores podem gerenciar a conexão do usuário com o Facebook, ver todas as informações de perfil concedidas e sincronizadas da conta do Facebook e verificar o status do token de acesso.
nota:

A resposta do token de acesso do Facebook não inclui informações específicas de escopo, portanto, o Logto não pode exibir diretamente a lista de permissões concedidas pelo usuário. No entanto, desde que o usuário tenha consentido com os escopos solicitados durante a autorização, seu aplicativo terá as permissões correspondentes ao acessar a API do Facebook. Recomenda-se configurar corretamente os escopos necessários tanto no Facebook Developer Console quanto no Logto para garantir que seu aplicativo tenha o acesso necessário.

Referência

Facebook for Developers - Documentação Documentação do Facebook Login