Dipublikasikan: 29 Mei 2025
Mulai Chrome 138, ada serangkaian perubahan pada skrip pengguna
(chrome.userScripts
API) di Ekstensi Chrome, yang berfokus pada peningkatan keamanan
dan memberikan kontrol yang lebih terperinci kepada pengguna. Update ini mengatasi masukan
berharga yang diterima dari komunitas developer dan penggunanya.
Sebelumnya, untuk mengaktifkan skrip pengguna, Anda harus mengaktifkan tombol Mode Developer global di dalam Chrome. Kami telah menerima masukan dari Anda bahwa pendekatan ini memiliki beberapa batasan utama terkait keamanan, fungsi, dan perusahaan.
Secara khusus, mengandalkan tombol Mode Developer global memiliki masalah berikut:
- Risiko Keamanan: Setelah mode developer diaktifkan, ekstensi baru yang
meminta izin
userScripts
akan otomatis mendapatkan kemampuan untuk menjalankan skrip pengguna, berpotensi tanpa izin pengguna eksplisit atau pengetahuan tentang risiko yang terkait dengan setiap ekstensi baru. - Fungsi Berlebih: Tombol Mode Developer mengontrol beberapa izin berorientasi developer lainnya, sehingga kurang akurat untuk mengelola izin tertentu guna menjalankan skrip pengguna.
- Tantangan Perusahaan: Banyak perusahaan memilih untuk tidak mengaktifkan mode developer di perangkat terkelola, yang secara efektif mencegah mereka men-deploy atau menggunakan ekstensi yang mengandalkan
chrome.userScripts
API.
Untuk mengatasi masalah ini dan meningkatkan keamanan serta kegunaan ekstensi Chrome, kami beralih dari tombol Mode Developer global ke tombol Izinkan Skrip Pengguna baru per ekstensi.
Tombol baru ini, yang dapat diakses di halaman detail ekstensi dari Chrome 138
(chrome://extensions/?id=<your_extension_id>
), memungkinkan pengguna mengontrol secara eksplisit
kemampuan ekstensi untuk menjalankan skrip pengguna berdasarkan setiap ekstensi.
Hal ini memberikan kontrol yang lebih terperinci dan mengurangi potensi risiko keamanan.
Selama periode transisi, versi Chrome sebelum 138 akan terus
menggunakan tombol Mode Developer, sedangkan versi 138 atau yang lebih baru akan menggunakan
tombol Izinkan Skrip Pengguna baru per ekstensi. Pada peluncuran pertama versi 138 dan
yang lebih baru, migrasi satu kali akan otomatis mengaktifkan tombol baru untuk ekstensi
yang ada yang telah diberi izin userScripts
jika
tombol Mode Developer diaktifkan. Semua ekstensi baru yang diinstal setelah migrasi akan ditetapkan secara default ke tombol Izinkan Skrip Pengguna yang dinonaktifkan.
Selain itu, untuk memeriksa ketersediaan User Scripts API, ekstensi
sebelumnya harus mencoba mengakses chrome.userScripts
. Tindakan ini akan menampilkan error jika
mode developer dinonaktifkan. Mulai Chrome 138, perilaku ini selaras dengan API
lainnya dan API tidak ditentukan jika tidak tersedia. Meskipun demikian, sebaiknya lakukan pemeriksaan
ini untuk menentukan apakah API tersedia karena mencakup semua versi Chrome:
function isUserScriptsAvailable() {
try {
// Method call which throws if API permission or toggle is not enabled.
chrome.userScripts.getScripts();
return true;
} catch {
// Not available.
return false;
}
}
Administrator yang sebelumnya mengelola skrip pengguna dengan menonaktifkan mode developer
sekarang harus menggunakan kebijakan blocked_permissions
atau konsol Google Admin untuk
mengontrol ekstensi yang menggunakan chrome.userScripts
API. Kami sedang mengevaluasi
perubahan lebih lanjut pada cara akses chrome.userScripts
dapat dikontrol untuk
ekstensi yang diinstal secara paksa. Jadi, nantikan catatan
rilis administrator untuk mengetahui info terbaru.
Kami yakin perubahan ini akan memberi pengguna kontrol yang lebih akurat atas kemampuan ekstensi, sehingga meningkatkan keamanan dan pengalaman yang lebih transparan. Sebaiknya developer ekstensi memperbarui dokumentasi mereka untuk mencerminkan perubahan ini dan memastikan transisi yang lancar bagi pengguna mereka.
Anda dapat mempelajari lebih lanjut perubahan dan perilaku baru di dokumentasi kami.
Kami menghargai masukan dari komunitas developer yang mendorong peningkatan ini dan tetap berkomitmen untuk menciptakan pengalaman yang aman dan mudah digunakan bagi semua orang.