説明
chrome.privacy
API を使用して、ユーザーのプライバシーに影響する可能性がある Chrome の機能の使用を管理します。この API は、Chrome の構成を取得および設定するために、API タイプの ChromeSetting プロトタイプを使用します。
権限
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
イベントにリスナーを追加します。比較対象
新しくインストールした拡張機能がユーザーに表示され、
企業ポリシーによって制御がオーバーライドされた場合に、オーバーライドできます。変更をリッスンするには、
クレジット カードの自動入力ステータスです。次のコードで十分です。
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 の例をインストールしてください。 できます。
型
IPHandlingPolicy
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 の内部予測サービスによって行われるアクションにのみ影響します。これは、Web ページによって開始された事前接続や事前接続には影響しません。この設定の値はブール値で、デフォルトは
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 以降有効にすると、クレジット カードのフォームに自動入力するためのオプションが表示されます。この設定の値はブール値で、デフォルトは
true
です。 -
autofillEnabled
types.ChromeSetting<boolean>
<ph type="x-smartling-placeholder"></ph> Chrome 70 以降非推奨privacy.services.autofillAddressEnabled と privacy.services.autofillCreditCardEnabled を使用してください。これは、このリリースの下位互換性を維持するために残され、今後削除される予定です。
有効にすると、フォームへの自動入力の候補が表示されます。この設定の値はブール値で、デフォルトは
true
です。 -
passwordSavingEnabled
types.ChromeSetting<boolean>
パスワード マネージャーを有効にすると、パスワードを保存するかどうかを尋ねるメッセージが表示されます。この設定の値はブール値で、デフォルトは
true
です。 -
safeBrowsingEnabled
types.ChromeSetting<boolean>
この機能が有効になっている場合、Chrome はフィッシングやマルウェアからユーザーを保護するために最善を尽くします。この設定の値はブール値で、デフォルトは
true
です。 -
safeBrowsingExtendedReportingEnabled
types.ChromeSetting<boolean>
有効にすると、セーフ ブラウジングによってページがブロックされたときに、ブロックされているページのコンテンツなどの追加情報が Google に送信されます。この設定の値はブール値で、デフォルトは
false
です。 -
searchSuggestEnabled
types.ChromeSetting<boolean>
この機能を有効にすると、アドレスバーに入力したテキストが既定の検索エンジンに送信されます。既定の検索エンジンでは、それまでに入力した内容に一致する可能性のあるウェブサイトや検索が予測されます。この設定の値はブール値で、デフォルトは
true
です。 -
spellingServiceEnabled
types.ChromeSetting<boolean>
有効にすると、Chrome はウェブサービスを使用してスペルミスを修正します。この設定の値はブール値で、デフォルトは
false
です。 -
translationServiceEnabled
types.ChromeSetting<boolean>
有効にすると、ユーザーの母国語以外のページで翻訳ツールが表示されます。この設定の値はブール値で、デフォルトは
true
です。
websites
Chrome でウェブサイトに提供する情報を指定する設定です。
タイプ
オブジェクト
プロパティ
-
adMeasurementEnabled
types.ChromeSetting<boolean>
Chrome 111 以降無効にすると、Attribution Reporting API と Private 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
です。拡張機能でこの API を無効にするには、値をfalse
に設定します。この API をtrue
に設定しようとすると、エラーがスローされます。 -
hyperlinkAuditingEnabled
types.ChromeSetting<boolean>
有効にすると、Chrome からウェブサイト(
<a ping>
)からのリクエストに対して監査 ping が送信されます。この設定の値はブール値型で、デフォルト値はtrue
です。 -
protectedContentEnabled
types.ChromeSetting<boolean>
Windows と ChromeOS でのみ利用可能: 有効にすると、保護されたコンテンツを実行するために、Chrome からプラグインに一意の ID が付与されます。この設定の値はブール値型で、デフォルト値は
true
です。 -
referrersEnabled
types.ChromeSetting<boolean>
有効にすると、Chrome はリクエストとともに
referer
ヘッダーを送信します。はい。この設定の名前はスペルミスのヘッダーと一致しません。いいえ、変更しません。この設定の値はブール値型で、デフォルト値はtrue
です。 -
types.ChromeSetting<boolean>
Chrome 121 以降無効にすると、[関連ウェブサイト セット] は無効になります。この設定の値はブール値型で、デフォルト値は
true
です。拡張機能でこの API を無効にするには、値をfalse
に設定します。この API をtrue
に設定しようとすると、エラーがスローされます。 -
thirdPartyCookiesAllowed
types.ChromeSetting<boolean>
無効にすると、Chrome でサードパーティのサイトによる Cookie の設定がブロックされます。この設定の値はブール値型で、デフォルト値は
true
です。 -
topicsEnabled
types.ChromeSetting<boolean>
Chrome 111 以降無効にすると、Topics API は無効になります。この設定の値はブール値型で、デフォルト値は
true
です。拡張機能でこの API を無効にするには、値をfalse
に設定します。この API をtrue
に設定しようとすると、エラーがスローされます。