Interfejs Federated Credential Management API jest udostępniany w Chrome 108, ale jego rozwój powinien być kontynuowany. Nie są planowane żadne zmiany powodujące niezgodność.
Dla kogo są przeznaczone te aktualizacje?
Te aktualizacje są dla Ciebie, jeśli:
- Jesteś dostawcą tożsamości i korzystasz z interfejsu Federated Credential Management API.
- Jesteś dostawcą tożsamości lub dostawcą usług objętych ograniczeniami i chcesz rozszerzyć możliwości interfejsu API, aby dostosować go do swoich potrzeb – np. obserwowałeś(-aś) dyskusje dotyczące repozytorium FedID CG lub bierzesz w nich udział i chcesz zrozumieć zmiany wprowadzone w interfejsie API.
- Jesteś dostawcą przeglądarki i chcesz sprawdzić stan implementacji interfejsu API.
Jeśli jesteś nowym użytkownikiem tego interfejsu API lub jeszcze z nim nie eksperymentowałeś, przeczytaj wprowadzenie do interfejsu Federated Credential Management API.
Historia zmian
Aby być na bieżąco ze zmianami w interfejsie FedCM API, zaglądaj na naszego bloga i zajrzyj do newslettera.
Chrome 125 (kwiecień 2024 r.)
- Specyfikacja zmieniła nazwę „punktów końcowych listy kont” na „punkty końcowe kont”, więc nasze dokumenty są odpowiednio dostosowane.
- Testowanie origin interfejsu Button Mode API jest dostępne w Chrome na komputery w wersji 125. Więcej informacji na ten temat znajdziesz w aktualizacjach FedCM: testowanie origin interfejsu Button Mode API, CORS i SameSite.
- Od wersji Chrome 125 funkcja CORS jest egzekwowana w punkcie końcowym potwierdzenia identyfikatora.
- Od Chrome 125 do punktu końcowego potwierdzenia identyfikatora i do punktu końcowego konta Chrome będzie wysyłać tylko pliki cookie oznaczone jako
SameSite=None
.
Chrome 123 (luty 2024 r.)
- Dodaliśmy obsługę interfejsu Domain Hint API. Interfejs Domain Hint API umożliwia stronom RP określenie usługi
domainHint
w wywołaniu interfejsu FedCM API, aby wyświetlić tylko konta pasujące do użytkownika.
Chrome 122 (styczeń 2024 r.)
- Dodaliśmy obsługę interfejsu Disable API. Interfejs Rozłącz API umożliwia stronom RP odłączania użytkowników od konta dostawcy tożsamości bez używania plików cookie innych firm.
- Sprawdzanie
/.well-known/web-identity
jest teraz pomijane, gdy RP i dostawca tożsamości znajdują się w tej samej witrynie. - Zasoby podrzędne mogą teraz ustawiać stan logowania w tej samej witrynie.
Chrome 121 (grudzień 2023 r.)
- Bezpretensjonalny warunek aktywowania automatycznego ponownego uwierzytelniania FedCM:
- Funkcja automatycznego ponownego uwierzytelniania w FedCM jest aktywowana tylko wtedy, gdy użytkownik powraca. Oznacza to, że w każdej instancji przeglądarki użytkownik musi zalogować się w strefie objętej ograniczeniami dostępu przy użyciu FedCM, zanim zostanie uruchomione automatyczne ponowne uwierzytelnianie. Ten warunek został początkowo wprowadzony, aby zminimalizować ryzyko, że urządzenia śledzące udają dostawcę tożsamości i nakłaniają przeglądarkę do automatycznego ponownego uwierzytelnienia użytkownika bez jego wiedzy lub zgody. Taki sposób działania nie może jednak zagwarantować korzyści dla prywatności, jeśli narzędzie do śledzenia ma dostęp do plików cookie innych firm w kontekście RP. FedCM zapewnia tylko część możliwości możliwych dzięki plikom cookie innych firm. Jeśli więc narzędzie ma już dostęp do tych plików w kontekście strony objętej ograniczeniami, dostęp do FedCM nie stwarza dodatkowego ryzyka dla prywatności.
Istnieją uzasadnione przypadki użycia plików cookie innych firm, a złagodzenie warunków może poprawić wygodę użytkowników, więc to działanie zmienia się w porównaniu z Chrome 121. Zdecydowaliśmy się złagodzić ograniczenie, tak aby użytkownik był traktowany jako powracający: jeśli dostawca tożsamości ma dostęp do plików cookie innych firm w kontekście dostawcy tożsamości, Chrome zaufa twierdzeniu dostawcy tożsamości o stanie konta użytkownika określonym na liścieapproved_clients
i w razie potrzeby aktywuje automatyczne ponowne uwierzytelnianie. Pliki cookie innych firm mogą być dostępne w ramach ustawień użytkownika, zasad firmy, heurystyki (Safari, Firefox, Chrome) i innych interfejsów API platform internetowych (np. Storage Access API). Pamiętaj, że jeśli w przyszłości dostawca tożsamości straci dostęp do plików cookie innych firm, a użytkownik nigdy wcześniej nie przyznał uprawnień w interfejsie FedCM (np. klikając przycisk Kontynuuj jako), nadal będzie traktowany jako nowy użytkownik.
Deweloper nie musi podejmować żadnych działań. Pamiętaj, że po tej zmianie proces automatycznego ponownego uwierzytelniania może być aktywowany częściej, jeśli dostawca tożsamości ma dostęp do plików cookie innych firm i twierdzi, że użytkownik utworzył konto w RPA w przeszłości.
- Funkcja automatycznego ponownego uwierzytelniania w FedCM jest aktywowana tylko wtedy, gdy użytkownik powraca. Oznacza to, że w każdej instancji przeglądarki użytkownik musi zalogować się w strefie objętej ograniczeniami dostępu przy użyciu FedCM, zanim zostanie uruchomione automatyczne ponowne uwierzytelnianie. Ten warunek został początkowo wprowadzony, aby zminimalizować ryzyko, że urządzenia śledzące udają dostawcę tożsamości i nakłaniają przeglądarkę do automatycznego ponownego uwierzytelnienia użytkownika bez jego wiedzy lub zgody. Taki sposób działania nie może jednak zagwarantować korzyści dla prywatności, jeśli narzędzie do śledzenia ma dostęp do plików cookie innych firm w kontekście RP. FedCM zapewnia tylko część możliwości możliwych dzięki plikom cookie innych firm. Jeśli więc narzędzie ma już dostęp do tych plików w kontekście strony objętej ograniczeniami, dostęp do FedCM nie stwarza dodatkowego ryzyka dla prywatności.
Chrome 120 (listopad 2023 r.)
- W Chrome 120 dodaliśmy obsługę tych 3 funkcji:
- Interfejs API stanu logowania: interfejs API stanu logowania to mechanizm, w ramach którego witryna, a zwłaszcza dostawca tożsamości, informuje przeglądarkę o stanie logowania użytkownika. Dzięki temu interfejsowi przeglądarka może ograniczyć liczbę niepotrzebnych żądań wysyłanych do dostawcy tożsamości i łagodzić potencjalne ataki czasowe. Interfejs Login Status API
jest wymagany przez FedCM.
Po tej zmianie flaga
chrome://flags/#fedcm-without-third-party-cookies
nie musi już włączać FedCM w przypadku blokowania plików cookie innych firm. - Error API: Error API powiadamia użytkownika, wyświetlając interfejs przeglądarki z informacjami o błędach podanymi przez dostawcę tożsamości.
- Auto-Selected Flag API: interfejs Auto-Selected Flag API informuje o tym, czy zaistnieje automatyczne ponowne uwierzytelnienie lub jawna zapośredniczenie, gdy kliknięcie przycisku Kontynuuj jako u dostawcy tożsamości i RP. Udostępnianie następuje dopiero po przyznaniu użytkownikowi uprawnień do obsługi komunikacji dostawcy tożsamości i RP.
- Interfejs API stanu logowania: interfejs API stanu logowania to mechanizm, w ramach którego witryna, a zwłaszcza dostawca tożsamości, informuje przeglądarkę o stanie logowania użytkownika. Dzięki temu interfejsowi przeglądarka może ograniczyć liczbę niepotrzebnych żądań wysyłanych do dostawcy tożsamości i łagodzić potencjalne ataki czasowe. Interfejs Login Status API
jest wymagany przez FedCM.
Po tej zmianie flaga
Chrome 117 (wrzesień 2023 r.)
- Testowanie origin interfejsu Idp Sign-In Status API jest dostępne na urządzeniach z Androidem od Chrome 117. Więcej informacji znajdziesz w artykule Aktualizacje w FedCM: interfejs API stanu logowania dostawcy tożsamości, podpowiedź logowania i inne.
Chrome 116 (sierpień 2023 r.)
- W Chrome 116 dodaliśmy obsługę tych 3 funkcji:
- Login Hint API: określ preferowane konto użytkownika, na które chcesz się zalogować.
- User Info API: pobiera informacje o powracającym użytkowniku, aby dostawca tożsamości mógł wyrenderować spersonalizowany przycisk logowania w elemencie iframe.
- RP Context API: w oknie FedCM użyj innego tytułu niż „Zaloguj się”.
- Dostępna jest wersja próbna interfejsu API stanu logowania dostawcy tożsamości. Więcej informacji znajdziesz w artykule Aktualizacje w FedCM: interfejs API stanu logowania dostawcy tożsamości, podpowiedź logowania i inne.
Chrome 115 (czerwiec 2023 r.)
- Dodaliśmy obsługę automatycznego ponownego uwierzytelniania, która umożliwia użytkownikom automatyczne ponowne uwierzytelnianie po powrocie po początkowym uwierzytelnieniu przy użyciu FedCM. Poprawia to wygodę użytkowników i ułatwia ponowne uwierzytelnianie w RPA po wstępnym uwierzytelnieniu. Dowiedz się więcej o automatycznym ponownym uwierzytelnianiu w FedCM.
Chrome 110 (luty 2023 r.)
- W przypadku punktu końcowego potwierdzenia identyfikatora dostawcy tożsamości muszą sprawdzić nagłówek
Origin
(zamiast nagłówkaReferer
), aby zobaczyć, czy wartość jest zgodna z początkiem identyfikatora klienta. - Obsługa elementów iframe z innych domen w FedCM jest już dostępna. Aby umożliwić korzystanie z interfejsu FedCM API w umieszczonym elemencie iframe z innych domen, witryna musi określić zasadę Permissions-Policy
identity-credentials-get
. Zobacz przykład elementu iframe z innych domen. - Dodano nową flagę Chrome
chrome://flags/#fedcm-without-third-party-cookies
. Dzięki temu możesz przetestować działanie FedCM w Chrome, blokując pliki cookie innych firm. Więcej informacji znajdziesz w dokumentacji FedCM.
Chrome 108 (październik 2022 r.)
- Plik manifestu najwyższego poziomu jest teraz w dokumencie nazywany „dobrze znanym plikiem”. Nie musisz wprowadzać żadnych zmian w implementacji.
- „Plik manifestu dostawcy tożsamości” to teraz „plik konfiguracyjny” w dokumencie. Nie są wymagane żadne zmiany w implementacji.
- Nazwa
id_token_endpoint
w „pliku konfiguracyjnym” została zmieniona naid_assertion_endpoint
. - Żądania wysyłane do dostawcy tożsamości zawierają teraz nagłówek
Sec-Fetch-Dest: webidentity
zamiast nagłówkaSec-FedCM-CSRF: ?1
.
Chrome 105 (sierpień 2022 r.)
- Dodano ważne informacje o zabezpieczeniach do dokumentu. Dostawca tożsamości musi sprawdzić, czy nagłówek
Referer
jest zgodny z punktem początkowym w grupie objętej ograniczeniami zarejestrowanymi z wyprzedzeniem w punkcie końcowym tokena identyfikatora. - Nazwa pliku manifestu najwyższego poziomu została zmieniona z
/.well-known/fedcm.json
na/.well-known/web-identity
, a adres URL podany wprovider_urls
powinien zawierać nazwę pliku. - Metody
login()
,logout()
irevoke()
w instancjachFederatedCredential
nie są już dostępne. - Interfejs Federated Credential Management API korzysta teraz z nowego typu
IdentityCredential
zamiastFederatedCredential
. Można go używać do wykrywania funkcji, ale poza tym jest to zmiana w dużej mierze niewidoczna. - Przenieś funkcję logowania z kombinacji
navigator.credentials.get()
iFederatedCredential.prototype.login()
donavigator.credentials.get()
. - Punkt końcowy unieważnienia w pliku manifestu nie działa już.
- W przypadku wywołań
navigator.credentials.get()
używaj polaidentity
zamiast polafederated
. url
to terazconfigURL
i musi być pełnym adresem URL pliku JSON manifestu, a nie ścieżką wywołanianavigator.credentials.get()
.nonce
jest teraz parametrem opcjonalnym dlanavigator.credentials.get()
.- Usługa
hint
nie jest już dostępna jako opcja usługinavigator.credentials.get()
.
const credential = await navigator.credentials.get({
identity: {
providers: [{
configURL: 'https://idp.example/anything.json',
clientId: '********',
nonce: '******'
}]
}
});
const { token } = credential;
Chrome 104 (czerwiec 2022 r.)
- Parametr
consent_acquired
wysyłany do punktu końcowego tokena identyfikatora to terazdisclosure_text_shown
. Wartość nie zostanie zmieniona. - Ikony marki w pliku manifestu dostawcy tożsamości nie obsługują już obrazów SVG, ale nie muszą już być dozwolone przez politykę bezpieczeństwa treści.
Chrome 103 (maj 2022 r.)
- Obsługuje środowiska komputerowe.
- Obsługuje ustawienia dla poszczególnych grup objętych ograniczeniami na komputerze.
- Punkt końcowy metadanych klienta jest teraz opcjonalny. W tym punkcie końcowym adres URL polityki prywatności też jest opcjonalny.
- Dodano zastrzeżenie dotyczące używania CSP
connect-src
w dokumencie.