Aktualizacje interfejsu Federated Credential Management API

Interfejs Federated Credential Management API jest dostarczany w Chrome 108, ale prawdopodobnie będzie kontynuowany ewoluuje. Brak zaplanowanych zmian powodujących niezgodność.

Dla kogo są 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 RP i chcesz poszerzyć zakres interfejsu API, aby dostosować go do swoich potrzeb przypadku, np. obserwowałeś lub uczestniczysz dyskusje w repozytorium FedID CG i chcesz poznać zmiany wprowadzone w interfejsie API.
  • Jesteś dostawcą przeglądarek i chcesz zapoznać się z implementacją stan interfejsu API.

Jeśli dopiero zaczynasz korzystać z tego interfejsu API lub nie znasz go jeszcze, przeczytaj wprowadzenie do interfejsu Federated Credential Management API.

Historia zmian

Aby być na bieżąco ze zmianami w interfejsie FedCM API, zapoznaj się z naszymi na blogu lub .

Chrome 125 (kwiecień 2024 r.)

Chrome 123 (luty 2024 r.)

  • Dodaliśmy obsługę interfejsu Domains Hint API. Wskazówka dotycząca domeny API pozwala w odpowiedzi na żądania należy określić właściwość domainHint w wywołaniu interfejsu API FedCM, tak aby wyświetlane były tylko dopasowania konta użytkownika.

Chrome 122 (styczeń 2024 r.)

Chrome 121 (grudzień 2023 r.)

  • Warunek automatycznego ponownego uwierzytelniania w FedCM:
    • Funkcja automatycznego ponownego uwierzytelniania w FedCM uruchamia się tylko wtedy, gdy użytkownik wraca. Oznacza to, że użytkownik musi zalogować się w grupie objętej ograniczeniami przy użyciu FedCM raz w każdej instancji przeglądarki, przed aktywacją automatycznego ponownego uwierzytelniania. Początkowo ten warunek był wprowadzone w celu zmniejszenia ryzyka, że lokalizatory udają tożsamość dostawcy tożsamości i nakłanianie przeglądarki do automatycznego ponownego uwierzytelnienia użytkownika. bez ich wiedzy i zgody. Taki projekt nie gwarantuje jednak, ochrony prywatności, jeśli ma dostęp do plików cookie innych firm Kontekst grupy objętej ograniczeniami. FedCM zapewnia tylko część możliwości, jakie zapewnia plików cookie innych firm, jeśli więc lokalizator ma już dostęp do plików cookie innych firm, plików cookie w kontekście strony objętej ograniczeniami, dostęp do FedCM nie wiąże się z żadną dodatkową prywatnością. ryzyko.
      Istnieją dopuszczalne przypadki użycia plików cookie innych firm i złagodzenie poprawiłyby wrażenia użytkownika. Postanowiliśmy złagodzić ograniczenie, aby traktować użytkownika jako: powracający: jeśli pliki cookie innych firm są dostępne dla dostawcy tożsamości w RPA. kontekstu, Chrome będzie ufać twierdzeniu dostawcy tożsamości na temat stanu konta użytkownika określone za pomocą listy approved_clients i uruchomić automatyczne ponowne uwierzytelnianie w odpowiednich przypadkach. Pliki cookie innych firm mogą być dostępne w ustawieniach użytkownika, zasady przedsiębiorstwa, heurystyka (Safari, Firefox, Chrome) oraz interfejsów API innych platform internetowych (takich jak Dostęp do pamięci masowej) API). Notatka że gdy dostawca tożsamości utraci w przyszłości dostęp do plików cookie innych firm, jeśli użytkownik nigdy wprost nie przyznała uprawnień w interfejsie FedCM (na przykład klikając przycisk Kontynuuj jako) wcześniej, nadal będą traktowane jako nowego użytkownika.
      Programista nie musi nic robić. Pamiętaj, że proces automatycznego ponownego uwierzytelniania może będzie wywoływane częściej po tej zmianie, jeśli dostawca tożsamości ma dostęp do plików cookie innych firm. i twierdzą, że użytkownik utworzył konto w grupie objętej ograniczeniami w przeszłości.

Chrome 120 (listopad 2023 r.)

  • W Chrome 120 dodaliśmy obsługę tych trzech funkcji:
    • Login Status API: stan logowania; API to Mechanizm, dzięki któremu witryna, a zwłaszcza dostawca tożsamości, informuje przeglądarkę o tym, stanu logowania. Dzięki temu interfejsowi przeglądarka może zmniejszyć liczbę niepotrzebnych żądań do dostawcy tożsamości i ograniczyć potencjalne ataki czasowe. Interfejs API stanu logowania to dla FedCM. Po tej zmianie flaga chrome://flags/#fedcm-without-third-party-cookies nie trzeba już włączać FedCM w przypadku zablokowania pliku cookie innej firmy.
    • Error API: błąd 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: Auto-Selected Flag API API informuje, czy użytkownik uzyskał wyraźne pozwolenie Przycisk Kontynuuj jako z dostawcą tożsamości i RP przy każdym automatycznym ponownym uwierzytelnieniu lub pośrednictwa w sprzedaży. Udostępnianie następuje dopiero po tym, jak użytkownik na potrzeby komunikacji z dostawcą tożsamości i RP.

Chrome 117 (wrzesień 2023 r.)

Chrome 116 (sierpień 2023 r.)

  • W Chrome 116 dodaliśmy obsługę trzech tych funkcji:
    • Login Hint API: określ preferowane konto użytkownika, na które chcesz się zalogować.
    • Interfejs API informacji o użytkowniku: pobiera informacje o powracającym użytkowniku, aby dostawca tożsamości mógł wygenerować spersonalizowany przycisk logowania w elemencie iframe.
    • RP Context API: użyj tytułu innego niż „Zaloguj się”. w oknie FedCM.
  • Dostępna jest wersja próbna origin interfejsu API stanu logowania dostawcy tożsamości. Więcej informacji znajdziesz w artykule Aktualizacje FedCM: interfejs API stanu logowania dostawcy tożsamości, Wskazówka dotycząca 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 wstępnym uwierzytelnieniu za pomocą FedCM. Zwiększa to wygodę użytkowników i umożliwia łatwiejsze ponowne uwierzytelnianie w grupie objętej ograniczeniami po wstępnym uwierzytelnieniu. Dowiedz się więcej o automatycznym ponownym uwierzytelnianiu FedCM.

Chrome 110 (luty 2023 r.)

  • W przypadku punktu końcowego potwierdzenia identyfikatora dostawcy tożsamości muszą sprawdzić nagłówek Origin (a nie nagłówek Referer), aby zobaczyć, czy wartość pasuje do źródła identyfikatora klienta.
  • Obsługa elementów iframe z innych domen w FedCM jest teraz dostępna. osadzony element powinien określać Permissions-Policy identity-credentials-get, aby zezwolić na interfejs FedCM API w osadzonych zasobach z innych domen. iframe. Zobacz przykład międzyźródłowy element iframe.
  • Dodano nową flagę Chrome chrome://flags/#fedcm-without-third-party-cookies. Za pomocą tej flagi 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” nazywa się teraz „dobrze znanym plikiem”, w dokumencie. Nie musisz wprowadzać żadnych zmian w implementacji.
  • „Plik manifestu dostawcy tożsamości” nazywa się teraz „plik konfiguracji” w dokumencie. Nie konieczne są zmiany w implementacji.
  • Element id_token_endpoint w „pliku konfiguracyjnym” Nazwa została zmieniona na id_assertion_endpoint
  • Żądania do dostawcy tożsamości zawierają teraz Sec-Fetch-Dest: webidentity nagłówek zamiast nagłówka Sec-FedCM-CSRF: ?1.

Chrome 105 (sierpień 2022 r.)

  • Do dokumentu dodano ważne informacje na temat bezpieczeństwa. Tożsamość dostawca tożsamości musi sprawdzić, czy nagłówek Referer pasuje do punktu początkowego RP zarejestrowana z wyprzedzeniem punktu końcowego tokena identyfikatora.
  • Nazwa pliku manifestu najwyższego poziomu została zmieniona z /.well-known/fedcm.json na /.well-known/web-identity, a adres URL określony w polu provider_urls powinien zawierający nazwę pliku.
  • Metody login(), logout() i revoke() w: FederatedCredential instancje nie są już dostępne.
  • Interfejs Federated Credential Management API używa teraz nowego typu IdentityCredential zamiast FederatedCredential. Może to być używane w przypadku: wykrywanie cech, ale jest to przeważnie niewidoczna zmiana.
  • Przenieś funkcję logowania z kombinacji navigator.credentials.get() i FederatedCredential.prototype.login() do navigator.credentials.get().
  • Punkt końcowy unieważnienia w pliku manifestu już nie obowiązuje.
  • Użyj pola identity zamiast pola federated w przypadku Połączenia: navigator.credentials.get().
  • url to teraz configURL. i musi to być pełny adres URL pliku JSON manifestu, a nie ścieżka dla połączenie: navigator.credentials.get().
  • nonce jest teraz parametrem opcjonalnym dla navigator.credentials.get().
  • Opcja hint nie jest już dostępna dla: navigator.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.)

Chrome 103 (maj 2022 r.)

  • Obsługuje środowiska komputerowe.
  • Obsługuje ustawienia grupy objętej ograniczeniami na komputerze.
  • punkt końcowy metadanych klienta jest teraz opcjonalna. W tym punkcie końcowym URL polityki prywatności też jest opcjonalny.
  • Dodaliśmy zastrzeżenie dotyczące używania w dokumencie zasad CSP connect-src.

Zasoby