Untuk menggunakan sebagian besar Chrome.* API, ekstensi atau aplikasi Anda harus mendeklarasikan intent-nya di kolom "izin" manifest. 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 malware. Beberapa izin juga ditampilkan kepada pengguna sebelum penginstalan, seperti yang dijelaskan dalam Peringatan Izin.
Jika API mengharuskan Anda mendeklarasikan izin dalam manifes, dokumentasi API tersebut akan memberi tahu 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 memulai lebih awal dan berhenti lebih lambat, sehingga aplikasi dan ekstensi dapat memiliki masa pakai yang lebih lama. Jika aplikasi yang dihosting, aplikasi yang dipaketkan, atau ekstensi yang diinstal memiliki izin "latar belakang", Chrome akan berjalan (secara tidak terlihat) segera setelah pengguna login ke komputernya—sebelum pengguna meluncurkan Chrome. Izin "latar belakang" juga membuat Chrome terus berjalan (bahkan setelah jendela terakhirnya ditutup) hingga pengguna secara eksplisit keluar dari Chrome. Catatan: Aplikasi dan ekstensi yang dinonaktifkan diperlakukan seolah-olah tidak diinstal.
Anda biasanya menggunakan izin "latar belakang" dengan halaman latar belakang, halaman peristiwa, atau (untuk aplikasi yang dihosting) jendela latar belakang. |
"bookmarks" |
Memberi ekstensi Anda akses ke chrome.bookmarks API. |
"browsingData" |
Memberi ekstensi Anda akses ke chrome.browsingData API. |
"certificateProvider" |
Memberi ekstensi Anda akses ke chrome.certificateProvider API. |
"clipboardRead" |
Wajib 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; sebaiknya
digunakan untuk ekstensi dan aplikasi yang dipaketkan. |
"contentSettings" |
Memberi ekstensi Anda akses ke chrome.contentSettings API. |
"contextMenus" |
Memberi ekstensi Anda akses ke API chrome.contextMenus. |
"cookies" |
Memberi ekstensi Anda akses ke chrome.cookies API. |
"debugger" |
Memberi ekstensi Anda akses ke chrome.debugger API. |
"declarativeContent" |
Memberi ekstensi Anda akses ke chrome.declarativeContent API. |
"declarativeNetRequest" |
Memberi ekstensi Anda akses ke chrome.declarativeNetRequest API. |
"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 chrome.documentScan API. |
"downloads" |
Memberi ekstensi Anda akses ke chrome.downloads API. |
"enterprise.deviceAttributes" |
Memberi ekstensi Anda akses ke chrome.enterprise.deviceAttributes API. |
"enterprise.hardwarePlatform" |
Memberi ekstensi Anda akses ke chrome.enterprise.hardwarePlatform API. |
"enterprise.networkingAttributes" |
Memberi ekstensi Anda akses ke chrome.enterprise.networkingAttributes API. |
"enterprise.platformKeys" |
Memberi ekstensi Anda akses ke chrome.enterprise.platformKeys API. |
"experimental" |
Wajib ada 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 chrome.fontSettings API. |
"gcm" |
Memberi ekstensi Anda akses ke chrome.gcm API. |
"geolocation" |
Mengizinkan ekstensi atau aplikasi menggunakan geolocation API tanpa meminta izin kepada pengguna. |
"history" |
Memberi ekstensi Anda akses ke chrome.history API. |
"identity" |
Memberi ekstensi Anda akses ke chrome.identity API. |
"idle" |
Memberi ekstensi Anda akses ke chrome.idle API. |
"loginState" |
Memberi ekstensi Anda akses ke API chrome.loginState. |
"management" |
Memberi ekstensi Anda akses ke chrome.management API. |
"nativeMessaging" |
Memberikan akses ekstensi Anda ke API pesan native. |
"notifications" |
Memberi ekstensi Anda akses ke chrome.notifications API. |
"pageCapture" |
Memberi ekstensi Anda akses ke chrome.pageCapture API. |
"platformKeys" |
Memberi ekstensi Anda akses ke chrome.platformKeys API. |
"power" |
Memberi ekstensi Anda akses ke chrome.power API. |
"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 chrome.privacy API. |
"processes" |
Memberi ekstensi Anda akses ke chrome.processes API. |
"proxy" |
Memberi ekstensi Anda akses ke chrome.proxy API. |
"scripting" |
Memberi ekstensi Anda akses ke chrome.scripting API. |
"search" |
Memberi ekstensi Anda akses ke API chrome.search. |
"sessions" |
Memberi ekstensi Anda akses ke chrome.sessions API. |
"signedInDevices" |
Memberi ekstensi Anda akses ke chrome.signedInDevices API. |
"storage" |
Memberi ekstensi Anda akses ke chrome.storage API. |
"system.cpu" |
Memberi ekstensi Anda akses ke chrome.system.cpu API. |
"system.display" |
Memberi ekstensi Anda akses ke API chrome.system.display. |
"system.memory" |
Memberi ekstensi Anda akses ke chrome.system.memory API. |
"system.storage" |
Memberi ekstensi Anda akses ke API chrome.system.storage. |
"tabCapture" |
Memberi ekstensi Anda akses ke chrome.tabCapture API. |
"tabGroups" |
Memberi ekstensi Anda akses ke API chrome.tabGroups. |
"tabs" |
Memberi ekstensi Anda akses ke kolom dengan hak istimewa dari 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 chrome.tts API. |
"ttsEngine" |
Memberi ekstensi Anda akses ke chrome.ttsEngine API. |
"unlimitedStorage" |
Memberikan kuota yang tidak 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. |
"wallpaper" |
Memberi ekstensi Anda akses ke chrome.wallpaper API. |
"webNavigation" |
Memberi ekstensi Anda akses ke chrome.webNavigation API. |
"webRequest" |
Memberi ekstensi Anda akses ke API chrome.webRequest. |
"webRequestBlocking" |
Diperlukan jika ekstensi menggunakan chrome.webRequest API dengan cara pemblokiran. |