chrome.privacy

說明

在 Chrome 中,您可以使用 chrome.privacy API 控制哪些功能會影響使用者隱私。這個 API 需要運用 ChromeSetting 類型 API 原型取得及設定 Chrome 的設定。

權限

privacy

您必須聲明「隱私權」擴充功能資訊清單中具有使用 API 的權限。例如:

{
  "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 事件。9 月 讓您可在最近安裝的擴充功能擷取檔案時,警告使用者。 或企業政策覆寫了控制項。如要監聽 信用卡自動填入狀態,例如以下程式碼即可:

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 安裝隱私 API 範例 Cloud Storage 也提供目錄同步處理功能

類型

IPHandlingPolicy

Chrome 48 以上版本

WebRTC 的 IP 處理政策。

列舉

"default"

"default_public_and_private_interfaces"

"default_public_interface_only"

"disable_non_proxied_udp"

屬性

network

這項設定會影響 Chrome 一般處理網路連線的方式。

類型

物件

屬性

  • networkPredictionEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會預先解析 DNS 項目,並預先開啟伺服器的 TCP 和 SSL 連線,藉此加快網頁瀏覽速度。這項偏好設定只會影響 Chrome 內部預測服務執行的動作。這項設定不會影響網頁啟動的處播或預先連線。此偏好設定值為布林值,預設為 true

  • webRTCIPHandlingPolicy
    Chrome 48 以上版本

    允許使用者指定媒體效能/隱私方面的取捨,這會影響 WebRTC 流量轉送方式,以及本機位址資訊外洩的程度。此偏好設定的值屬於 IPHandlingPolicy 類型,預設為 default

services

這些設定可以啟用或停用需要 Google 和您的預設搜尋引擎的第三方網路服務的功能。

類型

物件

屬性

  • alternateErrorPagesEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會使用網路服務協助解決瀏覽錯誤。此偏好設定值為布林值,預設為 true

  • autofillAddressEnabled

    types.ChromeSetting<boolean>

    Chrome 70 以上版本

    啟用後,Chrome 會顯示自動填入地址和其他表單資料的選項。此偏好設定值為布林值,預設為 true

  • autofillCreditCardEnabled

    types.ChromeSetting<boolean>

    Chrome 70 以上版本

    啟用後,Chrome 會顯示自動填入信用卡表單的選項。此偏好設定值為布林值,預設為 true

  • autofillEnabled

    types.ChromeSetting<boolean>

    自 Chrome 70 版起已淘汰

    請使用 privacy.services.autofillAddressEnabled 和 privacy.services.autofillCreditCardEnabled。為確保這個版本的回溯相容性,此版本將於日後移除。

    啟用後,Chrome 會顯示自動填入表單的選項。此偏好設定值為布林值,預設為 true

  • passwordSavingEnabled

    types.ChromeSetting<boolean>

    如果啟用,密碼管理工具會詢問是否要儲存密碼。此偏好設定值為布林值,預設為 true

  • safeBrowsingEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會盡可能保護你不受網路釣魚和惡意軟體的侵擾。此偏好設定值為布林值,預設為 true

  • safeBrowsingExtendedReportingEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會在安全瀏覽功能封鎖網頁時傳送額外資訊 (例如遭封鎖的網頁內容),此偏好設定值為布林值,預設為 false

  • searchSuggestEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會將您在網址列中輸入的文字傳送至預設搜尋引擎,該搜尋引擎會針對您目前輸入的內容,提供預測的網站和搜尋字詞建議。此偏好設定值為布林值,預設為 true

  • spellingServiceEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會使用網路服務來協助修正拼字錯誤。此偏好設定值為布林值,預設為 false

  • translationServiceEnabled

    types.ChromeSetting<boolean>

    啟用後,Chrome 會詢問是否將網頁翻譯成您所用的語言。此偏好設定值為布林值,預設為 true

websites

決定 Chrome 提供給網站的資訊的設定。

類型

物件

屬性

  • adMeasurementEnabled

    types.ChromeSetting<boolean>

    Chrome 111 以上版本

    如果停用,Attribution Reporting APIPrivate Aggregation API 會停用。此偏好設定的值為布林值,預設值為 true。擴充功能只能將值設為 false 來停用這些 API。如果嘗試將這些 API 設為 true,就會發生錯誤。

  • doNotTrackEnabled

    types.ChromeSetting<boolean>

    Chrome 65 以上版本

    啟用後,Chrome 會傳送「Do Not Track」(DNT: 1) 標頭。此偏好設定的值為布林值,預設值為 false

  • fledgeEnabled

    types.ChromeSetting<boolean>

    Chrome 111 以上版本

    如果停用 Fledge API,系統就會停用。此偏好設定的值為布林值,預設值為 true。只有將值設為 false 即可停用這個 API。如果您嘗試將這個 API 設為 true,則會發生錯誤。

  • hyperlinkAuditingEnabled

    types.ChromeSetting<boolean>

    如果啟用這個選項,Chrome 會在網站 (<a ping>) 要求時,傳送稽核連線偵測 (ping)。這項偏好設定的值為布林值,預設值為 true

  • protectedContentEnabled

    types.ChromeSetting&lt;boolean&gt;

    僅適用於 Windows 和 ChromeOS:啟用後,Chrome 會提供外掛程式的專屬 ID,以便執行受保護的內容。此偏好設定的值為布林值,預設值為 true

  • referrersEnabled

    types.ChromeSetting&lt;boolean&gt;

    如果啟用這個選項,Chrome 會在要求中傳送 referer 標頭。是,這項偏好設定的名稱與拼寫錯誤的標題不符。不會,我們不會更改設定。此偏好設定的值為布林值,預設值為 true

  • relatedWebsiteSetsEnabled

    types.ChromeSetting&lt;boolean&gt;

    Chrome 121 以上版本

    如果停用,系統會停用「相關網站集」。此偏好設定的值為布林值,預設值為 true。只有將值設為 false 即可停用這個 API。如果您嘗試將這個 API 設為 true,則會發生錯誤。

  • thirdPartyCookiesAllowed

    types.ChromeSetting&lt;boolean&gt;

    如果停用,Chrome 會禁止第三方網站設定 Cookie。此偏好設定的值為布林值,預設值為 true

  • topicsEnabled

    types.ChromeSetting&lt;boolean&gt;

    Chrome 111 以上版本

    如果停用,系統會停用 Topics API。此偏好設定的值為布林值,預設值為 true。只有將值設為 false 即可停用這個 API。如果您嘗試將這個 API 設為 true,則會發生錯誤。