अनुमतियों का एलान करना

ज़्यादातर Chrome का इस्तेमाल करने के लिए.* एपीआई, आपके एक्सटेंशन या ऐप्लिकेशन को "अनुमतियां" में अपने इंटेंट के बारे में बताना होगा फ़ील्ड मेनिफ़ेस्ट में से एक को चुनें. हर अनुमति या तो ज्ञात स्ट्रिंग की सूची में से एक हो सकती है (जैसे कि "जियोलोकेशन") या मिलते-जुलते पैटर्न से मिलता है. यह पैटर्न, एक या एक से ज़्यादा होस्ट का ऐक्सेस देता है. अनुमतियां इन कामों में मदद करती हैं अगर आपके एक्सटेंशन या ऐप्लिकेशन को मैलवेयर ने हैक कर लिया है, तो नुकसान को सीमित करें. कुछ अनुमतियां भी दिखाई गई हैं इंस्टॉल करने से पहले उपयोगकर्ताओं को दिखाना चाहिए, जैसा कि अनुमति की चेतावनियों में बताया गया है.

अगर किसी एपीआई के लिए आपको मेनिफ़ेस्ट में अनुमति का एलान करना ज़रूरी है, तो उसके दस्तावेज़ से आपको पता चलता है कि ऐसा किया जा सकता है. उदाहरण के लिए, स्टोरेज पेज पर "स्टोरेज" का एलान करने का तरीका बताया गया है अनुमति.

मेनिफ़ेस्ट फ़ाइल में दी जाने वाली अनुमतियों का एक उदाहरण यहां दिया गया है:

"permissions": [
  "tabs",
  "bookmarks",
  "http://www.blogger.com/",
  "http://*.google.com/",
  "unlimitedStorage"
],

यहां दी गई टेबल में, मौजूदा समय में उपलब्ध अनुमतियों की सूची दी गई है:

अनुमति ब्यौरा
"activeTab" ऐसे अनुरोध जिनमें activeTab के मुताबिक एक्सटेंशन को अनुमतियां दी गई हैं स्पेसिफ़िकेशन.
"alarms" यह आपके एक्सटेंशन को chrome.alarms एपीआई का ऐक्सेस देता है.
"background"

Chrome को जल्दी शुरू और देर से शट डाउन करता है, ताकि ऐप्लिकेशन और एक्सटेंशन को ज़्यादा समय तक इस्तेमाल किया जा सके ज़िंदगी.

जब इंस्टॉल किए गए किसी भी होस्ट किए गए ऐप्लिकेशन, पैकेज किए गए ऐप्लिकेशन या एक्सटेंशन में "बैकग्राउंड" मौजूद हो अनुमति, Chrome चलता है (जाहिर तौर पर नहीं दिखता). "बैकग्राउंड" अनुमति से Chrome तब तक चलता रहेगा (पिछली विंडो बंद होने के बाद भी), जब तक उपयोगकर्ता साफ़ तौर पर ऐसा नहीं करता Chrome को छोड़ देता है.

ध्यान दें: बंद किए गए ऐप्लिकेशन और एक्सटेंशन को ऐसा माना जाता है जैसे वे इंस्टॉल किया गया.

आम तौर पर, "बैकग्राउंड" में बैकग्राउंड पेज, इवेंट पेज या (होस्ट किए गए ऐप्लिकेशन के लिए) बैकग्राउंड विंडो की अनुमति होनी चाहिए.

"bookmarks" यह आपके एक्सटेंशन को chrome.bookmarks एपीआई का ऐक्सेस देता है.
"browsingData" यह आपके एक्सटेंशन को chrome.browsingData एपीआई का ऐक्सेस देता है.
"certificateProvider" यह आपके एक्सटेंशन को chrome.certificateProvider API का ऐक्सेस देता है.
"clipboardRead" अगर एक्सटेंशन या ऐप्लिकेशन, document.execCommand('paste') का इस्तेमाल करता है, तो यह ज़रूरी है.
"clipboardWrite" इससे पता चलता है कि एक्सटेंशन या ऐप्लिकेशन, document.execCommand('copy') का इस्तेमाल करता है या document.execCommand('cut'). यह अनुमति होस्ट किए गए ऐप्लिकेशन के लिए ज़रूरी है; यह सुझाया गया है एक्सटेंशन और पैकेज्ड ऐप्स के लिए है.
"contentSettings" यह आपके एक्सटेंशन को chrome.contentSettings एपीआई का ऐक्सेस देता है.
"contextMenus" यह आपके एक्सटेंशन को chrome.contextMenus एपीआई का ऐक्सेस देता है.
"cookies" यह आपके एक्सटेंशन को chrome.cookies एपीआई का ऐक्सेस देता है.
"debugger" यह आपके एक्सटेंशन को chrome.debugger एपीआई का ऐक्सेस देता है.
"declarativeContent" यह आपके एक्सटेंशन को chrome.declarativeContent एपीआई का ऐक्सेस देता है.
"declarativeNetRequest" यह आपके एक्सटेंशन को chrome.declarativeNetRequest एपीआई का ऐक्सेस देता है.
"declarativeNetRequestFeedback" यह एक्सटेंशन, chrome.declarativeNetRequest एपीआई में मौजूद इवेंट और तरीकों का ऐक्सेस देता है. इससे डिक्लेरेटिव टोन में जानकारी दी जाती है नियम मेल खाते हैं.
"declarativeWebRequest" यह आपके एक्सटेंशन को chrome.declarativeWebRequest एपीआई का ऐक्सेस देता है.
"desktopCapture" यह आपके एक्सटेंशन को chrome.desktopCapture API का ऐक्सेस देता है.
"documentScan" यह आपके एक्सटेंशन को chrome.documentScan एपीआई का ऐक्सेस देता है.
"downloads" यह आपके एक्सटेंशन को chrome.downloads API का ऐक्सेस देता है.
"enterprise.deviceAttributes" यह आपके एक्सटेंशन को chrome.enterprise.deviceAttributes एपीआई का ऐक्सेस देता है.
"enterprise.hardwarePlatform" यह आपके एक्सटेंशन को chrome.enterprise.hardwarePlatform एपीआई का ऐक्सेस देता है.
"enterprise.networkingAttributes" यह आपके एक्सटेंशन को chrome.enterprise.networkingAttributes एपीआई का ऐक्सेस देता है.
"enterprise.platformKeys" यह आपके एक्सटेंशन को chrome.enterprise.platformKeys एपीआई का ऐक्सेस देता है.
"experimental" अगर एक्सटेंशन या ऐप्लिकेशन किसी भी chrome.experimental* का इस्तेमाल करता है, तो ज़रूरी है.* APIs.
"fileBrowserHandler" यह आपके एक्सटेंशन को chrome.fileBrowserHandler एपीआई का ऐक्सेस देता है.
"fileSystemProvider" यह आपके एक्सटेंशन को chrome.fileSystemProvider एपीआई का ऐक्सेस देता है.
"fontSettings" यह आपके एक्सटेंशन को chrome.fontSettings एपीआई का ऐक्सेस देता है.
"gcm" यह आपके एक्सटेंशन को chrome.gcm API का ऐक्सेस देता है.
"geolocation" इससे एक्सटेंशन या ऐप्लिकेशन को, उपयोगकर्ता को बिना प्रॉम्प्ट के जियोलोकेशन एपीआई का इस्तेमाल करने की अनुमति मिलती है अनुमति.
"history" यह आपके एक्सटेंशन को chrome.history एपीआई का ऐक्सेस देता है.
"identity" यह आपके एक्सटेंशन को chrome.identity एपीआई का ऐक्सेस देता है.
"idle" यह आपके एक्सटेंशन को chrome.idle एपीआई का ऐक्सेस देता है.
"loginState" यह आपके एक्सटेंशन को chrome.loginState एपीआई का ऐक्सेस देता है.
"management" यह आपके एक्सटेंशन को chrome.management एपीआई का ऐक्सेस देता है.
"nativeMessaging" यह आपके एक्सटेंशन को नेटिव मैसेजिंग एपीआई का ऐक्सेस देता है.
"notifications" यह आपके एक्सटेंशन को chrome.notifications एपीआई का ऐक्सेस देता है.
"pageCapture" यह आपके एक्सटेंशन को chrome.pageCapture एपीआई का ऐक्सेस देता है.
"platformKeys" यह आपके एक्सटेंशन को chrome.platformKeys एपीआई का ऐक्सेस देता है.
"power" आपके एक्सटेंशन को chrome.power एपीआई का ऐक्सेस देता है.
"printerProvider" यह आपके एक्सटेंशन को chrome.printerProvider एपीआई का ऐक्सेस देता है.
"printing" यह आपके एक्सटेंशन को chrome.printing एपीआई का ऐक्सेस देता है.
"printingMetrics" यह आपके एक्सटेंशन को chrome.printingMetrics एपीआई का ऐक्सेस देता है.
"privacy" यह आपके एक्सटेंशन को chrome.privacy एपीआई का ऐक्सेस देता है.
"processes" यह आपके एक्सटेंशन को chrome.processes एपीआई का ऐक्सेस देता है.
"proxy" यह आपके एक्सटेंशन को chrome.proxy एपीआई का ऐक्सेस देता है.
"scripting" यह आपके एक्सटेंशन को chrome.scripting एपीआई का ऐक्सेस देता है.
"sessions" यह आपके एक्सटेंशन को chrome.sessions एपीआई का ऐक्सेस देता है.
"signedInDevices" यह आपके एक्सटेंशन को chrome.signedInDevices API का ऐक्सेस देता है.
"storage" यह आपके एक्सटेंशन को chrome.storage एपीआई का ऐक्सेस देता है.
"system.cpu" यह आपके एक्सटेंशन को chrome.system.cpu एपीआई का ऐक्सेस देता है.
"system.display" यह आपके एक्सटेंशन को chrome.system.display एपीआई का ऐक्सेस देता है.
"system.memory" यह आपके एक्सटेंशन को chrome.system.memory एपीआई का ऐक्सेस देता है.
"system.storage" यह आपके एक्सटेंशन को chrome.system.storage एपीआई का ऐक्सेस देता है.
"tabCapture" यह आपके एक्सटेंशन को chrome.tabCapture एपीआई का ऐक्सेस देता है.
"tabGroups" आपके एक्सटेंशन को chrome.tabGroups API का ऐक्सेस देता है.
"tabs" यह आपके एक्सटेंशन को ऐसे Tab ऑब्जेक्ट के खास फ़ील्ड का ऐक्सेस देता है जिनका इस्तेमाल कई एपीआई में किया जाता है इसमें chrome.tabs और chrome.windows शामिल है. तय सीमा में बहुत सी स्थितियों में, एक्सटेंशन का इस्तेमाल करने के लिए, आपको "tabs" अनुमति का एलान करने की ज़रूरत नहीं होगी इन एपीआई का इस्तेमाल कर रहे हैं.
"topSites" आपके एक्सटेंशन को chrome.topSites एपीआई का ऐक्सेस देता है.
"tts" यह आपके एक्सटेंशन को chrome.tts एपीआई का ऐक्सेस देता है.
"ttsEngine" यह आपके एक्सटेंशन को chrome.ttsEngine एपीआई का ऐक्सेस देता है.
"unlimitedStorage" यह क्लाइंट-साइड डेटा, जैसे कि डेटाबेस और लोकल स्टोरेज फ़ाइलों को सेव करने के लिए अनलिमिटेड कोटा उपलब्ध कराता है. इस अनुमति के बिना, एक्सटेंशन या ऐप्लिकेशन की लोकल मेमोरी 5 एमबी तक सीमित हो जाएगी.
ध्यान दें: यह अनुमति सिर्फ़ वेब एसक्यूएल डेटाबेस और ऐप्लिकेशन की कैश मेमोरी पर लागू होती है (समस्या 58985 देखें). साथ ही, फ़िलहाल यह वाइल्डकार्ड के साथ काम नहीं करता है सबडोमेन जैसे कि http://*.example.com.
"vpnProvider" यह आपके एक्सटेंशन को chrome.vpnProvider एपीआई का ऐक्सेस देता है.
"wallpaper" यह आपके एक्सटेंशन को chrome.wallpaper एपीआई का ऐक्सेस देता है.
"webNavigation" यह आपके एक्सटेंशन को chrome.webNavigation एपीआई का ऐक्सेस देता है.
"webRequest" यह आपके एक्सटेंशन को chrome.webRequest एपीआई का ऐक्सेस देता है.
"webRequestBlocking" अगर एक्सटेंशन chrome.webRequest एपीआई का इस्तेमाल ब्लॉक करने वाले तरीके से करता है, तो इसका इस्तेमाल करना ज़रूरी है.