Internetowy interfejs API do federacji tożsamości chroniącej prywatność.
Co to jest FedCM?
FedCM (Federated Credential Management) to rozwiązanie chroniące prywatność usług sfederowanych (na przykład „Zaloguj się przez...”), w którym użytkownicy mogą logować się w witrynach bez udostępniania swoich danych osobowych usłudze tożsamości lub witrynie.
Stan implementacji
- Stan platformy Chrome
- Usługa FedCM została udostępniona w Chrome 108.
- Oferta FedCM jest otwarta do dyskusji publicznej.
- Inne przeglądarki nie obsługują jeszcze FedCM.
- Mozilla wdraża prototyp dla przeglądarki Firefox i Apple wyraża ogólne poparcie i jest zainteresowany współpracą nad ofertą FedCM.
W przyszłości planujemy wprowadzić szereg nowych funkcji na podstawie opinii, które otrzymaliśmy od dostawców tożsamości, podmiotów uzależnionych i dostawców przeglądarek. Mamy nadzieję, że dostawcy tożsamości zaczną wdrożyć FedCM. Pamiętaj jednak, że FedCM jest nadal w fazie rozwoju, więc do IV kwartału 2023 r. spodziewamy się wstecznie zgodnych zmian.
Aby zminimalizować problemy związane z wdrażaniem niezgodnych wstecznie zmian, stosujemy obecnie 2 zalecenia dla dostawców tożsamości:
- Zasubskrybuj nasz newsletter, w którym będziemy otrzymywali aktualne informacje o zmianach w interfejsie API.
- Zachęcamy dostawców tożsamości do rozpowszechniania interfejsu FedCM API za pomocą pakietów SDK JavaScript w trakcie jego rozwoju i do zniechęcania kontrolerów RP do samodzielnego hostowania pakietów SDK. Dzięki temu dostawcy tożsamości będą mogli wprowadzać zmiany wraz z rozwojem interfejsu API bez konieczności proszenia wszystkich uzależnionych o ponowne wdrożenie.
Do czego potrzebny jest FedCM?
W ostatniej dekadzie federacja tożsamości odgrywała główną rolę w podnoszeniu poprzeczki uwierzytelniania w internecie pod względem wiarygodności, łatwości użytkowania (np. jednorazowe logowanie się bez hasła) i zabezpieczeń (np. zwiększonej odporności na phishing i upychanie danych logowania) w porównaniu z nazwami użytkowników i hasłami w poszczególnych witrynach.
W przypadku federacji tożsamości strona uzależniona korzysta z dostawcy tożsamości, by udostępnić użytkownikowi konto bez konieczności podawania nowej nazwy użytkownika i hasła.
Niestety mechanizmy, na których opierała się federacja tożsamości (elementy iframe, przekierowania i pliki cookie), są aktywnie wykorzystywane do śledzenia użytkowników w internecie. Klient użytkownika nie jest w stanie rozróżnić federacji tożsamości od śledzenia, dlatego środki łagodzące związane z różnymi rodzajami nadużyć utrudniają wdrażanie federacji tożsamości.
Interfejs Federated Credential Management API (FedCM) zapewnia abstrakcję w konkretnym przypadku użycia dotyczących sfederowanych przepływów tożsamości w internecie. Powoduje to wyświetlenie okna zapośredniczonego w przeglądarce, które pozwala użytkownikom wybierać konta od dostawców tożsamości w celu logowania się w witrynach.
FedCM to wieloetapowa droga do usprawnienia tożsamości w internecie. Pierwszym krokiem w działaniu usługi jest ograniczenie wpływu wycofania plików cookie innych firm na tożsamość sfederowaną (więcej informacji znajdziesz w sekcji Plan).
Co będzie miało wpływ?
Dzięki wysiłkom społeczności i naszym badaniom dowiedzieliśmy się, że istnieje kilka integracji związanych z federacją tożsamości, na które wycofanie plików cookie innych firm wpływa na:
- Wylogowanie ze strony OpenID Connect
- Zarządzanie sesjami OpenID Connect
- Odnowienie tokena tła opartego na iframe
- widżety logowania oparte na elementach iframe,
Pierwszym celem FedCM jest ograniczenie wpływu wycofania plików cookie innych firm na federację tożsamości. Powyżej znajduje się lista obszarów, na których możemy wprowadzić te zmiany. Jeśli są inne przypadki użycia, których nie wymieniliśmy, zachęcamy do zaangażowania się i przekazania opinii.
Kto powinien używać FedCM?
Spodziewamy się, że usługa FedCM będzie przydatna tylko wtedy, gdy zostaną spełnione wszystkie te warunki:
- Jesteś dostawcą tożsamości.
- Wycofanie plików cookie innych firm będzie Cię miało na to wpływ.
- Twoje grupy objęte ograniczeniami to witryny innych firm. Jeśli Twoje grupy objęte ograniczeniami są powiązane z witrynami, mogą Ci się wyświetlać zestawy powiązanych witryn.
Jesteś dostawcą tożsamości
FedCM wymaga pomocy dostawcy tożsamości. Strona uzależniona nie może samodzielnie korzystać z FedCM. Jeśli reprezentujesz grupę objętą ograniczeniami, możesz poprosić swojego dostawcę tożsamości o instrukcje.
Masz wpływ na wycofanie plików cookie innych firm
Z FedCM należy korzystać tylko wtedy, gdy wycofanie plików cookie innych firm ma wpływ na Twoją integrację.
Jeśli nie masz pewności, czy federacja tożsamości będzie nadal działać po wycofaniu z Chrome plików cookie innych firm, możesz sprawdzić, jaki wpływ będzie to miało na stronę internetową, blokując pliki cookie innych firm w Chrome.
Jeśli bez plików cookie innych firm nie ma wykrywalnego wpływu na federację tożsamości, możesz nadal korzystać z obecnej integracji bez FedCM.
Jeśli nie wiesz, co sprawdzić, przeczytaj więcej o znanych funkcjach, które prawdopodobnie będą miały wpływ na ich wycofanie.
Twoje grupy objęte ograniczeniami należą do innych firm
Jeśli jesteś dostawcą tożsamości, którego grupy objęte ograniczeniami mają własną relację z dostawcą tożsamości, prawdopodobnie lepszą opcją mogą być Zestawy powiązanych witryn. Zestawy powiązanych witryn (RWS) to sposób na deklarowanie relacji między witrynami, dzięki czemu przeglądarki zezwalają na ograniczony dostęp do plików cookie innych firm w określonych celach. Dzięki temu pliki cookie innych firm mogą działać w zbiorach powiązanych ze sobą witryn nawet po ich wycofaniu.
W jaki sposób użytkownicy będą korzystać z FedCM?
Obecnie FedCM skupia się głównie na łagodzeniu skutków wycofania plików cookie innych firm. Użytkownicy mogą włączać i wyłączać FedCM w ustawieniach użytkownika Chrome.
Usługa FedCM została zaprojektowana tak, aby była niezależna od protokołu i oferowała poniższe funkcje związane z uwierzytelnianiem.
Obejrzyj naszą prezentację, aby zobaczyć, jak to działa.
Zaloguj się w jednostce uzależnionej
Gdy użytkownik otworzy witrynę strony uzależnionej, pojawi się okno logowania do FedCM, jeśli jest on zalogowany u dostawcy tożsamości.
Jeśli użytkownik nie ma konta w grupie objętej ograniczeniami u dostawcy tożsamości, pojawi się okno rejestracji z dodatkowym tekstem, takim jak warunki korzystania z usługi objętej ograniczeniami i politykę prywatności (jeśli zostały podane).
Użytkownik może dokończyć logowanie, klikając Kontynuuj jako.... Jeśli operacja się uda, przeglądarka zapisze fakt, że użytkownik utworzył sfederowane konto w RPA z dostawcą tożsamości.
RP powinny działać w przeglądarkach, które nie obsługują FedCM. Użytkownicy powinni mieć możliwość korzystania z dotychczasowego procesu logowania się w systemie innym niż FedCM. Dowiedz się więcej o tym, jak działa logowanie w FedCM.
Ustawienie włączania i wyłączania FedCM
Użytkownicy mogą włączać i wyłączać FedCM w ustawieniach Chrome na Androidzie. Kliknij Ustawienia > Ustawienia witryn > Logowanie przez usługę zewnętrzną, a potem zmień przełącznik.
To samo może zrobić w Chrome na komputerze, otwierając chrome://settings/content/federatedIdentityApi
.
Harmonogram
Pracujemy nad wprowadzeniem szeregu zmian w FedCM.
W odpowiedzi na opinie użytkowników wprowadziliśmy już kilka zmian. Przewiduje się też, że ewolucja będzie się rozwijać co najmniej do IV kwartału 2023 r., co najmniej do ustabilizowania się. Więcej szczegółów znajdziesz w sekcji Aktualizacje.
- Historia zmian: aktualizacje interfejsu Federated Credential Management API.
Wiemy, że jest kilka rzeczy do zrobienia, w tym problemy, o których dowiedzieliśmy się od dostawców tożsamości, RP i dostawców przeglądarek. Naszym zdaniem wiemy, jak rozwiązać te problemy:
- Obsługa elementów iframe z innych domen: dostawcy tożsamości mogą wywoływać FedCM z międzyźródłowego elementu iframe (update).
- Przycisk spersonalizowany: dostawcy tożsamości mogą wyświetlać tożsamość powracającego użytkownika po kliknięciu przycisku logowania w elemencie iframe z innych domen należących do dostawcy tożsamości (update).
- Punkt końcowy wskaźników: udostępnia dane o wydajności dostawcom tożsamości.
Ponadto aktywnie analizujemy nierozwiązane problemy, w tym konkretne propozycje, które obecnie oceniamy lub tworzymy prototypy:
- CORS: rozmawiamy z Apple i Mozilli, aby ulepszyć specyfikację pobierania przez FedCM.
- Interfejs API wielu dostawców tożsamości: badamy sposoby obsługi wielu dostawców tożsamości, aby współistnieły w ramach funkcji wyboru konta FedCM.
- Interfejs API stanu logowania dostawcy tożsamości: zidentyfikowano problem dotyczący czasu ataku i szukamy sposobów, aby dostawca tożsamości aktywnie powiadamiał przeglądarkę o stanie logowania użytkownika, co pozwoli mu złagodzić ten problem. (aktualizacja)
- Zaloguj się w interfejsie API dostawcy tożsamości: w celu obsługi różnych sytuacji, gdy użytkownik nie jest zalogowany u dostawcy tożsamości, przeglądarka udostępnia mu interfejs, który umożliwia zalogowanie się bez opuszczania grupy objętej ograniczeniami.
Na koniec, na podstawie opinii Mozilla, Apple i weryfikatorów TAG uważamy, że musimy zrobić jeszcze kilka rzeczy. Pracujemy nad znalezieniem najlepszych rozwiązań na te pytania otwarte:
- Poprawa zrozumienia użytkowników i zamiarów dopasowywania: jak wskazano w Mozilli, chcemy nadal poznawać różne formuły UX i powierzchnie, a także kryteria wyzwalające.
- Atrybuty tożsamości i selektywne ujawnienie: jak zauważyli weryfikatorzy TAGU, chcemy udostępnić mechanizm selektywnego udostępniania większej lub mniejszej liczby atrybutów tożsamości (np. adresów e-mail, przedziałów wiekowych, numerów telefonów itp.).
- Podnoszenie ustawień prywatności: zgodnie z proponowaną przez Mozilla tutaj chcemy nadal pracować nad mechanizmami oferowania lepszych gwarancji prywatności, takimi jak „niezauważalność dostawcy tożsamości” czy identyfikatory kierowane.
- Relacja z WebAuthn: zgodnie z sugestią Apple obserwujemy postępy w zakresie kluczy dostępu i pracujemy nad zapewnieniem spójnego środowiska usług FedCM, haseł, WebAuthn i WebOTP.
- Stan logowania: zgodnie z propozycją firmy Apple w swoim interfejsie API stanu logowania przygotowanym przez firmę Apple wiemy, że stan logowania użytkownika to przydatna informacja, która pomaga przeglądarkom w podejmowaniu świadomych decyzji. Jesteśmy ciekawi, jakie możliwości daje ta zmiana. (aktualizacja)
- Firmy i edukacja: jak wyraźnie zaznaczono w FedID CG, nadal jest wiele przypadków użycia, nad którymi FedCM nie zajmuje się dobrze. Są to na przykład wylogowanie z kanału użytkownika (możliwość wysłania przez dostawcę tożsamości sygnału do wylogowania się przez dostawcę tożsamości) i obsługa SAML.
- Relacja z mDL / VC itp.: kontynuuj prace nad dopasowaniem tych elementów do FedCM, na przykład z interfejsem Mobile Document Request API.
Korzystanie z interfejsu FedCM API
Aby korzystać z FedCM, musisz mieć bezpieczny kontekst (HTTPS lub lokalny host) zarówno u dostawcy tożsamości, jak i RP w Chrome.
Aby przeprowadzić integrację z FedCM, musisz utworzyć dobrze znany plik, plik konfiguracyjny i punkty końcowe dla listy kont, wystawiania asercji i opcjonalnie metadanych klienta. Następnie FedCM udostępnia interfejsy API JavaScript, których członkowie RP mogą używać do logowania się przy użyciu dostawcy tożsamości.
Aby dowiedzieć się, jak korzystać z interfejsu FedCM API, przeczytaj przewodnik dla programistów FedCM.
Angażuj i dziel się opiniami
- GitHub przeczytaj wyjaśnienie, zgłoś problemy i weź udział w dyskusji.
- Pomoc dla deweloperów: zadawaj pytania i dołączaj do dyskusji w repozytorium pomocy dla deweloperów Piaskownicy prywatności.
Zgodność z przepisami dotyczącymi prywatności i łączności elektronicznej
Korzystanie z FedCM, jako dostawcy tożsamości lub RP, obejmuje przechowywanie informacji na sprzęcie terminala użytkownika lub dostęp do informacji już zapisanych w tej usłudze. W związku z tym działanie to podlega przepisom o prywatności i łączności elektronicznej obowiązującym w Europejskim Obszarze Gospodarczym oraz Wielkiej Brytanii i wymaga zgody użytkownika. Twoim obowiązkiem jest ustalenie, czy korzystanie z FedCM jest bezwzględnie konieczne do świadczenia usługi online, o które prosi użytkownik, i tym samym jest zwolnione z wymogu uzyskania zgody. Aby dowiedzieć się więcej, zapoznaj się z najczęstszymi pytaniami na temat zgodności z przepisami w Piaskownicy prywatności.