Od wersji Chrome 128 interfejs Multi-IdP API rozpoczyna testowanie origin na komputerach, a interfejsy Button Mode API i Continuation Bundle – na urządzeniach z Androidem. Dzięki funkcji Multi IdP deweloperzy mogą określić tablicę wielu obsługiwanych dostawców tożsamości w jednym wywołaniu get()
. Interfejs Button Mode API dodaje nowy interfejs. Dzięki interfejsowi Button Mode API dostawcy tożsamości mogą używać interfejsu FedCM API nawet wtedy, gdy ich użytkownicy nie mają aktywnych sesji dostawcy tożsamości po wywołaniu interfejsu API. Pakiet Continuation składa się z interfejsów Continuation API i Parameters API, które umożliwiają korzystanie z procesu autoryzacji OAuth z użyciem okna dialogowego z uprawnieniami IdP. Pakiet obejmuje też inne zmiany, takie jak interfejs Fields API, Multiple configURL
i etykiety kont niestandardowych.
Okres próbny punktu początkowego: interfejs API wielu dostawców tożsamości
Ta funkcja pozwala użytkownikom wybrać konto z zestawu obsługiwanych dostawców tożsamości, a dostawcy usług rejestracji i logowania mogą korzystać z wyższych wskaźników logowania i rejestracji. Jeśli użytkownik jest zalogowany w kilku dostawcach tożsamości, zostanie poproszony o zalogowanie się w usługach dostawcy tożsamości przy użyciu jednego z nich.
Priorytety dostawców tożsamości są ustalane na podstawie istniejących kont użytkowników i powiązanych z nimi sygnatur czasowych.
- Jeśli użytkownik logował się wcześniej w usłudze RP za pomocą konkretnego dostawcy tożsamości (czyli ma „powracające konto”), dostawcy tożsamości będą wyświetlane jako pierwsze.
- W przypadku powracających kont dostawcy tożsamości są sortowani według sygnatury czasowej ostatniego użycia, a na szczycie listy znajduje się ostatnio używany dostawca tożsamości. W niektórych przypadkach Chrome może nie mieć danych z nazwą czasu dla powracającego konta. Prawdopodobnie dlatego, że użytkownik zalogował się przed wdrożeniem w FedCM dzienników z datą i godziną. Te konta są wymienione poniżej tych, które mają sygnatury czasowe.
- Jeśli użytkownik nie ma żadnych powracających kont w żadnym dostawcy tożsamości, obowiązuje kolejność podana przez RP.
FedCM umożliwia automatyczne ponowne uwierzytelnianie, jeśli deweloper tego zażąda i jeśli jest tylko jedno powracające konto. W przypadku dostawcy tożsamości Multi IdP, jeśli istnieją konta powracające dla wielu dostawców tożsamości, użytkownik nie zostanie automatycznie ponownie uwierzytelniony. Posiadanie konta powracającego jest konieczne w przypadku automatycznego ponownego uwierzytelniania. Przeglądarka rozpocznie automatyczne ponowne uwierzytelnianie tylko wtedy, gdy rozpozna konto. Oznacza to, że użytkownik musiał wcześniej korzystać z FedCM na tym konkretnym koncie w tej grupie objętej ograniczeniami.
Jeśli stan logowania użytkownika jest ustawiony na wylogowany u dostawcy tożsamości, wywołanie FedCM nie powoduje pobierania kont dla tego dostawcy. Podobnie, jeśli użytkownik zostanie wylogowany u wszystkich dostępnych dostawców tożsamości, prośba o zalogowanie się w FedCM nie będzie wyświetlana automatycznie w trybie widżetu.
Jeśli stan logowania zapisany w przeglądarce dla dostawcy tożsamości wskazuje, że użytkownik jest zalogowany, ale żądanie pobierania nie zwraca żadnych kont dla tego dostawcy (np. gdy sesja użytkownika wygasła, ale stan logowania nie został jeszcze zaktualizowany przez przeglądarkę), dla tego dostawcy tożsamości wyświetlane jest interfejs niezgodności, który sugeruje użytkownikowi zalogowanie się za pomocą tego dostawcy.
Więcej informacji o stanie logowania znajdziesz w dokumentacji. Więcej informacji o wdrożeniu znajdziesz w przewodniku dla programistów.
Testowanie origin: interfejs Multi IdP API
Możesz wypróbować interfejs Multi IdP API jako użytkownik w demonstalnej grupie objętej ograniczeniami lub jako deweloper korzystający z Chrome 128 lub nowszej wersji.
Wypróbuj jako użytkownik
Wypróbuj tę funkcję jako użytkownik. Sprawdź, czy:
- Chrome nie jest skonfigurowany tak, aby blokować prośby o logowanie się w usłudze innej firmy na stronie:
chrome://settings/content/federatedIdentityApi
. - Obecnie korzystasz z kilku demonstracyjnych dostawców tożsamości. Postępuj zgodnie z instrukcjami na stronie demonstracyjnej.
Aby wypróbować usługę Multi-IdP w witrynach, których pochodzenie nie jest zarejestrowane w ramach wersji próbnej pochodzenia, musisz włączyć flagę funkcji w sekcji chrome://flags/#fedcm-multi-idp
.
Wypróbuj jako deweloper
Jeśli dostawca logowania ma wbudowany pakiet SDK JavaScript w aplikacji RP (zalecane), może on zaimplementować wywołanie navigator.credentials.get()
, aby umożliwić korzystanie z wielu dostawców tożsamości, a deweloperzy aplikacji RP nie muszą zmieniać kodu. W przeciwnym razie strona objęta ograniczeniami musi samodzielnie wywoływać interfejs FedCM API.
Aby przetestować usługę Multi IdP na RP, określ tablicę obsługiwanych dostawców w ten sposób:
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);
}
Atrybut configURL
w wynikowym obiekcie przechowuje adres URL pliku konfiguracji dostawcy tożsamości, u którego użytkownik się uwierzytelnił. RP może określić sposób postępowania z uzyskanym token
, ponieważ różni się on w zależności od dostawcy tożsamości.
Weź udział w testowaniu origin
Wersje próbne origin pozwalają testować nowe funkcje i przesyłać opinie na temat ich przydatności, praktyczności i skuteczności. Więcej informacji znajdziesz w artykule o pierwszych krokach z testowaniem origin.
Aby wypróbować funkcję wielu dostawców tożsamości, zarejestruj się w testach origin Chrome 128.
Aby wypróbować wielu dostawców tożsamości, RP może zarejestrować swoje źródło i uruchomić własne narzędzie do testowania origin. Dostawca tożsamości może też zarejestrować się w celu skorzystania z testu źródła zewnętrznego i udostępnić funkcję wielu dostawców tożsamości dla wszystkich swoich RP przy użyciu pakietów SDK JavaScript.
Aby wziąć udział w testowaniu origin:
- Otwórz stronę rejestracji wersji próbnej interfejsu Multi IdP API.
- Aby poprosić o token, kliknij przycisk Zarejestruj się i wypełnij formularz.
- Aby zarejestrować się w ramach okresu próbnego w przypadku punktu początkowego zewnętrznego, w polu „Punkt początkowy w internecie” wpisz punkt początkowy zewnętrzny. W przypadku testu pochodzenia od zewnętrznego dostawcy wpisz pochodzenie pakietu SDK JavaScript IdP i zaznacz pole „Dopasowywanie do zewnętrznego dostawcy”.
- Kliknij Prześlij.
- Podaj wygenerowany token na stronie RP:
- W przypadku osób korzystających z własnych wersji testowania origin:
- Jako metatag w elemencie
<head>
:<meta http-equiv="origin-trial" content="TOKEN_GOES_HERE">
- Jako nagłówek HTTP:
Origin-Trial: TOKEN_GOES_HERE
- Jako metatag w elemencie
- Uczestnicy testów wersji próbnej pochodzącej z zewnętrznego źródła:
- Przez automatyczne podanie tokena.
- W przypadku osób korzystających z własnych wersji testowania origin:
Interfejs ButtonMode API w Chrome na Androida
Po początkowym okresie próbnym interfejsu Button Mode API w Chrome na Androida od wersji 128 rozpocznie się faza testowania origin interfejsu Button Mode API. Dzięki interfejsowi API w trybie przycisku dostawcy tożsamości mogą używać interfejsu FedCM API, nawet jeśli ich użytkownicy są wylogowani z dostawcy tożsamości w momencie wywołania interfejsu API. Proces logowania jest inicjowany gestem użytkownika, który lepiej odzwierciedla intencje użytkownika.
W Chrome 128 wprowadzono nową funkcję, która umożliwia dostawcom tożsamości dołączanie oficjalnej ikony logo dostawcy żądań bezpośrednio w odpowiedzi punktu końcowego metadanych klienta. Ulepsza interfejs na urządzeniach mobilnych w trybie przycisku.
Podobnie jak w przypadku marki dostawcy tożsamości w pliku konfiguracyjnym ikony RP można skonfigurować po stronie dostawcy tożsamości i zwrócić w odpowiedzi client_metadata_endpoint
w ten sposób:
"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
}]
Więcej informacji o obsługiwanych ikonach znajdziesz w dokumentacji dla deweloperów.
Jeśli użytkownik nie jest jeszcze zalogowany, FedCM poprosi go o zalogowanie się w usłudze dostawcy tożsamości za pomocą login_url
udostępnionego przez tego dostawcę na karcie niestandardowej w Chrome.
Jeśli użytkownik ponownie uwierzytelnia się przy użyciu powracającego konta, interfejs komunikatu nie będzie wyświetlany.
Aby zarejestrować się w ramach okresu próbnego, zapoznaj się z instrukcjami dotyczącymi interfejsu Button Mode API na komputerze. Jeśli korzystasz już z okresu próbnego origin na komputerze, ta funkcja będzie automatycznie dostępna w Chrome na Androida od wersji Chrome 128.
Pakiet interfejsu Continuation API w Chrome na Androida
Od wersji 128 Chrome pakiet Continuation API będzie dostępny w Chrome na Androida w ramach testowania origin, po wstępnej wersji próbnej na komputerach. Pakiet składa się z wielu funkcji FedCM, takich jak Continuation API, Parameters, Fields API, Wiele adresów configURL i Niestandardowe etykiety kont.
Interfejs Continuation API umożliwia wieloetapowe procesy logowania. Interfejs API parametrów umożliwia przekazywanie dodatkowych parametrów do dostawcy tożsamości. Interfejs Fields API umożliwia partnerowi rezerwacji wysyłanie żądań dotyczących konkretnych atrybutów konta w celu wyświetlenia interfejsu użytkownika do celów powiadomień w ramach FedCM. Dodatkowo Multiple configURL
obsługuje wiele plików konfiguracji dla dostawcy tożsamości, a etykiety kont umożliwiają dostawcom tożsamości dodawanie adnotacji do kont, aby dostawcy ról mogli je filtrować według tych etykiet.
Aby dowiedzieć się więcej o pakiecie interfejsu Continuation API, przeczytaj posta na blogu na temat pakietu interfejsu Continuation API na komputery. Aby zarejestrować się w bezpłatnym okresie próbnym, wykonaj te instrukcje. Jeśli korzystasz już z okresu próbnego origin na komputerze, nowe funkcje będą automatycznie dostępne w Chrome na Androida od wersji Chrome 128.
Angażuj odbiorców i dziel się opiniami
Jeśli chcesz podzielić się z nami swoją opinią lub napotkać jakieś problemy, możesz zgłosić problem. Będziemy aktualizować kanoniczny przewodnik dla deweloperów FedCM oraz gromadzone logi aktualizacji.