Update FedCM: Uji coba origin untuk autentikasi ulang otomatis

Memperkenalkan beberapa update ke FedCM termasuk uji coba origin baru untuk autentikasi ulang otomatis.

Federated Credential Management API (FedCM) adalah API web untuk penggabungan identitas yang menjaga privasi. Dengan penggabungan identitas, RP (pihak tepercaya) mengandalkan IdP (penyedia identitas) untuk memberi pengguna akun tanpa memerlukan nama pengguna dan sandi baru.

FedCM adalah API yang dibuat khusus yang memungkinkan browser memahami konteks saat RP dan IdP bertukar informasi, memberi tahu pengguna tentang tingkat informasi dan hak istimewa yang dibagikan, dan mencegah penyalahgunaan yang tidak diinginkan.

Info Terbaru

Ada beberapa update pada implementasi FedCM Chrome:

Untuk semua update sebelumnya pada API, lihat update Federated Credential Management API.

FedCM versi terbaru menyertakan fitur autentikasi ulang otomatis baru, yang memungkinkan pengguna mengautentikasi ulang secara otomatis saat mereka kembali setelah melakukan autentikasi awal menggunakan FedCM. Autentikasi ulang otomatis tersedia sebagai uji coba origin mulai Chrome 112.

Autentikasi ulang otomatis

Saat ini, setelah pengguna membuat akun gabungan di RP dengan IdP melalui FedCM, saat mengunjungi situs tersebut, mereka harus melalui langkah-langkah yang sama di antarmuka pengguna. Artinya, mereka harus secara eksplisit mengonfirmasi dan melakukan autentikasi ulang untuk melanjutkan alur login. Karena salah satu tujuan utama FedCM adalah mencegah pelacakan tersembunyi, pengalaman pengguna (UX) ini masuk akal sebelum pengguna membuat akun gabungan, tetapi menjadi tidak perlu dan merepotkan setelah pengguna melewatinya sekali. Setelah pengguna memberikan izin untuk mengizinkan komunikasi antara RP dan IdP,  tidak ada manfaat privasi atau keamanan untuk menerapkan konfirmasi pengguna eksplisit lainnya untuk sesuatu yang telah mereka konfirmasi sebelumnya. Itu sebabnya Chrome memperkenalkan UX yang lebih efisien yang dapat dipilih oleh RP untuk pengguna yang kembali.

Autentikasi ulang otomatis FedCM (singkatnya "auto-reauthn") mengautentikasi ulang pengguna secara otomatis (jika RP memilih ikut serta), saat mereka kembali setelah autentikasi awal menggunakan FedCM. "Autentikasi awal" di sini berarti pengguna membuat akun atau login ke situs RP dengan mengetuk tombol "Continue as..." pada dialog login FedCM untuk pertama kalinya pada instance browser yang sama.

Dialog yang diketuk pengguna untuk membuat akun atau mengautentikasi.
Dialog yang diketuk pengguna untuk membuat akun atau untuk mengautentikasi.

RP dapat meminta autentikasi ulang otomatis dengan memanggil navigator.credentials.get() menggunakan autoReauthn: true.

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
    // NOTE: We are exploring different API options to expose this
    // functionality here:
    // https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
    // You should expect that, as a result of the origin trial, we'll
    // learn more from developers and browser vendors what works best here.
    autoReauthn: true, // default to false
  },
});

Dengan panggilan ini, autentikasi ulang otomatis terjadi dalam kondisi berikut:

  • FedCM tersedia untuk digunakan. Misalnya, pengguna belum menonaktifkan FedCM secara global atau untuk RP.
  • Pengguna hanya menggunakan satu akun FedCM untuk login ke situs pada browser ini.
  • Pengguna login ke IdP dengan akun tersebut.
  • Autentikasi ulang otomatis tidak terjadi dalam 10 menit terakhir.

Jika kondisi di atas terpenuhi, upaya untuk mengautentikasi ulang pengguna secara otomatis akan dimulai segera setelah FedCM navigator.credentials.get() dipanggil.

Pengguna mengautentikasi ulang secara otomatis ke RP menggunakan FedCM

Cobalah

Anda dapat mencoba autentikasi ulang otomatis FedCM secara lokal dengan mengaktifkan tanda Chrome chrome://flags#fedcm-auto-re-authn di Chrome 112 atau yang lebih baru.

Untuk tujuan pengujian, Anda dapat mereset periode tenang 10 menit dengan menghapus data browser.

  1. Buka chrome://history
  2. Di kotak histori penelusuran, masukkan asal RP.
  3. Klik ikon tiga titik ⋮ dan pilih Hapus dari histori.
  4. Mulai ulang Chrome.

Berpartisipasi dalam uji coba origin

Anda juga dapat mengaktifkan fitur ini di situs dengan bergabung ke uji coba origin pihak ketiga yang tersedia dari Chrome 112 hingga Chrome 114.

Uji coba origin memungkinkan Anda mencoba fitur baru dan memberikan masukan tentang kegunaan, kepraktisan, dan efektivitasnya kepada komunitas standar web. Untuk mengetahui informasi selengkapnya, lihat Panduan Uji Coba Origin untuk Developer Web. Untuk mendaftar ke uji coba origin ini atau lainnya, kunjungi halaman pendaftaran.

Untuk mendaftar ke uji coba origin pihak ketiga dan mengaktifkan fitur tersebut di pihak ketiga:

  1. Buka halaman pendaftaran uji coba origin.
  2. Klik tombol Daftar dan isi formulir untuk meminta token
  3. Masukkan asal penayangan sebagai Asal Web.
  4. Centang Pencocokan pihak ketiga untuk memasukkan token dengan JavaScript di origin lain.
  5. Klik Kirim.
  6. Sematkan token yang diterbitkan pada pihak ketiga.

Untuk menyematkan token ke pihak ketiga, tambahkan kode berikut ke library JavaScript atau SDK yang disalurkan dari origin situs yang terdaftar.

const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);

Ganti TOKEN_GOES_HERE dengan token Anda sendiri.

Berinteraksi dan memberikan masukan

Jika memiliki masukan atau mengalami masalah selama pengujian, Anda dapat menyampaikannya di crbug.com di bagian komponen Blink>Identity>FedCM.

Foto oleh Alex Perz di Unsplash