Untuk menggunakan sebagian besar Chrome.* API, ekstensi atau aplikasi Anda harus mendeklarasikan intent-nya dalam "izin" kolom dari manifes. Setiap izin bisa berupa salah satu dari daftar string yang dikenal (seperti "geolokasi") atau pola pencocokan yang memberikan akses ke satu atau beberapa host. Izin membantu untuk membatasi kerusakan jika ekstensi atau aplikasi Anda disusupi oleh malware. Beberapa izin juga ditampilkan kepada pengguna sebelum penginstalan, seperti yang dijelaskan dalam Peringatan Izin.
Jika API mengharuskan Anda mendeklarasikan izin dalam manifes, dokumentasinya akan memberi tahu Anda caranya untuk melakukannya. Misalnya, halaman Penyimpanan menunjukkan cara mendeklarasikan "penyimpanan" izin akses.
Berikut adalah contoh bagian izin dari file manifes:
"permissions": [
"tabs",
"bookmarks",
"http://www.blogger.com/",
"http://*.google.com/",
"unlimitedStorage"
],
Tabel berikut mencantumkan izin yang saat ini tersedia:
Izin | Deskripsi |
---|---|
"activeTab" |
Meminta agar ekstensi diberi izin sesuai dengan activeTab spesifikasi pendukung. |
"alarms" |
Memberi ekstensi Anda akses ke API chrome.alarms. |
"background" |
Membuat Chrome dimulai lebih awal dan dimatikan terlambat, sehingga aplikasi dan ekstensi dapat memiliki waktu yang lebih lama kehidupan Anda. Saat semua aplikasi yang dihosting, aplikasi terpaket, atau ekstensi yang terinstal memiliki "latar belakang" izin, Chrome menjalankan (tidak terlihat) begitu pengguna masuk ke komputer mereka—sebelum pengguna meluncurkan Chrome. "Latar belakang" juga membuat Chrome terus berjalan (bahkan setelah jendela terakhir ditutup) hingga pengguna secara eksplisit keluar dari Chrome. Catatan: Aplikasi dan ekstensi yang dinonaktifkan diperlakukan seolah-olah tidak
terinstal.
Anda biasanya menggunakan "latar belakang" izin dengan halaman latar belakang, halaman peristiwa, atau (untuk aplikasi yang dihosting) jendela latar belakang. |
"bookmarks" |
Memberi ekstensi Anda akses ke API chrome.bookmarks. |
"browsingData" |
Memberi ekstensi Anda akses ke API chrome.browsingData. |
"certificateProvider" |
Memberi ekstensi Anda akses ke API chrome.certificateProvider. |
"clipboardRead" |
Wajib ada jika ekstensi atau aplikasi menggunakan document.execCommand('paste') . |
"clipboardWrite" |
Menunjukkan bahwa ekstensi atau aplikasi menggunakan document.execCommand('copy') atau
document.execCommand('cut') . Izin ini diperlukan untuk aplikasi yang dihosting; direkomendasikan
untuk ekstensi dan aplikasi terpaket. |
"contentSettings" |
Memberi ekstensi Anda akses ke API chrome.contentSettings. |
"contextMenus" |
Memberi ekstensi Anda akses ke chrome.contextMenus API. |
"cookies" |
Memberi ekstensi Anda akses ke API chrome.cookies. |
"debugger" |
Memberi ekstensi Anda akses ke API chrome.debugger. |
"declarativeContent" |
Memberi ekstensi Anda akses ke chrome.declarativeContent API. |
"declarativeNetRequest" |
Memberi ekstensi Anda akses ke API chrome.declarativeNetRequest. |
"declarativeNetRequestFeedback" |
Memberi ekstensi akses ke peristiwa dan metode dalam API chrome.declarativeNetRequest yang menampilkan informasi tentang deklaratif aturan yang cocok. |
"declarativeWebRequest" |
Memberi ekstensi Anda akses ke API chrome.declarativeWebRequest. |
"desktopCapture" |
Memberi ekstensi Anda akses ke API chrome.desktopCapture. |
"documentScan" |
Memberi ekstensi Anda akses ke API chrome.documentScan. |
"downloads" |
Memberi ekstensi Anda akses ke API chrome.downloads. |
"enterprise.deviceAttributes" |
Memberi ekstensi Anda akses ke API chrome.enterprise.deviceAttributes. |
"enterprise.hardwarePlatform" |
Memberi ekstensi Anda akses ke API chrome.enterprise.hardwarePlatform. |
"enterprise.networkingAttributes" |
Memberi ekstensi Anda akses ke API chrome.enterprise.networkingAttributes. |
"enterprise.platformKeys" |
Memberi ekstensi Anda akses ke API chrome.enterprise.platformKeys. |
"experimental" |
Diperlukan jika ekstensi atau aplikasi menggunakan chrome.experiment.* apa pun Google Cloud API. |
"fileBrowserHandler" |
Memberi ekstensi Anda akses ke API chrome.fileBrowserHandler. |
"fileSystemProvider" |
Memberi ekstensi Anda akses ke API chrome.fileSystemProvider. |
"fontSettings" |
Memberi ekstensi Anda akses ke API chrome.fontSettings. |
"gcm" |
Memberi ekstensi Anda akses ke API chrome.gcm. |
"geolocation" |
Mengizinkan ekstensi atau aplikasi untuk menggunakan geolocation API tanpa meminta izin kepada pengguna izin akses. |
"history" |
Memberi ekstensi Anda akses ke API chrome.history. |
"identity" |
Memberi ekstensi Anda akses ke API chrome.identity. |
"idle" |
Memberi ekstensi Anda akses ke API chrome.idle. |
"loginState" |
Memberi ekstensi Anda akses ke API chrome.loginState. |
"management" |
Memberi ekstensi Anda akses ke API chrome.management. |
"nativeMessaging" |
Memberi ekstensi Anda akses ke API pesan native. |
"notifications" |
Memberi ekstensi Anda akses ke API chrome.notifications. |
"pageCapture" |
Memberi ekstensi Anda akses ke API chrome.pageCapture. |
"platformKeys" |
Memberi ekstensi Anda akses ke API chrome.platformKeys. |
"power" |
Memberi ekstensi Anda akses ke API chrome.power. |
"printerProvider" |
Memberi ekstensi Anda akses ke API chrome.printerProvider. |
"printing" |
Memberi ekstensi Anda akses ke API chrome.printing. |
"printingMetrics" |
Memberi ekstensi Anda akses ke chrome.printingMetrics API. |
"privacy" |
Memberi ekstensi Anda akses ke API chrome.privacy. |
"processes" |
Memberi ekstensi Anda akses ke API chrome.processes. |
"proxy" |
Memberi ekstensi Anda akses ke API chrome.proxy. |
"scripting" |
Memberi ekstensi Anda akses ke API chrome.scripting. |
"search" |
Memberi ekstensi Anda akses ke API chrome.search. |
"sessions" |
Memberi ekstensi Anda akses ke API chrome.sessions. |
"signedInDevices" |
Memberi ekstensi Anda akses ke API chrome.signedInDevices. |
"storage" |
Memberi ekstensi Anda akses ke API chrome.storage. |
"system.cpu" |
Memberi ekstensi Anda akses ke API chrome.system.cpu. |
"system.display" |
Memberi ekstensi Anda akses ke API chrome.system.display. |
"system.memory" |
Memberi ekstensi Anda akses ke API chrome.system.memory. |
"system.storage" |
Memberi ekstensi Anda akses ke API chrome.system.storage. |
"tabCapture" |
Memberi ekstensi Anda akses ke API chrome.tabCapture. |
"tabGroups" |
Memberi ekstensi Anda akses ke API chrome.tabGroups. |
"tabs" |
Memberi ekstensi Anda akses ke kolom hak istimewa untuk objek Tab yang digunakan oleh beberapa API
termasuk chrome.tabs dan chrome.windows. Di beberapa
dalam banyak situasi, ekstensi Anda tidak perlu mendeklarasikan izin "tabs" untuk menggunakan
API ini. |
"topSites" |
Memberi ekstensi Anda akses ke API chrome.topSites. |
"tts" |
Memberi ekstensi Anda akses ke API chrome.tts. |
"ttsEngine" |
Memberi ekstensi Anda akses ke API chrome.ttsEngine. |
"unlimitedStorage" |
Menyediakan kuota tak terbatas untuk menyimpan data dari sisi klien, seperti database dan file penyimpanan lokal.
Tanpa izin ini, ekstensi atau aplikasi dibatasi hingga 5 MB penyimpanan lokal. Catatan: Izin ini hanya berlaku untuk Database Web SQL dan cache aplikasi
(lihat masalah 58985). Selain itu, saat ini kode
tidak berfungsi dengan karakter pengganti
subdomain seperti
http://*.example.com . |
"vpnProvider" |
Memberi ekstensi Anda akses ke API chrome.vpnProvider. |
"wallpaper" |
Memberi ekstensi Anda akses ke API chrome.wallpaper. |
"webNavigation" |
Memberi ekstensi Anda akses ke API chrome.webNavigation. |
"webRequest" |
Memberi ekstensi Anda akses ke API chrome.webRequest. |
"webRequestBlocking" |
Diperlukan jika ekstensi menggunakan API chrome.webRequest secara tertutup. |