বেশিরভাগ এক্সটেনশন API এবং বৈশিষ্ট্যগুলি ব্যবহার করতে, আপনাকে অবশ্যই ম্যানিফেস্টের অনুমতি ক্ষেত্রগুলিতে আপনার এক্সটেনশনের অভিপ্রায় ঘোষণা করতে হবে৷ এক্সটেনশনগুলি সংশ্লিষ্ট ম্যানিফেস্ট কীগুলি ব্যবহার করে নির্দিষ্ট করা নিম্নলিখিত বিভাগের অনুমতিগুলির জন্য অনুরোধ করতে পারে:
-
"permissions"
- পরিচিত স্ট্রিংগুলির একটি তালিকা থেকে আইটেমগুলি রয়েছে৷ পরিবর্তন একটি সতর্কতা ট্রিগার হতে পারে.
-
"optional_permissions"
- ইনস্টলের সময় পরিবর্তে রানটাইমে ব্যবহারকারীর দ্বারা মঞ্জুর করা হয়।
-
"content_scripts.matches"
- এক বা একাধিক ম্যাচ প্যাটার্ন রয়েছে যা কন্টেন্ট স্ক্রিপ্টগুলিকে এক বা একাধিক হোস্টে ইনজেক্ট করতে দেয়। পরিবর্তন একটি সতর্কতা ট্রিগার হতে পারে.
-
"host_permissions"
- এক বা একাধিক ম্যাচ প্যাটার্ন রয়েছে যা এক বা একাধিক হোস্টে অ্যাক্সেস দেয়। পরিবর্তন একটি সতর্কতা ট্রিগার হতে পারে.
-
"optional_host_permissions"
- ইনস্টলের সময় পরিবর্তে রানটাইমে ব্যবহারকারীর দ্বারা মঞ্জুর করা হয়।
আপনার এক্সটেনশন ম্যালওয়্যার দ্বারা আপস করা হলে অনুমতি ক্ষতি সীমিত করতে সাহায্য করে৷ ইন্সটলেশনের আগে বা রানটাইমের সময় ব্যবহারকারীদের সম্মতির জন্য কিছু অনুমতি সতর্কতা প্রদর্শন করা হয়, যেমন সতর্কতা সহ অনুমতিতে বিস্তারিত আছে।
আপনার এক্সটেনশনের কার্যকারিতা যেখানেই অনুমতি দেয় সেখানে ঐচ্ছিক অনুমতিগুলি ব্যবহার করার কথা বিবেচনা করুন, ব্যবহারকারীদের সংস্থান এবং ডেটা অ্যাক্সেসের উপর জ্ঞাত নিয়ন্ত্রণ প্রদান করতে৷
যদি একটি API-এর অনুমতির প্রয়োজন হয়, তাহলে এর ডকুমেন্টেশন ব্যাখ্যা করে কিভাবে এটি ঘোষণা করতে হয়। একটি উদাহরণের জন্য, স্টোরেজ API দেখুন।
উদ্ভাসিত
নিম্নলিখিত একটি ম্যানিফেস্ট ফাইলের অনুমতি বিভাগের একটি উদাহরণ:
manifest.json:
{
"name": "Permissions Extension",
...
"permissions": [
"activeTab",
"contextMenus",
"storage"
],
"optional_permissions": [
"topSites",
],
"host_permissions": [
"https://www.developer.chrome.com/*"
],
"optional_host_permissions":[
"https://*/*",
"http://*/*"
],
...
"manifest_version": 3
}
হোস্ট অনুমতি
হোস্টের অনুমতিগুলি এক্সটেনশনগুলিকে URL-এর মিলিত নিদর্শনগুলির সাথে ইন্টারঅ্যাক্ট করার অনুমতি দেয়৷ কিছু ক্রোম এপিআই-এর নিজস্ব এপিআই অনুমতি ছাড়াও হোস্ট অনুমতির প্রয়োজন হয়, যা প্রতিটি রেফারেন্স পৃষ্ঠায় নথিভুক্ত করা হয়। এখানে কিছু উদাহরণ আছে:
- এক্সটেনশন পরিষেবা কর্মী এবং এক্সটেনশন পৃষ্ঠাগুলি থেকে
fetch()
অনুরোধ করুন৷ -
chrome.tabs
API ব্যবহার করে সংবেদনশীল ট্যাব বৈশিষ্ট্যগুলি (url, title, এবং favIconUrl) পড়ুন এবং জিজ্ঞাসা করুন৷ - প্রোগ্রাম্যাটিকভাবে একটি বিষয়বস্তুর স্ক্রিপ্ট ইনজেক্ট করুন।
-
chrome.webRequest
API এর মাধ্যমে নেটওয়ার্ক অনুরোধগুলি নিরীক্ষণ এবং নিয়ন্ত্রণ করুন৷ -
chrome.cookies
API দিয়ে কুকিজ অ্যাক্সেস করুন। -
chrome.declarativeNetRequest
API ব্যবহার করে অনুরোধ এবং প্রতিক্রিয়া শিরোনামগুলিকে পুনঃনির্দেশ ও সংশোধন করুন৷
সতর্কতা সহ অনুমতি
যখন একটি এক্সটেনশন একাধিক অনুমতির অনুরোধ করে, এবং তাদের মধ্যে অনেকগুলি ইনস্টলেশনের সময় সতর্কতা প্রদর্শন করে, ব্যবহারকারী সতর্কতার একটি তালিকা দেখতে পাবেন, যেমন নিম্নলিখিত উদাহরণে:
ব্যবহারকারীরা সীমিত সতর্কতা সহ একটি এক্সটেনশনকে বিশ্বাস করার সম্ভাবনা বেশি থাকে বা যখন তাদের অনুমতিগুলি ব্যাখ্যা করা হয়। বিপদজনক সতর্কতা এড়াতে ঐচ্ছিক অনুমতি বা কম শক্তিশালী API প্রয়োগ করার কথা বিবেচনা করুন। সতর্কতার জন্য সর্বোত্তম অনুশীলনের জন্য, অনুমতি সতর্কতা নির্দেশিকা দেখুন। নির্দিষ্ট সতর্কতাগুলি অনুমতির রেফারেন্স তালিকায় যে অনুমতিগুলির জন্য তারা প্রয়োগ করে তার সাথে তালিকাভুক্ত করা হয়৷
ম্যানিফেস্ট ফাইলের "host_permissions"
এবং "content_scripts.matches"
ফিল্ডে ম্যাচ প্যাটার্ন যোগ করা বা পরিবর্তন করাও একটি সতর্কতা ট্রিগার করবে। আরও জানতে, আপডেট করার অনুমতি দেখুন।
অ্যাক্সেসের অনুমতি দিন
যদি আপনার এক্সটেনশনটি file://
URL-এ চালানো বা ছদ্মবেশী মোডে কাজ করার প্রয়োজন হয়, ব্যবহারকারীদের অবশ্যই তার বিবরণ পৃষ্ঠায় এক্সটেনশন অ্যাক্সেস দিতে হবে। আপনি আপনার এক্সটেনশন পরিচালনা করুন এর অধীনে বিশদ পৃষ্ঠা খোলার জন্য নির্দেশাবলী পেতে পারেন।
ফাইল URL এবং ছদ্মবেশী পৃষ্ঠাগুলিতে অ্যাক্সেসের অনুমতি দিন
- Chrome-এ এক্সটেনশন আইকনে ডান-ক্লিক করুন।
এক্সটেনশন পরিচালনা করুন নির্বাচন করুন।
ফাইল URL বা ছদ্মবেশী মোডে অ্যাক্সেস সক্ষম করতে নিচে স্ক্রোল করুন।
ব্যবহারকারী অ্যাক্সেসের অনুমতি দিয়েছেন কিনা তা সনাক্ত করতে, আপনি extension.isAllowedIncognitoAccess()
বা extension.isAllowedFileSchemeAccess()
কল করতে পারেন।