Untuk menggunakan sebagian besar chrome.* API, ekstensi atau aplikasi Anda harus mendeklarasikan intent-nya di kolom "permissions" pada manifes. Setiap izin dapat berupa salah satu dari daftar string yang diketahui (seperti "geolocation") atau pola kecocokan yang memberikan akses ke satu atau beberapa host. Izin membantu 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 cara melakukannya. Misalnya, halaman Penyimpanan menunjukkan cara mendeklarasikan izin "penyimpanan".
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 spesifikasi activeTab. |
"alarms" |
Memberi ekstensi Anda akses ke API chrome.alarms. |
"background" |
Membuat Chrome dimulai lebih awal dan dimatikan lebih lambat, sehingga aplikasi dan ekstensi dapat memiliki masa aktif yang lebih lama. Jika aplikasi yang dihosting, aplikasi dalam paket, atau ekstensi yang diinstal memiliki izin "latar belakang", Chrome akan berjalan (secara tidak terlihat) segera setelah pengguna login ke komputer—sebelum pengguna meluncurkan Chrome. Izin "background" juga membuat Chrome terus berjalan (bahkan setelah jendela terakhirnya ditutup) hingga pengguna secara eksplisit keluar dari Chrome. Catatan: Aplikasi dan ekstensi yang dinonaktifkan akan diperlakukan seolah-olah tidak
diinstal.
Anda biasanya menggunakan izin "background" 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; izin ini direkomendasikan
untuk ekstensi dan aplikasi dalam paket. |
"contentSettings" |
Memberi ekstensi Anda akses ke API chrome.contentSettings. |
"contextMenus" |
Memberi ekstensi Anda akses ke API chrome.contextMenus. |
"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" |
Memberikan akses ekstensi ke peristiwa dan metode dalam API chrome.declarativeNetRequest yang menampilkan informasi tentang aturan deklaratif yang cocok. |
"declarativeWebRequest" |
Memberi ekstensi Anda akses ke API chrome.declarativeWebRequest. |
"desktopCapture" |
Memberi ekstensi Anda akses ke chrome.desktopCapture API. |
"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 chrome.enterprise.hardwarePlatform API. |
"enterprise.networkingAttributes" |
Memberi ekstensi Anda akses ke API chrome.enterprise.networkingAttributes. |
"enterprise.platformKeys" |
Memberi ekstensi Anda akses ke API chrome.enterprise.platformKeys. |
"experimental" |
Wajib jika ekstensi atau aplikasi menggunakan chrome.experimental.* API. |
"fileBrowserHandler" |
Memberi ekstensi Anda akses ke chrome.fileBrowserHandler API. |
"fileSystemProvider" |
Memberi ekstensi Anda akses ke chrome.fileSystemProvider API. |
"fontSettings" |
Memberi ekstensi Anda akses ke API chrome.fontSettings. |
"gcm" |
Memberi ekstensi Anda akses ke chrome.gcm API. |
"geolocation" |
Mengizinkan ekstensi atau aplikasi menggunakan geolocation API tanpa meminta izin pengguna. |
"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 native messaging API. |
"notifications" |
Memberi ekstensi Anda akses ke API chrome.notifications. |
"pageCapture" |
Memberi ekstensi Anda akses ke API chrome.pageCapture. |
"platformKeys" |
Memberi ekstensi Anda akses ke chrome.platformKeys API. |
"power" |
Memberi ekstensi Anda akses ke API chrome.power. |
"printerProvider" |
Memberi ekstensi Anda akses ke chrome.printerProvider API. |
"printing" |
Memberi ekstensi Anda akses ke chrome.printing API. |
"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 chrome.signedInDevices API. |
"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 istimewa objek Tab yang digunakan oleh beberapa API,
termasuk chrome.tabs dan chrome.windows. 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 chrome.ttsEngine API. |
"unlimitedStorage" |
Menyediakan kuota tak terbatas untuk menyimpan data 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 Web SQL Database dan cache aplikasi
(lihat masalah 58985). Selain itu, saat ini fitur ini tidak berfungsi dengan subdomain karakter pengganti seperti
http://*.example.com. |
"vpnProvider" |
Memberi ekstensi Anda akses ke chrome.vpnProvider API. |
"webNavigation" |
Memberi ekstensi Anda akses ke API chrome.webNavigation. |
"webRequest" |
Memberi ekstensi Anda akses ke API chrome.webRequest. |
"webRequestBlocking" |
Wajib jika ekstensi menggunakan API chrome.webRequest dengan cara memblokir. |