Apresentamos algumas atualizações para a FedCM, incluindo um novo teste de origem para a auto-reautorização.
A API Federated Credential Management (FedCM) é uma API da Web para federação de identidade que preserva a privacidade. Com a federação de identidade, uma parte confiável (RP) depende de um provedor de identidade (IdP) para fornecer ao usuário uma conta sem exigir um novo nome de usuário e senha.
O FedCM é uma API criada especificamente para permitir que o navegador entenda o contexto em que o RP e o IdP trocam informações, informem o usuário sobre as informações e os níveis de privilégio compartilhados e evitem abusos não intencionais.
Atualizações
Há algumas atualizações na implementação do FedCM do Chrome:
- Para o endpoint de declaração de ID, os IdPs precisam
verificar o cabeçalho
Origin
(em vez do cabeçalhoReferer
) para saber se o valor corresponde à origem do ID do cliente. - Uma nova flag do Chrome
chrome://flags/#fedcm-without-third-party-cookies
foi adicionada. Com essa flag, é possível testar a funcionalidade do FedCM no Chrome bloqueando cookies de terceiros.
Para conferir todas as atualizações anteriores da API, consulte Atualizações da API Federated Credential Management.
A versão mais recente do FedCM inclui um novo recurso de re-autenticação automática, que permite a re-autenticação automática de usuários quando eles retornam após a autenticação inicial usando o FedCM. A reautorização automática está disponível como um teste de origem a partir do Chrome 112.
Reautenticação automática
No momento, depois que um usuário cria uma conta federada em um RP com um IdP pela FedCM, na próxima vez que ele visitar o site, será necessário seguir as mesmas etapas na interface do usuário. Ou seja, eles precisam confirmar e fazer a autenticação novamente de forma explícita para prosseguir com o fluxo de login. Como um dos principais objetivos do FedCM é evitar o rastreamento oculto, essa experiência do usuário (UX) faz sentido antes que o usuário crie a conta federada, mas se torna desnecessária e complicada depois que o usuário a utiliza uma vez. Depois que o usuário concede a permissão para permitir a comunicação entre o RP e o IdP, não há benefício de privacidade ou segurança para aplicar outra confirmação explícita do usuário para algo que ele já tenha reconhecido anteriormente. Por isso, o Chrome está lançando uma UX mais simplificada que os RPs podem escolher para os usuários recorrentes.
A recertificação automática do FedCM ("recertificação automática" abreviada) autentica os usuários automaticamente (quando os RPs ativam a opção) quando eles retornam após a autenticação inicial usando o FedCM. "A autenticação inicial" significa que o usuário cria uma conta ou faz login no site do RP tocando no botão Continuar como... na caixa de diálogo de login do FedCM pela primeira vez na mesma instância do navegador.

O RP pode solicitar a reautorização automática chamando navigator.credentials.get()
com autoReauthn: true
.
const cred = await navigator.credentials.get({
identity: {
providers: [{
configURL: "https://idp.example/fedcm.json",
clientId: "1234",
}],
// NOTE: We are exploring different API options to expose this
// functionality here:
// https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
// You should expect that, as a result of the origin trial, we'll
// learn more from developers and browser vendors what works best here.
autoReauthn: true, // default to false
},
});
Com essa chamada, a reautorização automática acontece nas seguintes condições:
- O FedCM está disponível para uso. Por exemplo, o usuário não desativou o FedCM globalmente ou para o RP.
- O usuário usou apenas uma conta da FedCM para fazer login no site neste navegador.
- O usuário fez login no IdP com essa conta.
- A reautorização automática não aconteceu nos últimos 10 minutos.
Quando as condições acima são atendidas, uma tentativa de autenticação automática do
usuário é iniciada assim que o navigator.credentials.get()
do FedCM é invocado.
Faça um teste
É possível testar a reautorização automática do FedCM localmente ativando uma flag
do Chrome chrome://flags#fedcm-auto-re-authn
no
Chrome 112 ou mais recente.
Para fins de teste, você pode redefinir o período de silêncio de 10 minutos removendo os dados do navegador.
- Navegue para
chrome://history
. - Na caixa de histórico de pesquisa, digite a origem do RP.
- Clique no ícone de três pontos ⋮ e selecione Remover do histórico.
- Reinicie o Chrome.
Participar do teste de origem
Também é possível ativar o recurso no seu site participando do teste de origem de terceiros disponível no Chrome 112 até o Chrome 114.
Os testes de origem permitem testar novos recursos e fornecer feedback sobre a usabilidade, praticidade e eficácia deles para a comunidade de padrões da Web. Para mais informações, consulte o Guia de testes de origem para desenvolvedores da Web. Para se inscrever nesse ou em outro teste de origem, acesse a página de registro.
Para registrar a origem de terceiros teste e ative o recurso em terceiros:
- Acesse a página de registro de testes de origem.
- Clique no botão Register e preencha o formulário para solicitar um token.
- Insira a origem de exibição como Origem da Web.
- Verifique Correspondência de terceiros para injetar o token com JavaScript em outras origens.
- Clique em Enviar.
- Incorporar o token emitido em um terceiro.
Para incorporar o token a um terceiro, adicione o seguinte código ao seu JavaScript ou SDK disponibilizado pela origem do site registrado.
const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);
Substitua TOKEN_GOES_HERE
pelo seu próprio token.
Engajamento e compartilhamento de feedback
Se você tiver feedback ou encontrar algum problema durante o teste, compartilhe em crbug.com no componente Blink>Identity>FedCM.