Aggiornamenti dell'API Federated Credential Management

L'API Federated Credential Management viene spedita in Chrome 108, ma si prevede che continui a evolversi. Non sono previste modifiche che provocano errori.

A chi sono destinati questi aggiornamenti?

Questi aggiornamenti sono utili se:

  • Sei un IdP che utilizza l'API Federated Credential Management.
  • Sei un IdP o un RP e ti interessa estendere l'API al tuo caso d'uso, ad esempio se stai osservando o partecipando alle dibattiti sul repository FedID CG e vuoi comprendere le modifiche apportate all'API.
  • Sei un fornitore di browser e vuoi recuperare lo stato di implementazione dell'API.

Se non hai mai utilizzato questa API o non l'hai ancora provata, leggi l'introduzione all'API Federated Credential Management.

Log delle modifiche

Per restare al passo con le modifiche all'API FedCM, iscriviti alla nostra newsletter.

Chrome 125 (aprile 2024)

Chrome 123 (febbraio 2024)

  • Aggiunto il supporto per l'API Domain Hint. L'API Domain Hint consente alle RP di specificare una proprietà domainHint in una chiamata API FedCM in modo da mostrare solo gli account corrispondenti per l'utente.

Chrome 122 (gennaio 2024)

  • Aggiunto il supporto per l'API Disconnetti. L'API Disconnetti consente alle RP di disconnettere i propri utenti dall'account dell'IdP senza fare affidamento su cookie di terze parti.
  • Questo controllo /.well-known/web-identity viene ignorato quando la parte soggetta a limitazioni e l'IdP sono dello stesso sito.
  • Ora le sottorisorse possono impostare uno stato di accesso per lo stesso sito.

Chrome 121 (dicembre 2023)

  • Condizione rilassata per l'attivazione della riautenticazione automatica FedCM:
    • La funzionalità di riautenticazione automatica in FedCM viene attivata solo quando l'utente torna. Ciò significa che l'utente deve accedere alla parte soggetta a limitazioni utilizzando FedCM una volta su ogni istanza del browser prima che possa essere attivata la nuova autorizzazione automatica. Questa condizione è stata inizialmente introdotta per ridurre il rischio di tracker che fingono di essere un provider di identità (IdP) e inducono con l'inganno il browser ad autenticare automaticamente un utente a sua insaputa o senza il suo consenso. Tuttavia, questo design non può garantire il vantaggio in termini di privacy se il tracker ha accesso a cookie di terze parti nel contesto della parte soggetta a limitazioni. FedCM fornisce solo un sottoinsieme delle funzionalità possibili tramite i cookie di terze parti; pertanto, se il tracker ha già accesso a cookie di terze parti nel contesto RP, l'accesso a FedCM non presenta ulteriori rischi per la privacy.
      Poiché esistono utilizzi legittimi di cookie di terze parti e allentare la condizione migliorerebbe l'esperienza utente, questo comportamento cambia rispetto a Chrome 121. Abbiamo deciso di allentare la limitazione della condizione per trattare un utente come di ritorno: se all'IdP sono disponibili cookie di terze parti nel contesto della parte soggetta a limitazioni, Chrome considera attendibile la dichiarazione dell'IdP sullo stato dell'account dell'utente specificato tramite l'elenco approved_clients e, se applicabile, attiva la riautenticazione automatica. I cookie di terze parti possono essere disponibili tramite: impostazioni utente, criteri aziendali, euristica (Safari, Firefox, Chrome) e altre API per piattaforme web (ad esempio l'API Storage Access). Tieni presente che, se in futuro l'IdP perde l'accesso ai cookie di terze parti, se in precedenza un utente non ha mai concesso esplicitamente l'autorizzazione nell'interfaccia utente di FedCM (ad esempio facendo clic sul pulsante Continua come), verrà comunque considerato come un nuovo utente.
      Non sono richieste azioni da parte degli sviluppatori. Tieni presente che il flusso di riautenticazione automatica potrebbe essere attivato maggiormente con questa modifica se l'IdP ha accesso ai cookie di terze parti e afferma che l'utente ha creato un account nella parte soggetta a limitazioni in passato.

Chrome 120 (novembre 2023)

  • Aggiunto il supporto per le seguenti tre funzionalità in Chrome 120:
    • API Login Status: l'API Login Status è un meccanismo in cui un sito web, in particolare un IdP, informa il browser dello stato di accesso dell'utente. Con questa API, il browser può ridurre le richieste non necessarie all'IdP e mitigare i potenziali attacchi di tempistica. L'API Login Status è un requisito per FedCM. Con questa modifica, il flag chrome://flags/#fedcm-without-third-party-cookies non è più obbligatorio per abilitare FedCM quando i cookie di terze parti sono bloccati.
    • API Error: l'API Error avvisa l'utente mostrando una UI del browser con le informazioni sull'errore fornite dall'IdP.
    • API Auto-Selected Flag: l'API Auto-Selected Flag indica se un'autorizzazione utente esplicita è stata acquisita toccando il pulsante Continua come sia con l'IdP sia con la RP, ogni volta che si è verificata una nuova autorizzazione automatica o si è verificata una mediazione esplicita. La condivisione avviene solo dopo che è stata concessa l'autorizzazione dell'utente per le comunicazioni tra IdP e RP.

Chrome 117 (settembre 2023)

Chrome 116 (agosto 2023)

  • Aggiunto il supporto per le seguenti tre funzionalità in Chrome 116:
    • API Login Hint: specifica un account utente preferito a cui eseguire l'accesso.
    • API User Info: recupera le informazioni dell'utente di ritorno in modo che il provider di identità (IdP) possa visualizzare un pulsante di accesso personalizzato all'interno di un iframe.
    • API RP Context: usa un titolo diverso da "Accedi" nella finestra di dialogo FedCM.
  • La prova dell'origine per l'API Sign-In Status dell'IdP è disponibile. Scopri di più in Aggiornamenti FedCM: API IdP Sign-In Status, suggerimento di accesso e altro.

Chrome 115 (giugno 2023)

  • Aggiunto il supporto per la riautenticazione automatica, che consente agli utenti di riautenticarsi automaticamente quando tornano dopo l'autenticazione iniziale mediante FedCM. Questo migliora l'esperienza utente e consente una riautenticazione più semplice alla RP dopo il consenso iniziale. Scopri di più sulla riautenticazione automatica FedCM.

Chrome 110 (febbraio 2023)

  • Per l'endpoint dell'asserzione dell'ID, gli IdP devono controllare l'intestazione Origin (anziché l'intestazione Referer) per verificare se il valore corrisponde all'origine dell'ID client.
  • È ora disponibile il supporto per iframe multiorigine per FedCM. L'incorporamento deve specificare il Permissions-Policy identity-credentials-get per consentire l'API FedCM nell'iframe multiorigine incorporato. Puoi vedere un esempio di iframe multiorigine.
  • È stato aggiunto un nuovo flag di Chrome chrome://flags/#fedcm-without-third-party-cookies. Con questo flag puoi testare la funzionalità FedCM in Chrome bloccando i cookie di terze parti. Scopri di più nella documentazione di FedCM.

Chrome 108 (ottobre 2022)

  • "manifest di primo livello" ora si chiama "file ben noto" nel documento. Non sono necessarie modifiche all'implementazione.
  • Il "manifest dell'IdP" ora si chiama "file di configurazione" nel documento. Non sono necessarie modifiche all'implementazione.
  • Il parametro id_token_endpoint nel "file di configurazione" viene rinominato in id_assertion_endpoint.
  • Le richieste all'IdP ora includono un'intestazione Sec-Fetch-Dest: webidentity anziché un'intestazione Sec-FedCM-CSRF: ?1.

Chrome 105 (agosto 2022)

  • Sono state aggiunte al documento importanti informazioni di sicurezza. Il provider di identità (IdP) deve verificare se l'intestazione Referer corrisponde all'origine della parte soggetta a limitazioni registrata in precedenza sull'endpoint del token ID.
  • Il file manifest di primo livello viene rinominato da /.well-known/fedcm.json a /.well-known/web-identity e l'URL specificato in provider_urls deve includere il nome del file.
  • I metodi login(), logout() e revoke() nelle istanze FederatedCredential non sono più disponibili.
  • L'API Federated Credential Management ora utilizza un nuovo tipo IdentityCredential anziché FederatedCredential. Questa funzionalità può essere utilizzata per il rilevamento delle funzionalità, ma per il resto è una modifica ampiamente invisibile.
  • Sposta la funzionalità di accesso da una combinazione di navigator.credentials.get() e FederatedCredential.prototype.login() a navigator.credentials.get().
  • L'endpoint di revoca nel manifest non è più attivo.
  • Utilizza un campo identity anziché un campo federated per le chiamate navigator.credentials.get().
  • url ora è configURL e deve essere l'URL completo del file JSON manifest anziché il percorso di una chiamata navigator.credentials.get().
  • nonce ora è un parametro facoltativo per navigator.credentials.get().
  • hint non è più disponibile come opzione per navigator.credentials.get().
const credential = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: 'https://idp.example/anything.json',
      clientId: '********',
      nonce: '******'
    }]
  }
});
const { token } = credential;

Chrome 104 (giugno 2022)

Chrome 103 (maggio 2022)

  • Supporta gli ambienti desktop.
  • Supporta le impostazioni per singola parte soggetta a limitazioni su computer.
  • L'endpoint dei metadati del client ora è facoltativo. In questo endpoint, anche l'URL delle norme sulla privacy è facoltativo.
  • È stato aggiunto un avviso sull'utilizzo di CSP connect-src nel documento.

Risorse