Descrizione
Usa l'API chrome.privacy
per controllare l'utilizzo delle funzionalità di Chrome che possono influire sulla privacy dell'utente. Questa API si basa sul prototipo ChromeSetting dell'API di tipo per recuperare e impostare la configurazione di Chrome.
Autorizzazioni
privacy
Manifest
Devi dichiarare il "privacy" nel manifest dell'estensione per utilizzare l'API. Ad esempio:
{
"name": "My extension",
...
"permissions": [
"privacy"
],
...
}
Utilizzo
La lettura del valore corrente di un'impostazione di Chrome è semplice. Per prima cosa dovrai trovare
che ti interessa, dovrai chiamare get()
su quell'oggetto per recuperarne
valore corrente e il livello di controllo
dell'estensione. Ad esempio, per stabilire se la compilazione automatica di Chrome
è abilitata, dovresti scrivere:
chrome.privacy.services.autofillEnabled.get({}, function(details) {
if (details.value) {
console.log('Autofill is on!');
} else {
console.log('Autofill is off!');
}
});
La modifica del valore di un'impostazione è un po' più complessa, semplicemente perché è necessario prima verificare
che l'estensione possa controllare l'impostazione. L'utente non vedrà alcuna modifica delle sue impostazioni se
l'estensione attiva/disattiva un'impostazione bloccata a un valore specifico dai criteri aziendali
(levelOfControl
verrà impostato su "not_controllable") o se un'altra estensione controlla il
(levelOfControl
verrà impostato su "controlled_by_other_extensions"). La chiamata a set()
ma l'impostazione verrà subito ignorata. Poiché ciò potrebbe creare confusione, è consigliabile
per avvisare l'utente quando le impostazioni che ha scelto non sono state applicate nella pratica.
Ciò significa che devi utilizzare il metodo get()
per determinare il tuo livello di accesso e che solo
chiama set()
se la tua estensione può acquisire il controllo dell'impostazione (di fatto se l'estensione non può
controlla l'impostazione, probabilmente sarebbe opportuno disabilitare visivamente la funzionalità per ridurre
confusione):
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);
}
});
}
});
Se ti interessa apportare modifiche al valore di un'impostazione, aggiungi un listener al relativo evento onChange
. Tra
per altri usi, ti consentirà di avvisare l'utente se un'estensione installata più di recente viene intercettata
controllo di un'impostazione o se un criterio aziendale ha la precedenza sul tuo controllo. Per ascoltare le modifiche apportate a
È sufficiente lo stato della compilazione automatica, ad esempio il seguente codice:
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.
}
);
Esempi
Per provare questa API, installa l'esempio dell'API Privacy da chrome-extension-samples repository Git.
Tipi
IPHandlingPolicy
Le norme di gestione IP di WebRTC.
Enum
"default"
"default_public_and_private_interfaces"
"default_public_interface_only"
"disable_non_proxied_udp"
Proprietà
network
Impostazioni che influenzano la gestione delle connessioni di rete in generale da parte di Chrome.
Tipo
oggetto
Proprietà
-
networkPredictionEnabled
types.ChromeSetting<boolean>
Se questa impostazione è attiva, Chrome tenta di velocizzare la navigazione sul web risolvendo preventivamente le voci DNS e aprendo preventivamente le connessioni TCP e SSL ai server. Questa preferenza influisce solo sulle azioni eseguite dal servizio di previsione interno di Chrome. Non influisce sulle prefetture o sulle preconnessioni avviate nelle pagine web. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
webRTCIPHandlingPolicyChrome 48 e versioni successive .
Consenti agli utenti di specificare i compromessi in termini di privacy/rendimento dei contenuti multimediali che influiscono sul modo in cui verrà instradato il traffico WebRTC e sulla quantità di informazioni sugli indirizzi locali esposte. Il valore di questa preferenza è di tipo IPhandlingPolicy, il valore predefinito è
default
.
services
Impostazioni che attivano o disattivano funzionalità che richiedono servizi di rete di terze parti forniti da Google e dal tuo provider di ricerca predefinito.
Tipo
oggetto
Proprietà
-
alternateErrorPagesEnabled
types.ChromeSetting<boolean>
Se questa impostazione è attiva, Chrome utilizza un servizio web per risolvere gli errori di navigazione. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
autofillAddressEnabled
types.ChromeSetting<boolean>
Chrome 70 e versioni successive .Se questa impostazione è attiva, Chrome propone di inserire automaticamente indirizzi e altri dati dei moduli. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
autofillCreditCardEnabled
types.ChromeSetting<boolean>
Chrome 70 e versioni successive .Se questa impostazione è attiva, Chrome propone di compilare automaticamente i moduli per le carte di credito. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
autofillEnabled
types.ChromeSetting<boolean>
Ritirato da Chrome 70Utilizza privacy.services.autofillAddressEnabled e privacy.services.autofillCreditCardEnabled. Questo valore rimane per la compatibilità con le versioni precedenti di questa release e verrà rimosso in futuro.
Se questa impostazione è attiva, Chrome propone di compilare automaticamente i moduli. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
passwordSavingEnabled
types.ChromeSetting<boolean>
Se l'opzione è attiva, Gestore delle password ti chiederà se vuoi salvare le password. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
safeBrowsingEnabled
types.ChromeSetting<boolean>
Se la funzionalità è attiva, Chrome fa del suo meglio per proteggerti da phishing e malware. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
safeBrowsingExtendedReportingEnabled
types.ChromeSetting<boolean>
Se la funzionalità è attiva, Chrome invia informazioni aggiuntive a Google quando Navigazione sicura blocca una pagina, ad esempio i contenuti della pagina bloccata. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
false
. -
searchSuggestEnabled
types.ChromeSetting<boolean>
Se questa impostazione è attiva, Chrome invia il testo digitato nella omnibox al tuo motore di ricerca predefinito, che fornisce previsioni sui siti web e sulle ricerche che potrebbero essere completamenti del testo digitato fino a quel momento. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
. -
spellingServiceEnabled
types.ChromeSetting<boolean>
Se questa impostazione è attiva, Chrome utilizza un servizio web per correggere gli errori ortografici. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
false
. -
translationServiceEnabled
types.ChromeSetting<boolean>
Se questa impostazione è attiva, Chrome propone di tradurre pagine in lingue che non conosci. Il valore di questa preferenza è un valore booleano, che per impostazione predefinita è
true
.
websites
Impostazioni che determinano quali informazioni vengono rese disponibili da Chrome ai siti web.
Tipo
oggetto
Proprietà
-
adMeasurementEnabled
types.ChromeSetting<boolean>
Chrome 111 e versioni successive .Se l'opzione è disattivata, l'API Attribution Reporting e l'API Private Aggregation vengono disattivate. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. Le estensioni possono solo disabilitare queste API impostando il valore sufalse
. Se provi a impostare queste API sutrue
, verrà visualizzato un errore. -
doNotTrackEnabled
types.ChromeSetting<boolean>
Chrome 65 e versioni successive .Se l'opzione è attiva, Chrome invia il messaggio "Do Not Track" (
DNT: 1
) con le tue richieste. Il valore di questa preferenza è di tipo booleano e il valore predefinito èfalse
. -
fledgeEnabled
types.ChromeSetting<boolean>
Chrome 111 e versioni successive .Se disattivata, l'API Fledge viene disattivata. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. Le estensioni possono disabilitare questa API solo impostando il valore sufalse
. Se provi a impostare questa API sutrue
, verrà visualizzato un errore. -
hyperlinkAuditingEnabled
types.ChromeSetting<boolean>
Se l'opzione è attiva, Chrome invia ping di controllo quando richiesto da un sito web (
<a ping>
). Il valore di questa preferenza è di tipo booleano e il valore predefinito ètrue
. -
protectedContentEnabled
types.ChromeSetting<boolean>
Disponibile solo su Windows e ChromeOS: se questa impostazione è attiva, Chrome fornisce un ID univoco ai plug-in per poter eseguire contenuti protetti. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. -
referrersEnabled
types.ChromeSetting<boolean>
Se questa opzione è attiva, Chrome invia intestazioni
referer
con le tue richieste. Sì, il nome di questa preferenza non corrisponde all'intestazione con errori ortografici. No, non la modificheremo. Il valore di questa preferenza è di tipo booleano e il valore predefinito ètrue
. -
types.ChromeSetting<boolean>
Chrome 121 e versioni successive .Se l'opzione è disattivata, l'opzione Insiemi di siti web correlati viene disattivata. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. Le estensioni possono disabilitare questa API solo impostando il valore sufalse
. Se provi a impostare questa API sutrue
, verrà visualizzato un errore. -
thirdPartyCookiesAllowed
types.ChromeSetting<boolean>
Se disattivato, Chrome impedisce ai siti di terze parti di impostare i cookie. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. -
topicsEnabled
types.ChromeSetting<boolean>
Chrome 111 e versioni successive .Se disattivata, l'API Topics viene disattivata. Il valore di questa preferenza è di tipo booleano e il valore predefinito è
true
. Le estensioni possono disabilitare questa API solo impostando il valore sufalse
. Se provi a impostare questa API sutrue
, verrà visualizzato un errore.