chrome.privacy

الوصف

استخدِم واجهة برمجة التطبيقات chrome.privacy للتحكّم في استخدام الميزات في Chrome التي يمكن أن تؤثر في خصوصية المستخدم. تعتمد واجهة برمجة التطبيقات هذه على النموذج الأولي ChromeSetting من واجهة برمجة التطبيقات types للحصول على إعدادات Chrome وضبطها.

الأذونات

privacy

البيان

يجب الإفصاح عن إذن "الخصوصية" في بيان الإضافة لاستخدام واجهة برمجة التطبيقات. على سبيل المثال:

{
  "name": "My extension",
  ...
  "permissions": [
    "privacy"
  ],
  ...
}

الاستخدام

إنّ قراءة القيمة الحالية لإعداد Chrome أمر بسيط. عليك أولاً العثور على السمة التي تهمّك، ثم استدعاء get() على هذا العنصر لاسترداد قيمته الحالية ومستوى التحكّم في الإضافة. على سبيل المثال، لتحديد ما إذا كانت ميزة "الملء التلقائي" في Chrome مفعّلة، عليك كتابة ما يلي:

chrome.privacy.services.autofillEnabled.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.autofillEnabled.get({}, function(details) {
  if (details.levelOfControl === 'controllable_by_this_extension') {
    chrome.privacy.services.autofillEnabled.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.autofillEnabled.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.
  }
);

أمثلة

لتجربة واجهة برمجة التطبيقات هذه، ثبِّت مثال واجهة برمجة التطبيقات privacy API من مستودع chrome-extension-samples.

الأنواع

IPHandlingPolicy

Chrome 48 والإصدارات الأحدث

سياسة معالجة عنوان IP على WebRTC

تعداد

"default"

"default_public_and_private_interfaces"

"default_public_interface_only"

"disable_non_proxied_udp"

الخصائص

network

الإعدادات التي تؤثر في طريقة تعامل Chrome مع اتصالات الشبكة بشكل عام

النوع

عنصر

الخصائص

  • networkPredictionEnabled

    إذا كانت هذه الميزة مفعّلة، يحاول Chrome تسريع تجربة تصفّح الويب من خلال حلّ إدخالات نظام أسماء النطاقات مسبقًا وفتح اتصالات TCP وSSL بشكل استباقي بالخوادم. لا يؤثر هذا الإعداد إلا في الإجراءات التي تتخذها خدمة التوقّع الداخلية في Chrome. ولا يؤثر في عمليات الجلب المسبق أو الاتصال المسبق التي تبدأها صفحة الويب. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • webRTCIPHandlingPolicy
    Chrome 48 والإصدارات الأحدث

    السماح للمستخدمين بتحديد المقايضات بين أداء الوسائط والخصوصية التي تؤثر في طريقة توجيه زيارات WebRTC ومقدار معلومات العنوان المحلي التي يتم عرضها قيمة هذا الإعداد هي من النوع IPHandlingPolicy، والقيمة التلقائية هي default.

services

الإعدادات التي تفعِّل أو توقف الميزات التي تتطلب خدمات شبكة خارجية تقدّمها Google ومزوّد البحث التلقائي

النوع

عنصر

الخصائص

  • alternateErrorPagesEnabled

    إذا كانت هذه الميزة مفعّلة، يستخدم Chrome إحدى خدمات الويب للمساعدة في حلّ أخطاء التنقل. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • autofillAddressEnabled
    Chrome 70 والإصدارات الأحدث

    إذا كانت هذه الميزة مفعّلة، يقترح Chrome ملء العناوين وبيانات النماذج الأخرى تلقائيًا. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • autofillCreditCardEnabled
    Chrome 70 والإصدارات الأحدث

    إذا كانت هذه الميزة مفعّلة، يقترح Chrome ملء نماذج بطاقات الائتمان تلقائيًا. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • autofillEnabled
    تم إيقاف هذه الميزة نهائيًا منذ Chrome 70

    يُرجى استخدام privacy.services.autofillAddressEnabled وprivacy.services.autofillCreditCardEnabled. سيظل هذا الإعداد متاحًا لتحقيق التوافق مع الإصدارات السابقة في هذا الإصدار، وستتم إزالته في المستقبل.

    إذا كانت هذه الميزة مفعّلة، يقترح Chrome ملء النماذج تلقائيًا. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • passwordSavingEnabled

    إذا كانت هذه الميزة مفعّلة، سيطلب منك مدير كلمات المرور حفظ كلمات المرور. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • safeBrowsingEnabled

    إذا كانت هذه الميزة مفعّلة، يبذل Chrome قصارى جهده لحمايتك من التصيّد الاحتيالي والبرامج الضارة. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • safeBrowsingExtendedReportingEnabled

    إذا كانت هذه الميزة مفعّلة، سيرسل Chrome معلومات إضافية إلى Google عندما تحظر ميزة "التصفّح الآمن" صفحة، مثل محتوى الصفحة المحظورة. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي false.

  • searchSuggestEnabled

    إذا كانت هذه الميزة مفعّلة، يرسل Chrome النص الذي تكتبه في المربّع المتعدد الاستخدامات إلى محرك البحث التلقائي، الذي يقدّم اقتراحات للمواقع الإلكترونية وعمليات البحث التي من المحتمل أن تكون عمليات إكمال لما كتبته حتى الآن. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

  • spellingServiceEnabled

    إذا كانت هذه الميزة مفعّلة، يستخدم Chrome إحدى خدمات الويب للمساعدة في تصحيح الأخطاء الإملائية. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي false.

  • translationServiceEnabled

    إذا كانت هذه الميزة مفعّلة، يقترح Chrome ترجمة الصفحات التي ليست بلغة تقرأها. قيمة هذا الإعداد هي قيمة منطقية، والقيمة التلقائية هي true.

websites

الإعدادات التي تحدّد المعلومات التي يتيحها Chrome للمواقع الإلكترونية

النوع

عنصر

الخصائص

  • adMeasurementEnabled
    Chrome 111 والإصدارات الأحدث

    إذا كانت هذه الميزة غير مفعّلة، يتم إيقاف Attribution Reporting API وPrivate Aggregation API. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true. لا يمكن للإضافات إيقاف واجهات برمجة التطبيقات هذه إلا من خلال ضبط القيمة على false. إذا حاولت ضبط واجهات برمجة التطبيقات هذه على true، سيظهر خطأ.

  • doNotTrackEnabled
    Chrome 65 والإصدارات الأحدث

    إذا كانت هذه الميزة مفعّلة، يرسل Chrome عنوان "Do Not Track" (DNT: 1) مع طلباتك. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي false.

  • fledgeEnabled
    Chrome 111 والإصدارات الأحدث

    إذا كانت هذه الميزة غير مفعّلة، يتم إيقاف Fledge API. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true. لا يمكن للإضافات إيقاف واجهة برمجة التطبيقات هذه إلا من خلال ضبط القيمة على false. إذا حاولت ضبط واجهة برمجة التطبيقات هذه على true، سيظهر خطأ.

  • hyperlinkAuditingEnabled

    إذا كانت هذه الميزة مفعّلة، يرسل Chrome إشعارات تدقيق عندما يطلبها أحد المواقع الإلكترونية (<a ping>). قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true.

  • protectedContentEnabled

    متاحة على نظامَي التشغيل Windows وChromeOS فقط: إذا كانت هذه الميزة مفعّلة، يقدّم Chrome رقم تعريف فريدًا للإضافات من أجل تشغيل المحتوى المحمي. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true.

  • referrersEnabled

    إذا كانت هذه الميزة مفعّلة، يرسل Chrome عناوين referer مع طلباتك. نعم، لا يتطابق اسم هذا الإعداد مع العنوان الذي يحتوي على خطأ إملائي. لا، لن نغيّره. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true.

  • relatedWebsiteSetsEnabled
    Chrome 121 والإصدارات الأحدث

    إذا كانت هذه الميزة غير مفعّلة، يتم إيقاف ميزة "مجموعة المواقع الإلكترونية المرتبطة". قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true. لا يمكن للإضافات إيقاف واجهة برمجة التطبيقات هذه إلا من خلال ضبط القيمة على false. إذا حاولت ضبط واجهة برمجة التطبيقات هذه على true، سيظهر خطأ.

  • thirdPartyCookiesAllowed

    إذا كانت هذه الميزة غير مفعّلة، يحظر Chrome على المواقع الإلكترونية الخارجية ضبط ملفات تعريف الارتباط. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true. لا يمكن للإضافات تفعيل واجهة برمجة التطبيقات هذه في "وضع التصفّح المتخفي"، حيث يتم حظر ملفات تعريف الارتباط الخارجية، ولا يمكن السماح بها إلا على مستوى الموقع الإلكتروني. إذا حاولت ضبط واجهة برمجة التطبيقات هذه على `true` في "وضع التصفّح المتخفي"، سيظهر خطأ.

    ملاحظة: قد تظل المواقع الإلكترونية الفردية قادرة على الوصول إلى ملفات تعريف الارتباط الخارجية عندما تعرض واجهة برمجة التطبيقات هذه القيمة false، إذا كان لديها استثناء صالح أو إذا كانت تستخدم Storage Access API بدلاً من ذلك.

  • topicsEnabled
    Chrome 111 والإصدارات الأحدث

    إذا كانت هذه الميزة غير مفعّلة، يتم إيقاف Topics API. قيمة هذا الإعداد هي من النوع المنطقي، والقيمة التلقائية هي true. لا يمكن للإضافات إيقاف واجهة برمجة التطبيقات هذه إلا من خلال ضبط القيمة على false. إذا حاولت ضبط واجهة برمجة التطبيقات هذه على true، سيظهر خطأ.