A partire da Chrome 128, l'API Multi-IdP sta avviando una prova dell'origine su computer, mentre l'API Button Mode e il pacchetto Continuation stanno avviando una prova dell'origine su Android. Con la funzionalità Multi IdP, gli sviluppatori possono specificare un array di più provider di identità supportati in una singola chiamata get()
. L'API Button Mode aggiunge una nuova UI. Con l'API Button Mode, i provider di identità possono utilizzare l'API FedCM anche se i loro utenti non hanno sessioni IdP attive al momento della chiamata all'API. Il bundle di continuazione è costituito dall'API Continuation e dall'API Parameters, che consentono un'esperienza simile al flusso di autorizzazione OAuth che coinvolge una finestra di dialogo di autorizzazione fornita dall'IDP. Il bundle include anche altre modifiche, come l'API Fields, più configURL
e le etichette account personalizzate.
Prova dell'origine: API Multi IdP
Questa funzionalità consente agli utenti di scegliere un account da un insieme di IdP supportati e le parti soggette a limitazioni traggono vantaggio da tariffe di accesso e registrazione più elevate. Se l'utente ha eseguito l'accesso con più IdP, gli verrà chiesto di accedere all'RP utilizzando uno degli IdP.
Le IdP vengono assegnate in base agli account esistenti dell'utente e ai relativi timestamp associati.
- Se l'utente ha già eseguito l'accesso all'RP con un IdP specifico (ad es. ha un "account di ritorno"), questi IdP verranno elencati per primi.
- All'interno degli account di ritorno, gli IdP vengono ulteriormente ordinati in base al timestamp del loro utilizzo più recente, con l'IdP utilizzato più di recente nella parte superiore dell'elenco. In alcuni casi, Chrome potrebbe non avere dati sui timestamp per un account di ritorno. Probabilmente, l'utente ha eseguito l'accesso prima dell'implementazione dei log timestamp in FedCM. Questi account sono elencati sotto quelli dotati di timestamp.
- Se l'utente non ha account di ritorno con nessun provider di identità, viene rispettato l'ordine fornito dall'RP.
FedCM consente la ri-autenticazione automatica se lo sviluppatore lo richiede e se esiste un singolo account di ritorno. Nel caso di più IdP, se esistono account di ritorno per più IdP, l'utente non verrà autenticato di nuovo automaticamente. Avere un account di ritorno è un requisito fondamentale per la riautenticazione automatica. Il browser avvierà l'autenticazione automatica solo dopo aver riconosciuto esplicitamente l'account. Ciò implica che l'utente deve aver utilizzato in precedenza FedCM con questo account specifico su questo RP.
Se lo stato di accesso dell'utente è impostato su disconnesso per un IdP, chiamando il FedCM non recupera gli account per quell'IdP. Analogamente, se lo stato dell'utente è "Ultima autenticazione: Accesso non effettuato" per tutti gli IdP disponibili, la richiesta di accesso a FedCM non viene mostrata automaticamente in modalità widget.
Se lo stato di accesso salvato nel browser per un IdP è stato eseguito, ma la richiesta di recupero non ha restituito account per questo IdP (ad esempio, se la sessione utente è scaduta, ma lo stato di accesso non è ancora stato aggiornato dal browser), viene visualizzata l'interfaccia utente relativa alla mancata corrispondenza per l'IdP, suggerendo all'utente di accedere con l'IdP che non corrisponde.
Per saperne di più sullo stato dell'accesso, consulta la documentazione. Per ulteriori dettagli sull'implementazione, consulta la guida per gli sviluppatori.
Prova dell'origine: API multi-IdP
Puoi provare l'API Multi IdP come utente nella RP demo o come sviluppatore utilizzando Chrome 128 o versioni successive.
Fai una prova come utente
Prova tu stesso come utente. Accertati che:
- Chrome non è configurato per bloccare le richieste di accesso di terze parti nella pagina:
chrome://settings/content/federatedIdentityApi
. - Hai eseguito l'accesso a più IdP demo. Segui le istruzioni nella pagina demo.
Tieni presente che per provare più IdP su siti la cui origine non è registrata per la prova dell'origine, devi abilitare il flag della funzionalità in chrome://flags/#fedcm-multi-idp
.
Provare come sviluppatore
Se un fornitore di servizi di accesso ha un SDK JavaScript incorporato nell'RP (opzione consigliata), la chiamata navigator.credentials.get()
per abilitare più IdP può essere implementata dal fornitore e gli sviluppatori dell'RP non devono modificare il codice. In caso contrario, la parte soggetta a limitazioni deve chiamare l'API FedCM autonomamente.
Per testare più IdP su una parte soggetta a limitazioni, specifica l'array di provider supportati come segue:
try {
const cred = await navigator.credentials.get({
identity: {
providers: [
{
configUrl: "https://idp1.example/foo.json", // first IdP
clientId: "123",
},
{
configUrl: "https://idp2.example/bar.json", // second IdP
clientId: "456",
}
]
}
});
const token = cred.token;
const currentConfigFileUrl = cred.configURL;
if (cred.configURL === 'https://idp1.example/foo.json') {
// handle the token for idp1.example
} else if (cred.configURL === 'https://idp2.example/bar.json') {
// handle the token for idp2.example
}
} catch (error) {
console.error("Error during credential retrieval:", error);
}
L'attributo configURL
all'interno dell'oggetto risultante memorizza l'URL del file di configurazione per l'IdP con cui l'utente si è autenticato. La parte soggetta a limitazioni può determinare come gestire il token
risultante in quanto differisce a seconda dell'IdP.
Partecipare alla prova dell'origine
Le prove dell'origine consentono di provare nuove funzionalità e fornire feedback sulla loro usabilità, pratica ed efficacia. Per ulteriori informazioni, consulta la guida introduttiva ai trial delle origini.
Puoi provare la funzionalità Multi IdP registrandoti alle prove dell'origine a partire da Chrome 128.
Per provare la funzionalità Multi IdP, un RP può registrare la propria origine ed eseguire una prova dell'origine proprietaria. È inoltre possibile che il provider di identità si registri per una prova dell'origine di terze parti e che la funzionalità Multi IdP sia disponibile per tutti i relativi RP che utilizzano SDK JavaScript.
Passaggi per partecipare alla prova dell'origine:
- Vai alla pagina di registrazione della prova dell'origine dell'API Multi IdP.
- Fai clic sul pulsante Registra e compila il modulo per richiedere un token.
- Per registrarti a una prova dell'origine proprietaria, inserisci l'origine della parte soggetta a limitazioni nel campo "Origine web". Per una prova dell'origine di terze parti, inserisci l'origine dell'SDK JavaScript dell'IdP e seleziona la casella "Corrispondenza di terze parti".
- Fai clic su Invia.
- Fornisci il token emesso nella pagina della parte soggetta a limitazioni:
- Per i partecipanti alla prova dell'origine proprietaria:
- Come meta tag in
<head>
:<meta http-equiv="origin-trial" content="TOKEN_GOES_HERE">
- Come intestazione HTTP:
Origin-Trial: TOKEN_GOES_HERE
- Come meta tag in
- Per i partecipanti alla prova dell'origine di terze parti:
- Fornendo un token in modo programmatico.
- Per i partecipanti alla prova dell'origine proprietaria:
API Button Mode per Chrome su Android
A partire dalla versione 128 di Chrome, la prova dell'origine dell'API Button Mode inizierà su Chrome su Android, al termine della prova iniziale su computer. Con l'API Button Mode, i provider di identità possono utilizzare l'API FedCM anche se i loro utenti sono disconnessi dall'IdP durante la chiamata API. Il flusso di accesso viene avviato da un gesto dell'utente, che riflette meglio l'intenzione dell'utente.
In Chrome 128, viene introdotta una nuova funzionalità che consente agli IdP di includere l'icona del logo ufficiale della parte soggetta a limitazioni direttamente nella risposta dell'endpoint dei metadati del client. In questo modo, l'interfaccia utente sui dispositivi mobili in modalità pulsante viene migliorata.
Analogamente al branding dell'IdP nel file di configurazione, le icone della parte soggetta a limitazioni possono essere configurate sul lato IdP e restituite nella risposta client_metadata_endpoint
come segue:
"privacy_policy_url": "https://rp.example/privacy_policy.html",
"terms_of_service_url": "https://rp.example/terms_of_service.html",
"icons": [{
"url": "https://idp.example/rp-icon.ico",
"size": 40
}]
Per scoprire di più sul supporto delle icone, consulta la documentazione per gli sviluppatori.
Se l'utente non ha ancora eseguito l'accesso, FedCM gli chiede di accedere all'IdP utilizzando il valore login_url
fornito dall'IdP mediante una scheda personalizzata di Chrome (CCT).
Se l'utente esegue nuovamente l'autenticazione con un account di ritorno, l'UI per l'informativa non verrà visualizzata.
Per registrarti alla prova dell'origine, consulta le istruzioni per l'API Modalità pulsante su computer. Se hai già effettuato la registrazione alla prova dell'origine su computer, la funzionalità sarà automaticamente disponibile per te su Chrome su Android a partire da Chrome 128.
Bundle dell'API Continuation per Chrome su Android
A partire dalla versione 128 di Chrome, il bundle dell'API Continuation sarà disponibile per Chrome su Android nell'ambito di una prova dell'origine, dopo la prova iniziale su computer. Il bundle è costituito da più funzionalità di FedCM, tra cui l'API Continuation, l'API Parameters, l'API Fields, più configURL e Etichette account personalizzate.
L'API Continuation abilita i flussi di accesso in più passaggi. L'API Parameters consente di passare parametri aggiuntivi all'IdP. L'API Fields consente all'RP di richiedere attributi dell'account specifici per l'interfaccia utente dell'informativa nella finestra di dialogo FedCM. Inoltre, più configURL
supportano più file di configurazione per un IdP e le etichette dell'account personalizzate consentono agli IdP di annotare gli account in modo che le parti soggette a limitazioni possano filtrarli in base a queste etichette.
Per scoprire di più sul bundle dell'API Continuation, consulta il post del blog sul bundle dell'API Continuation su computer. Per registrarti alla prova di origine, segui queste istruzioni. Se hai già eseguito la registrazione alla prova dell'origine su computer, le funzionalità saranno disponibili automaticamente su Chrome su Android a partire da Chrome 128.
Coinvolgere e condividere feedback
Se hai un feedback o riscontri un problema, puoi segnalare un problema. Continueremo ad aggiornare la guida canonica per gli sviluppatori di FedCM, oltre alla pagina dei log di aggiornamento.