A API Federated Credential Management é enviada no Chrome 108, mas é esperado que ela continue evoluindo. Não há alterações interruptivas planejadas.
Qual é o público dessas atualizações?
Estas atualizações são úteis se:
- Você é um IdP que usa a API Federated Credential Management.
- Você é um IdP ou RP e tem interesse em estender a API para que se adapte ao seu uso caso, por exemplo, você vem observando ou participando as discussões no repositório de CG da FedID e quer entender as alterações feitas na API.
- Você é um fornecedor de navegadores e quer acompanhar a implementação status da API.
Se você é iniciante nessa API ou ainda não a testou, leia a Introdução à API Federated Credential Management.
Registro de alterações
Para ficar por dentro das mudanças na API FedCM, confira nosso blog ou o Newsletter.
Chrome 125 (abril de 2024)
- Como a especificação atualizou o nome de "endpoints da lista de contas" para "contas" da Web", nossa documentação está alinhada de acordo.
- O teste de origem da APIButton Mode está disponível no Chrome 125 para computadores. Aprender mais sobre isso em atualizações do FedCM: teste de origem da API de modo de botão, CORS e SameSite (em inglês).
- O CORS é aplicado o endpoint de declaração de ID a partir do Chrome 125.
- O Chrome envia apenas cookies explicitamente marcados como
SameSite=None
para o ID endpoint de declaração e o endpoint das contas a partir de do Chrome 125.
Chrome 123 (fevereiro de 2024)
- Foi adicionado suporte à API Domain Hint. A dica de domínio
API permite que as partes interessadas
especificar uma propriedade
domainHint
em uma chamada da API FedCM para mostrar apenas as contas para o usuário.
Chrome 122 (janeiro de 2024)
- Adicionado suporte para a API Desconectar. A conexão API permite As partes interessadas precisam desconectar os usuários da conta do IdP sem depender de cookies de terceiros.
- Em verificação
/.well-known/web-identity
agora é ignorado quando a parte restrita e o IdP são do mesmo site. - Os sub-recursos agora podem definir um login no mesmo site status da conta.
Chrome 121 (dezembro de 2023)
- A condição de relaxamento para acionar a reautenticação automática do FedCM:
- O recurso de reautenticação automática na
O FedCM só é acionado quando o usuário está retornando. Isso significa que o usuário
precisa fazer login no RP usando o FedCM uma vez em cada instância do navegador,
antes que a reautenticação automática seja acionada. Essa condição foi inicialmente
foi lançado para diminuir o risco de rastreadores que fingem ser uma identidade
provedor de identidade (IdP) e enganar o navegador para que ele autentique um usuário novamente
sem o conhecimento ou o consentimento delas. No entanto, esse design não garante
o benefício de privacidade se o rastreador tiver acesso a cookies de terceiros no
Contexto da parte restrita. A FedCM oferece apenas um subconjunto dos recursos possíveis por meio da
cookies de terceiros. Portanto, se o rastreador já tiver acesso a
cookies no contexto da parte restrita, o acesso ao FedCM não exige privacidade
risco.
Como há usos legítimos de cookies de terceiros e relaxando os melhoraria a UX, esse comportamento vai mudar desde o Chrome 121. Decidimos flexibilizar a restrição da condição para tratar um usuário como Retorno: se cookies de terceiros estiverem disponíveis para o IdP na parte restrita contexto, o Chrome confiará na declaração do IdP sobre o status da conta do usuário especificado pela lista deapproved_clients
e acionar a reautenticação automática se aplicável. Cookies de terceiros podem estar disponíveis nas configurações do usuário, políticas empresariais, heurística (Safari, Firefox, Google Chrome). e outras APIs de plataforma da Web (como Storage Access API). Observação quando o IdP perder o acesso a cookies de terceiros no futuro, se um usuário nunca concedeu permissão explicitamente na interface do FedCM (por exemplo, clicando no botão Continuar como) antes, ainda são tratadas como novo usuário.
Nenhuma ação é necessária do desenvolvedor. O fluxo de reautenticação automática pode será acionado mais com essa mudança se o IdP tiver acesso a cookies de terceiros e alega que o usuário criou uma conta na parte restrita.
- O recurso de reautenticação automática na
O FedCM só é acionado quando o usuário está retornando. Isso significa que o usuário
precisa fazer login no RP usando o FedCM uma vez em cada instância do navegador,
antes que a reautenticação automática seja acionada. Essa condição foi inicialmente
foi lançado para diminuir o risco de rastreadores que fingem ser uma identidade
provedor de identidade (IdP) e enganar o navegador para que ele autentique um usuário novamente
sem o conhecimento ou o consentimento delas. No entanto, esse design não garante
o benefício de privacidade se o rastreador tiver acesso a cookies de terceiros no
Contexto da parte restrita. A FedCM oferece apenas um subconjunto dos recursos possíveis por meio da
cookies de terceiros. Portanto, se o rastreador já tiver acesso a
cookies no contexto da parte restrita, o acesso ao FedCM não exige privacidade
risco.
Chrome 120 (novembro de 2023)
- Foi adicionado suporte aos três recursos a seguir no Chrome 120:
- API de Status de Login: o Status de login
API é uma
mecanismo em que um site, especialmente um IdP, informa ao navegador que a interface do usuário
status de login. Com essa API, o navegador pode reduzir solicitações desnecessárias para
o IdP e mitigar possíveis ataques de temporização. A API Login Status é uma
para a FedCM.
Com essa mudança, a flag
chrome://flags/#fedcm-without-third-party-cookies
não é mais necessário para ativar o FedCM quando os cookies de terceiros são bloqueados. - API de erro: a imagem de erro API notifica o usuário mostrando uma interface do navegador com as informações de erro fornecidas pelo IdP.
- API de sinalização selecionada automaticamente: a sinalização selecionada automaticamente. API compartilha se uma permissão explícita do usuário foi adquirida ao tocar no Botão Continuar como com o IdP e a parte restrita sempre que houver reautenticação automática ou uma mediação explícita. O compartilhamento só ocorre depois que o usuário permissão concedida para a comunicação do IdP e da RP.
- API de Status de Login: o Status de login
API é uma
mecanismo em que um site, especialmente um IdP, informa ao navegador que a interface do usuário
status de login. Com essa API, o navegador pode reduzir solicitações desnecessárias para
o IdP e mitigar possíveis ataques de temporização. A API Login Status é uma
para a FedCM.
Com essa mudança, a flag
Chrome 117 (setembro de 2023)
- O teste de origem da API Idp Sign-In Status está disponível no Android a partir do Chrome 117. Saiba mais em Atualizações do FedCM: API IdP Sign-In Status, dica de login e mais.
Chrome 116 (agosto de 2023)
- Foi adicionado suporte aos três recursos a seguir no Chrome 116:
- API Login Hint: especifique uma conta de usuário preferencial para fazer login.
- API User Info: busque as informações do usuário recorrente para que o provedor de identidade (IdP) possa renderizar um botão de login personalizado em um iframe.
- API Context da RP: use um título diferente de "Fazer login". na caixa de diálogo do FedCM.
- O teste de origem da API Sign-In Status do IdP está disponível. Saiba mais em Atualizações do FedCM: API IdP Sign-In Status, dica de login e mais.
Chrome 115 (junho de 2023)
- Foi adicionado suporte à reautenticação automática. Com o FedCM, os usuários podem fazer isso automaticamente quando voltam após a autenticação inicial. Isso melhora a experiência do usuário e permite uma reautenticação mais simplificada à parte restrita após a autenticação inicial. Saiba mais sobre a reautenticação automática do FedCM.
Chrome 110 (fevereiro de 2023)
- No endpoint de declaração de ID, os IdPs precisam verificar o cabeçalho
Origin
(em vez doReferer
) para ver se o valor corresponde à origem do ID do cliente. - Agora o FedCM é compatível com iframe de origem cruzada. A
incorporador deve especificar
Permissions-Policy
identity-credentials-get
para permitir a API FedCM na origem cruzada incorporada. iframe. Confira um exemplo de o iframe de origem cruzada. - Uma nova sinalização do Chrome
chrome://flags/#fedcm-without-third-party-cookies
foi adicionada. Com essa sinalização, você pode testar a funcionalidade do FedCM no Chrome. bloqueando cookies de terceiros. Saiba mais na documentação do FedCM.
Chrome 108 (outubro de 2022)
- "manifesto de nível superior" agora é chamado de "arquivo conhecido", no documento. Não é necessário fazer mudanças na implementação.
- "manifesto do IdP" agora se chama "arquivo de configuração" no documento. Não alterações de implementação são obrigatórias.
- O
id_token_endpoint
no "arquivo de configuração" é renomeado comoid_assertion_endpoint
. - As solicitações ao IdP agora incluem um
Sec-Fetch-Dest: webidentity
em vez de um cabeçalhoSec-FedCM-CSRF: ?1
.
Chrome 105 (agosto de 2022)
- Informações de segurança importantes foram adicionadas ao documento. A identidade
provedor (IdP) precisa verificar se o cabeçalho
Referer
corresponde à origem a parte restrita registrada com antecedência o endpoint do token de ID. - O manifesto de nível superior foi renomeado de
/.well-known/fedcm.json
para/.well-known/web-identity
e o URL especificado emprovider_urls
devem incluem o nome do arquivo. - Métodos
login()
,logout()
erevoke()
emFederatedCredential
não estão mais disponíveis. - A API Federated Credential Management agora usa um novo tipo
IdentityCredential
em vez deFederatedCredential
. Isso pode ser usado para detecção de recursos, mas é uma alteração bastante invisível. - Mover a funcionalidade de login de uma combinação de
navigator.credentials.get()
eFederatedCredential.prototype.login()
paranavigator.credentials.get()
. - O endpoint de revogação no manifesto não está mais em vigor.
- Use um campo
identity
em vez defederated
para chamadas denavigator.credentials.get()
. url
agora éconfigURL
e deve ser o URL completo para o arquivo JSON de manifesto em vez do caminho para uma chamadanavigator.credentials.get()
.nonce
agora é um parâmetro opcional paranavigator.credentials.get()
.hint
não está mais disponível como opção paranavigator.credentials.get()
.
const credential = await navigator.credentials.get({
identity: {
providers: [{
configURL: 'https://idp.example/anything.json',
clientId: '********',
nonce: '******'
}]
}
});
const { token } = credential;
Chrome 104 (junho de 2022)
- O parâmetro
consent_acquired
enviado ao endpoint do token de ID agora estádisclosure_text_shown
. O valor não foi alterado. - ícones de branding o manifesto do IdP deixaram de oferecer suporte a imagens SVG, mas não precisam mais ser permitidos pelo RP Política de Segurança de Conteúdo.
Chrome 103 (maio de 2022)
- Compatível com ambientes de desktop.
- Compatível com configurações por RP no computador.
- A endpoint de metadados do cliente agora é opcional. Neste endpoint, o URL da Política de Privacidade também é opcional.
- Adicionou uma ressalva sobre o uso da CSP
connect-src
no documento.