Elemen Permission HTML Baru Chrome Menghadapi Penentangan Kuat dari Firefox dan Safari

Tim Editorial BigGo
Elemen Permission HTML Baru Chrome Menghadapi Penentangan Kuat dari Firefox dan Safari

Google Chrome terus melangkah maju dengan elemen HTML <permission> baru yang kontroversial meskipun menghadapi penentangan kuat dari Mozilla Firefox dan Apple Safari. Fitur ini, yang saat ini dalam tahap origin trials mulai dari Chrome 122, bertujuan menggantikan pop-up izin tradisional dengan elemen HTML deklaratif inline yang dapat disematkan langsung oleh situs web ke dalam halaman mereka.

Elemen baru ini memungkinkan pengembang untuk meminta izin browser seperti akses kamera, mikrofon, dan lokasi melalui markup HTML daripada panggilan JavaScript. Alih-alih dialog modal yang familiar yang mengganggu browsing pengguna, elemen <permission> ditampilkan sebagai bagian dari konten halaman web, menunjukkan status yang berbeda berdasarkan apakah izin diberikan, ditolak, atau tertunda.

Jenis Izin yang Didukung ( Chrome 122 Trial)

  • Akses kamera
  • Akses mikrofon
  • Data geolokasi

Posisi Vendor Browser

  • ** Chrome **: Mengimplementasikan dalam uji coba origin
  • ** Firefox **: Posisi negatif formal
  • ** Safari / WebKit **: Posisi negatif formal
Instruksi untuk mengaktifkan akses mikrofon di browser Anda saat menggunakan Google Meet
Instruksi untuk mengaktifkan akses mikrofon di browser Anda saat menggunakan Google Meet

Kontroversi Proses Standar

Kekhawatiran paling signifikan yang diangkat oleh komunitas pengembang berpusat pada keputusan Google untuk melanjutkan implementasi meskipun mendapat penentangan formal dari vendor browser utama lainnya. Baik Mozilla maupun WebKit telah mengeluarkan posisi standar negatif, namun Chrome tetap melanjutkan pengembangan melalui origin trials. Pendekatan ini telah menarik kritik karena berpotensi memecah belah standar web dan menciptakan fitur khusus Chrome yang mungkin tidak akan pernah didukung oleh browser lain.

Situasi ini menyoroti ketegangan yang sedang berlangsung dalam tata kelola standar web. Para kritikus berargumen bahwa pangsa pasar dominan Chrome memungkinkan Google untuk secara efektif memaksa adopsi fitur terlepas dari konsensus industri, merusak proses standar kolaboratif yang secara tradisional mengatur pengembangan web.

Kekhawatiran Keamanan dan Pengalaman Pengguna

Diskusi pengembang mengungkapkan skeptisisme mendalam tentang implikasi keamanan dari memindahkan permintaan izin ke dalam konten halaman web. Sifat inline dari elemen ini menimbulkan kekhawatiran tentang serangan clickjacking, di mana situs web berbahaya dapat melapisi elemen tak terlihat untuk mengelabui pengguna agar memberikan izin tanpa disengaja.

Pembatasan styling yang diberlakukan pada elemen menciptakan tantangan tambahan. Meskipun Google telah membatasi bagaimana situs web dapat menyesuaikan tampilan untuk mencegah penyalahgunaan, pengembang khawatir ini akan menciptakan pengalaman pengguna yang mengganggu di mana tombol izin tidak cocok dengan desain situs. Pembatasan ini juga tampaknya tidak cukup untuk mencegah serangan social engineering yang canggih.

Ini memudahkan pengguna untuk mengaktifkan izin, juga secara tidak sengaja, dan dengan demikian menurunkan keamanan dan privasi. Produk Google dirancang untuk mengeksploitasi hal tersebut.

Masalah Implementasi Teknis

Komunitas telah mengidentifikasi beberapa masalah teknis dengan proposal saat ini. Perilaku elemen tampak tidak konsisten dengan pola HTML standar, dan sifat deklaratifnya dipertanyakan karena izin yang mendasarinya masih memerlukan JavaScript untuk berfungsi secara bermakna.

Pengembang juga mencatat fungsionalitas yang hilang dibandingkan dengan API izin yang ada. Versi trial tidak memiliki opsi untuk memblokir izin secara permanen, hanya menawarkan pilihan izinkan setiap kunjungan dan izinkan kali ini. Asimetri ini menunjukkan bahwa fitur tersebut mungkin dirancang untuk mendorong pemberian izin daripada benar-benar meningkatkan kontrol pengguna.

Contoh Sintaks Elemen Permission

&lt;permission name="camera"&gt;
  &lt;span&gt;Izin diberikan.&lt;/span&gt;
  &lt;span slot="denied"&gt;Izin ditolak.&lt;/span&gt;
  &lt;button slot="prompt"&gt;Minta izin&lt;/button&gt;
&lt;/permission&gt;

Atribut Utama

  • name: Jenis izin (camera, microphone, geolocation)
  • granted: Konten yang ditampilkan ketika izin diberikan
  • denied: Konten yang ditampilkan ketika izin ditolak
  • prompt: Konten yang ditampilkan ketika status izin tidak diketahui

Dampak Pasar dan Outlook Masa Depan

Kontroversi ini mencerminkan kekhawatiran yang lebih luas tentang pengaruh Google terhadap standar web melalui dominasi pasar Chrome. Banyak pengembang khawatir bahwa penerapan fitur khusus Chrome yang sukses akan menekan browser lain untuk mengimplementasikannya secara retroaktif, terlepas dari merit teknis atau kekhawatiran keamanan.

Situasi ini mencerminkan contoh sebelumnya di mana Google memperkenalkan fitur secara sepihak, kemudian memaksa adopsi industri. Dengan pengembang web yang semakin bergantung pada API khusus Chrome, elemen permission mungkin menjadi contoh lain dari standardisasi de facto melalui kekuatan pasar daripada pengembangan berbasis konsensus.

Kesuksesan akhir dari fitur ini kemungkinan akan tergantung pada apakah vendor browser lain akhirnya membalikkan posisi mereka atau apakah komunitas pengembangan web merangkul implementasi khusus Chrome meskipun ada kekhawatiran fragmentasi.

Referensi: An origin trial for a new HTML element