refresh date: 2026-09-25 robots: noindex
Описание
Используйте API chrome.privacy, чтобы управлять функциями Chrome, которые могут повлиять на конфиденциальность пользователей. Для получения и задания конфигурации Chrome этот API использует прототип ChromeSetting типа API.
Разрешения
privacyМанифест
Чтобы использовать API, необходимо объявить разрешение 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.
}
);
Примеры
Чтобы попробовать этот API, установите пример Privacy API из репозитория chrome-extension-samples.
Типы
AutofillBlockedType
Категории данных автозаполнения.
Перечисление
"contact_info"
"payments"
"identity_docs"
"travel"
"all"
IPHandlingPolicy
Правила обработки IP-адресов в WebRTC.
Перечисление
"default"
"default_public_and_private_interfaces"
"default_public_interface_only"
"disable_non_proxied_udp"
Свойства
network
Настройки, которые влияют на то, как Chrome обрабатывает сетевые подключения.
Тип
Объект
Свойства
-
networkPredictionEnabled
types.ChromeSetting<boolean>
Если правило включено, Chrome пытается ускорить работу в интернете, предварительно разрешая записи DNS, упреждающе открывая подключения TCP и SSL к серверам и выполняя предзагрузку страниц. Если отключить этот параметр, владельцы сайтов не смогут использовать упреждающую загрузку контента (например, предварительное извлечение или отрисовку с помощью Speculation Rules API). Она не влияет на предварительные подключения и упреждающие запросы DNS, инициированные веб-страницей. Значение этого параметра является логическим, по умолчанию –
true. -
webRTCIPHandlingPolicyChrome 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 будет отправлять в Google дополнительную информацию, например контент заблокированной страницы. Значение этого параметра является логическим, по умолчанию –
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 API и Private Aggregation API будут деактивированы. Значение этого параметра имеет логический тип, а значение по умолчанию –
true. Расширения могут только отключать эти API, задавая значениеfalse. Если вы попытаетесь задать для этих API значениеtrue, возникнет ошибка. -
doNotTrackEnabled
types.ChromeSetting<boolean>
Chrome 65 и более поздних версий;Если правило включено, Chrome отправляет заголовок Do Not Track (
DNT: 1) вместе с запросами. Значение этого параметра имеет логический тип, а значение по умолчанию –false. -
fledgeEnabled
types.ChromeSetting<boolean>
Chrome 111 и более поздних версийЕсли правило отключено, Fledge API не работает. Значение этого параметра имеет логический тип, а значение по умолчанию –
true. Расширения могут только отключать этот API, задавая значениеfalse. Если вы попытаетесь задать для этого API значениеtrue, произойдет ошибка. -
hyperlinkAuditingEnabled
types.ChromeSetting<boolean>
Если правило включено, Chrome отправляет эхо-запросы аудита по запросу сайта (
<a ping>). Значение этого правила относится к логическому типу, а значение по умолчанию –true. -
protectedContentEnabled
types.ChromeSetting<boolean>
Доступно только в Windows и ChromeOS. Если правило включено, Chrome предоставляет плагинам уникальный идентификатор для воспроизведения защищенного контента. Значение этого параметра имеет логический тип, а значение по умолчанию –
true. -
referrersEnabled
types.ChromeSetting<boolean>
Если правило включено, Chrome отправляет заголовки
refererс вашими запросами. Да, название этого параметра не совпадает с заголовком, в котором допущена ошибка. Нет, мы не собираемся его менять. Значение этого параметра имеет логический тип, а значение по умолчанию –true. -
thirdPartyCookiesAllowed
types.ChromeSetting<boolean>
Если правило отключено, Chrome запрещает сторонним сайтам сохранять файлы cookie. Значение этого параметра имеет логический тип, а значение по умолчанию –
true. Расширения не могут включать этот API в режиме инкогнито, в котором сторонние файлы cookie блокируются и разрешить их сохранять можно только для отдельного сайта. Если вы попытаетесь установить для этого API значение true в режиме инкогнито, возникнет ошибка.Примечание. Отдельные сайты могут по-прежнему иметь доступ к сторонним файлам cookie, когда этот API возвращает
false, если у них есть действующее исключение или они используют Storage Access API. -
topicsEnabled
types.ChromeSetting<boolean>
Chrome 111 и более поздних версийЕсли правило отключено, Topics API деактивирован. Значение этого параметра имеет логический тип, а значение по умолчанию –
true. Расширения могут только отключать этот API, задавая значениеfalse. Если вы попытаетесь задать для этого API значениеtrue, произойдет ошибка.