বর্ণনা
 ক্রোমের বৈশিষ্ট্যগুলির ব্যবহার নিয়ন্ত্রণ করতে chrome.privacy API ব্যবহার করুন যা ব্যবহারকারীর গোপনীয়তাকে প্রভাবিত করতে পারে৷ এই API টাইপ API-এর ChromeSetting প্রোটোটাইপের উপর নির্ভর করে Chrome-এর কনফিগারেশন পেতে এবং সেট করার জন্য।
অনুমতি
privacyAPI ব্যবহার করার জন্য আপনাকে অবশ্যই আপনার এক্সটেনশনের ম্যানিফেস্টে "গোপনীয়তা" অনুমতি ঘোষণা করতে হবে৷ যেমন:
{
  "name": "My extension",
  ...
  "permissions": [
    "privacy"
  ],
  ...
}
ধারণা এবং ব্যবহার
 একটি Chrome সেটিং এর বর্তমান মান পড়া সোজা। আপনাকে প্রথমে আপনার আগ্রহের সম্পত্তিটি খুঁজে বের করতে হবে, তারপর আপনি সেই বস্তুটির বর্তমান মান এবং আপনার এক্সটেনশনের নিয়ন্ত্রণের স্তর পুনরুদ্ধার করার জন্য সেই বস্তুটিতে get() কল করবেন। উদাহরণস্বরূপ, Chrome এর ক্রেডিট কার্ড অটোফিল বৈশিষ্ট্য সক্ষম কিনা তা নির্ধারণ করতে, আপনি লিখবেন:
chrome.privacy.services.autofillCreditCardEnabled.get({}, function(details) {
  if (details.value) {
    console.log('Autofill is on!');
  } else {
    console.log('Autofill is off!');
  }
});
 একটি সেটিং এর মান পরিবর্তন করা একটু বেশি জটিল, কারণ আপনাকে প্রথমে যাচাই করতে হবে যে আপনার এক্সটেনশন সেটিং নিয়ন্ত্রণ করতে পারে৷ ব্যবহারকারী তাদের সেটিংসে কোনো পরিবর্তন দেখতে পাবেন না যদি আপনার এক্সটেনশনটি একটি সেটিং টগল করে যা হয় এন্টারপ্রাইজ নীতি দ্বারা একটি নির্দিষ্ট মানতে লক করা থাকে ( levelOfControl "not_controllable" এ সেট করা হবে), অথবা যদি অন্য একটি এক্সটেনশন মান নিয়ন্ত্রণ করে ( levelOfControl "controlled_by_other_extensions" এ সেট করা হবে)। set() কল সফল হবে, কিন্তু সেটিংস অবিলম্বে ওভাররাইড করা হবে। যেহেতু এটি বিভ্রান্তিকর হতে পারে, ব্যবহারকারীকে সতর্ক করার পরামর্শ দেওয়া হয় যখন তাদের বেছে নেওয়া সেটিংস ব্যবহারিকভাবে প্রয়োগ করা হয় না।
 এর মানে হল যে আপনার অ্যাক্সেসের স্তর নির্ধারণ করতে আপনার get() পদ্ধতিটি ব্যবহার করা উচিত, এবং তারপর শুধুমাত্র কল set() যদি আপনার এক্সটেনশন সেটিংসের উপর নিয়ন্ত্রণ নিতে পারে (আসলে যদি আপনার এক্সটেনশন সেটিং নিয়ন্ত্রণ করতে না পারে তবে ব্যবহারকারীর বিভ্রান্তি কমাতে বৈশিষ্ট্যটিকে দৃশ্যত নিষ্ক্রিয় করা সম্ভবত একটি ভাল ধারণা):
chrome.privacy.services.autofillCreditCardEnabled.get({}, function(details) {
  if (details.levelOfControl === 'controllable_by_this_extension') {
    chrome.privacy.services.autofillCreditCardEnabled.set({ value: true }, function() {
      if (chrome.runtime.lastError === undefined) {
        console.log("Hooray, it worked!");
      } else {
        console.log("Sadness!", chrome.runtime.lastError);
      }
    });
  }
});
 আপনি যদি সেটিং এর মান পরিবর্তন করতে আগ্রহী হন, তাহলে এর onChange ইভেন্টে একজন শ্রোতা যোগ করুন। অন্যান্য ব্যবহারের মধ্যে, এটি আপনাকে ব্যবহারকারীকে সতর্ক করার অনুমতি দেবে যদি একটি সাম্প্রতিক ইনস্টল করা এক্সটেনশন একটি সেটিং নিয়ন্ত্রণ করে, অথবা যদি এন্টারপ্রাইজ নীতি আপনার নিয়ন্ত্রণকে ওভাররাইড করে। ক্রেডিট কার্ড অটোফিল স্ট্যাটাসের পরিবর্তন শুনতে, উদাহরণস্বরূপ, নিম্নলিখিত কোডটি যথেষ্ট হবে:
chrome.privacy.services.autofillCreditCardEnabled.onChange.addListener(
  function (details) {
    // The new value is stored in `details.value`, the new level of control
    // in `details.levelOfControl`, and `details.incognitoSpecific` will be
    // `true` if the value is specific to Incognito mode.
  }
);
উদাহরণ
এই API ব্যবহার করে দেখতে, chrome-extension-samples repository থেকে গোপনীয়তা API উদাহরণটি ইনস্টল করুন৷
প্রকারভেদ
IPHandlingPolicy
WebRTC-এর আইপি হ্যান্ডলিং নীতি।
এনাম
 "ডিফল্ট"   "ডিফল্ট_পাবলিক_এবং_ব্যক্তিগত_ইন্টারফেস"   "ডিফল্ট_পাবলিক_ইন্টারফেস_শুধু"   "অক্ষম_নন_প্রক্সিড_ইউডিপি" 
বৈশিষ্ট্য
network
সেটিংস যা সাধারণভাবে Chrome-এর নেটওয়ার্ক সংযোগ পরিচালনাকে প্রভাবিত করে৷
টাইপ
বস্তু
বৈশিষ্ট্য
- নেটওয়ার্ক পূর্বাভাস সক্ষমtype.ChromeSetting <বুলিয়ান> যদি সক্ষম করা থাকে, ক্রোম DNS এন্ট্রিগুলি পূর্ব-সমাধান করে এবং সার্ভারে TCP এবং SSL সংযোগগুলিকে আগে থেকেই খোলার মাধ্যমে আপনার ওয়েব ব্রাউজিং অভিজ্ঞতার গতি বাড়ানোর চেষ্টা করে৷ এই পছন্দ শুধুমাত্র Chrome-এর অভ্যন্তরীণ পূর্বাভাস পরিষেবা দ্বারা নেওয়া পদক্ষেপগুলিকে প্রভাবিত করে৷ এটি ওয়েবপেজ-ইনিশিয়েটেড প্রিফেকচ বা প্রি-কানেক্টকে প্রভাবিত করে না। এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- ওয়েবআরটিসিআইপিহ্যান্ডলিং পলিসিChrome 48+ব্যবহারকারীদের মিডিয়া পারফরম্যান্স/গোপনীয়তা ট্রেডঅফগুলি নির্দিষ্ট করার অনুমতি দিন যা WebRTC ট্র্যাফিককে কীভাবে রুট করা হবে এবং কতটা স্থানীয় ঠিকানার তথ্য প্রকাশ করা হবে তা প্রভাবিত করে৷ এই পছন্দের মান হল IPHandlingPolicy টাইপ, defaultথেকে ডিফল্ট।
services
সেটিংস যা Google এবং আপনার ডিফল্ট সার্চ প্রদানকারীর দ্বারা প্রদত্ত তৃতীয় পক্ষের নেটওয়ার্ক পরিষেবাগুলির প্রয়োজন এমন বৈশিষ্ট্যগুলিকে সক্ষম বা অক্ষম করে৷
টাইপ
বস্তু
বৈশিষ্ট্য
- alternateErrorPagesEnabledtype.ChromeSetting <বুলিয়ান> সক্ষম থাকলে, নেভিগেশন ত্রুটিগুলি সমাধান করতে Chrome একটি ওয়েব পরিষেবা ব্যবহার করে৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- স্বয়ংক্রিয়ভাবে পূরণ করা ঠিকানা সক্ষমtype.ChromeSetting <বুলিয়ান> Chrome 70+যদি সক্রিয় থাকে, Chrome স্বয়ংক্রিয়ভাবে ঠিকানা এবং অন্যান্য ফর্ম ডেটা পূরণ করার প্রস্তাব দেয়৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- অটোফিল ক্রেডিটকার্ড সক্ষমtype.ChromeSetting <বুলিয়ান> Chrome 70+সক্ষম হলে, Chrome স্বয়ংক্রিয়ভাবে ক্রেডিট কার্ড ফর্মগুলি পূরণ করার প্রস্তাব দেয়৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- অটোফিল সক্ষমtype.ChromeSetting <বুলিয়ান> Chrome 70 থেকে অবরুদ্ধঅনুগ্রহ করে privacy.services.autofilAddressEnabled এবং privacy.services.autofilCreditCardEnabled ব্যবহার করুন। এটি এই রিলিজে পশ্চাদপদ সামঞ্জস্যের জন্য রয়ে গেছে এবং ভবিষ্যতে সরানো হবে। সক্ষম হলে, Chrome স্বয়ংক্রিয়ভাবে ফর্মগুলি পূরণ করার প্রস্তাব দেয়৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- পাসওয়ার্ড সংরক্ষণ সক্ষমtype.ChromeSetting <বুলিয়ান> সক্রিয় থাকলে, পাসওয়ার্ড ম্যানেজার জিজ্ঞাসা করবে আপনি পাসওয়ার্ড সংরক্ষণ করতে চান কিনা। এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- নিরাপদ ব্রাউজিং সক্ষমtype.ChromeSetting <বুলিয়ান> যদি সক্ষম করা থাকে, ক্রোম আপনাকে ফিশিং এবং ম্যালওয়্যার থেকে রক্ষা করার জন্য যথাসাধ্য চেষ্টা করে৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- safeBrowsingExtendedReportingEnabledtype.ChromeSetting <বুলিয়ান> যদি সক্ষম করা থাকে, সেফব্রাউজিং কোনো পৃষ্ঠাকে ব্লক করলে, যেমন ব্লক করা পৃষ্ঠার বিষয়বস্তু, তখন Chrome Google-কে অতিরিক্ত তথ্য পাঠাবে। এই পছন্দের মান একটি বুলিয়ান, ডিফল্ট করে false।
- সার্চ সাজেস্ট সক্ষমtype.ChromeSetting <বুলিয়ান> যদি সক্ষম করা থাকে, Chrome আপনার ডিফল্ট সার্চ ইঞ্জিনে Omnibox-এ আপনার টাইপ করা পাঠ্য পাঠায়, যা ওয়েবসাইট এবং অনুসন্ধানগুলির পূর্বাভাস প্রদান করে যা সম্ভবত আপনি যা টাইপ করেছেন তার সম্পূর্ণতা। এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
- বানান পরিষেবা সক্ষমtype.ChromeSetting <বুলিয়ান> যদি সক্রিয় থাকে, বানান ত্রুটি সংশোধন করতে সাহায্য করার জন্য Chrome একটি ওয়েব পরিষেবা ব্যবহার করে৷ এই পছন্দের মান একটি বুলিয়ান, ডিফল্ট করে false।
- অনুবাদ পরিষেবা সক্ষমtype.ChromeSetting <বুলিয়ান> সক্রিয় থাকলে, Chrome এমন পৃষ্ঠাগুলিকে অনুবাদ করার প্রস্তাব দেয় যেগুলি আপনি পড়েন এমন ভাষায় নয়৷ এই পছন্দের মানটি একটি বুলিয়ান, trueডিফল্ট।
websites
সেটিংস যা নির্ধারণ করে যে Chrome ওয়েবসাইটগুলিতে কী তথ্য উপলব্ধ করে।
টাইপ
বস্তু
বৈশিষ্ট্য
- বিজ্ঞাপন পরিমাপ সক্ষমtype.ChromeSetting <বুলিয়ান> Chrome 111+অক্ষম থাকলে, অ্যাট্রিবিউশন রিপোর্টিং এপিআই এবং প্রাইভেট অ্যাগ্রিগেশন এপিআই নিষ্ক্রিয় করা হয়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান true। এক্সটেনশনগুলি শুধুমাত্র মানটিকেfalseসেট করে এই APIগুলিকে নিষ্ক্রিয় করতে পারে৷ আপনি যদি এই API গুলিtrueসেট করার চেষ্টা করেন তবে এটি একটি ত্রুটি নিক্ষেপ করবে৷
- doNotTrackEnabledtype.ChromeSetting <বুলিয়ান> Chrome 65+সক্ষম হলে, Chrome আপনার অনুরোধের সাথে 'ডু নট ট্র্যাক' ( DNT: 1) হেডার পাঠায়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মানfalse।
- fledge সক্ষমtype.ChromeSetting <বুলিয়ান> Chrome 111+অক্ষম করা হলে, Fledge API নিষ্ক্রিয় করা হয়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান true। এক্সটেনশনগুলি শুধুমাত্র মানটিকেfalseসেট করে এই API অক্ষম করতে পারে। আপনি যদি এই APIটিকেtrueসেট করার চেষ্টা করেন তবে এটি একটি ত্রুটি ছুঁড়বে৷
- হাইপারলিংক অডিটিং সক্ষমtype.ChromeSetting <বুলিয়ান> যদি সক্ষম করা থাকে, কোনো ওয়েবসাইট ( <a ping>) দ্বারা অনুরোধ করা হলে Chrome অডিটিং পিং পাঠায়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মানtrue।
- সুরক্ষিত বিষয়বস্তু সক্ষমtype.ChromeSetting <বুলিয়ান> শুধুমাত্র Windows এবং ChromeOS-এ উপলভ্য : সক্রিয় থাকলে, সুরক্ষিত সামগ্রী চালানোর জন্য Chrome প্লাগইনগুলিতে একটি অনন্য ID প্রদান করে৷ এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান true।
- রেফারার সক্ষমtype.ChromeSetting <বুলিয়ান> সক্ষম হলে, Chrome আপনার অনুরোধের সাথে refererহেডার পাঠায়। হ্যাঁ, এই পছন্দের নামটি ভুল বানান শিরোনামের সাথে মেলে না৷ না, আমরা এটি পরিবর্তন করতে যাচ্ছি না। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মানtrue।
- type.ChromeSetting <বুলিয়ান> Chrome 121+- অক্ষম হলে, সম্পর্কিত ওয়েবসাইট সেট নিষ্ক্রিয় করা হয়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান - true। এক্সটেনশনগুলি শুধুমাত্র মানটিকে- falseসেট করে এই API অক্ষম করতে পারে। আপনি যদি এই APIটিকে- trueসেট করার চেষ্টা করেন তবে এটি একটি ত্রুটি ছুঁড়বে৷
- তৃতীয় পক্ষের কুকিজ অনুমোদিতtype.ChromeSetting <বুলিয়ান> অক্ষম থাকলে, Chrome তৃতীয় পক্ষের সাইটগুলিকে কুকি সেট করা থেকে ব্লক করে। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান true। এক্সটেনশনগুলি ছদ্মবেশী মোডে এই API সক্ষম নাও করতে পারে, যেখানে তৃতীয় পক্ষের কুকিগুলি ব্লক করা হয় এবং শুধুমাত্র সাইট স্তরে অনুমতি দেওয়া যেতে পারে৷ আপনি যদি ছদ্মবেশীতে এই APIটিকে সত্য হিসাবে সেট করার চেষ্টা করেন তবে এটি একটি ত্রুটি নিক্ষেপ করবে৷দ্রষ্টব্য: পৃথক সাইটগুলি এখনও তৃতীয় পক্ষের কুকি অ্যাক্সেস করতে সক্ষম হতে পারে যখন এই API falseফেরত দেয়, যদি তাদের একটি বৈধ ছাড় থাকে বা তারা পরিবর্তে স্টোরেজ অ্যাক্সেস API ব্যবহার করে।
- বিষয় সক্রিয়type.ChromeSetting <বুলিয়ান> Chrome 111+অক্ষম থাকলে, বিষয় API নিষ্ক্রিয় করা হয়। এই পছন্দের মানটি বুলিয়ান টাইপের, এবং ডিফল্ট মান true। এক্সটেনশনগুলি শুধুমাত্র মানটিকেfalseসেট করে এই API অক্ষম করতে পারে। আপনি যদি এই APIটিকেtrueসেট করার চেষ্টা করেন তবে এটি একটি ত্রুটি ছুঁড়বে৷