Açıklama
Chrome'daki kullanıcı gizliliğini etkileyebilecek özelliklerin kullanımını kontrol etmek için chrome.privacy
API'yi kullanın. Bu API, Chrome'un yapılandırmasını almak ve ayarlamak için API türündeki ChromeSetting prototipini kullanır.
İzinler
privacy
API'yi kullanmak için uzantınızın manifest dosyasında"gizlilik" iznini beyan etmeniz gerekir. Örneğin:
{
"name": "My extension",
...
"permissions": [
"privacy"
],
...
}
Kavramlar ve kullanım
Bir Chrome ayarının mevcut değerini okumak kolaydır. Öncelikle ilgilendiğiniz mülkü bulmanız, ardından mevcut değerini ve uzantınızın kontrol düzeyini almak için bu nesnede get()
işlevini çağırmanız gerekir. Örneğin, Chrome'un kredi kartı otomatik doldurma özelliğinin etkin olup olmadığını belirlemek için şunu yazarsınız:
chrome.privacy.services.autofillCreditCardEnabled.get({}, function(details) {
if (details.value) {
console.log('Autofill is on!');
} else {
console.log('Autofill is off!');
}
});
Bir ayarın değerini değiştirmek biraz daha karmaşıktır çünkü önce uzantınızın ayarı kontrol edebildiğini doğrulamanız gerekir. Uzantı, kurumsal politikalar tarafından belirli bir değere kilitlenmiş bir ayarı değiştirirse (levelOfControl
"not_controllable" olarak ayarlanır) veya değeri başka bir uzantı kontrol ediyorsa (levelOfControl
"controlled_by_other_extensions" olarak ayarlanır) kullanıcı ayarlarında herhangi bir değişiklik görmez. set()
çağrısı başarılı olur ancak ayar hemen geçersiz kılınır. Bu durum kafa karıştırıcı olabileceğinden, seçtikleri ayarlar uygulanmadığında kullanıcıyı uyarmanız önerilir.
Bu, erişim düzeyinizi belirlemek için get()
yöntemini kullanmanız ve ardından uzantınız ayar üzerinde kontrol sahibi olabiliyorsa set()
işlevini çağırmanız gerektiği anlamına gelir (aslında uzantınız ayarı kontrol edemiyorsa kullanıcıların kafasını karıştırmamak için özelliği görsel olarak devre dışı bırakmak iyi bir fikir olabilir):
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);
}
});
}
});
Bir ayarın değerinde yapılan değişiklikleri öğrenmek istiyorsanız onChange
etkinliğine bir dinleyici ekleyin. Bu, daha yeni yüklenen bir uzantı bir ayarın kontrolünü ele alırsa veya kurumsal politika sizin kontrolünüzü geçersiz kılarsa kullanıcıyı uyarmanıza olanak tanır. Örneğin, kredi kartı otomatik doldurma durumundaki değişiklikleri dinlemek için aşağıdaki kod yeterlidir:
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.
}
);
Örnekler
Bu API'yi denemek için chrome-extension-samples deposundan gizlilik API örneğini yükleyin.
Türler
IPHandlingPolicy
WebRTC'nin IP işleme politikası.
Enum
"default"
"default_public_and_private_interfaces"
"default_public_interface_only"
"disable_non_proxied_udp"
Özellikler
network
Chrome'un ağ bağlantılarını genel olarak ele almasını etkileyen ayarlar.
Tür
nesne
Özellikler
-
networkPredictionEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome, DNS girişlerini önceden çözerek ve sunuculara TCP ve SSL bağlantılarını önceden açarak web tarama deneyiminizi hızlandırmaya çalışır. Bu tercih yalnızca Chrome'un dahili tahmin hizmeti tarafından gerçekleştirilen işlemleri etkiler. Web sayfası tarafından başlatılan ön önizlemeleri veya ön bağlantıları etkilemez. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
webRTCIPHandlingPolicyChrome 48 ve üzeri sürümler
Kullanıcıların, WebRTC trafiğinin nasıl yönlendirileceğini ve ne kadar yerel adres bilgisinin gösterileceğini etkileyen medya performansı/gizlilik dengelerini belirtmesine izin verin. Bu tercihin değeri IPHandlingPolicy türüne sahiptir ve varsayılan olarak
default
değerini alır.
services
Google ve varsayılan arama sağlayıcınız tarafından sağlanan üçüncü taraf ağ hizmetlerini gerektiren özellikleri etkinleştiren veya devre dışı bırakan ayarlar.
Tür
nesne
Özellikler
-
alternateErrorPagesEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome, gezinme hatalarının çözülmesine yardımcı olmak için bir web hizmeti kullanır. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
autofillAddressEnabled
types.ChromeSetting<boolean>
Chrome 70 ve üzeri sürümlerEtkinleştirilirse Chrome, adresleri ve diğer form verilerini otomatik olarak doldurmayı teklif eder. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
autofillCreditCardEnabled
types.ChromeSetting<boolean>
Chrome 70 ve üzeri sürümlerEtkinleştirilirse Chrome, kredi kartı formlarını otomatik olarak doldurmayı teklif eder. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
autofillEnabled
types.ChromeSetting<boolean>
Chrome 70'den beri desteği sonlandırıldıLütfen privacy.services.autofillAddressEnabled ve privacy.services.autofillCreditCardEnabled değerlerini kullanın. Bu özellik, geriye dönük uyumluluk için bu sürümde sunulmaya devam eder ve gelecekte kaldırılır.
Bu özellik etkinleştirildiğinde Chrome, formları otomatik olarak doldurmayı teklif eder. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
passwordSavingEnabled
types.ChromeSetting<boolean>
Bu ayar etkinleştirilirse şifre yöneticisi, şifreleri kaydetmek isteyip istemediğinizi sorar. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
safeBrowsingEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome sizi kimlik avından ve kötü amaçlı yazılımlardan korumak için elinden geleni yapar. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
safeBrowsingExtendedReportingEnabled
types.ChromeSetting<boolean>
Bu seçenek etkinleştirilirse Chrome, Güvenli Tarama bir sayfayı engellediğinde Google'a ek bilgiler (ör. engellenen sayfanın içeriği) gönderir. Bu tercihin değeri bir boole olup varsayılan olarak
false
değerini alır. -
searchSuggestEnabled
types.ChromeSetting<boolean>
Etkinleştirildiğinde Chrome, çok amaçlı adres çubuğuna yazdığınız metni varsayılan arama motorunuza gönderir. Bu arama motoru, web siteleri ve aramalar için tahminler sağlar. Bu tahminler, o ana kadar yazdığınız metnin tamamlanmış muhtemel halleridir. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır. -
spellingServiceEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome, yazım hatalarını düzeltmeye yardımcı olmak için bir web hizmeti kullanır. Bu tercihin değeri bir boole olup varsayılan olarak
false
değerini alır. -
translationServiceEnabled
types.ChromeSetting<boolean>
Bu seçenek etkinleştirilirse Chrome, okuduğunuz dilde olmayan sayfaları çevirmeyi teklif eder. Bu tercihin değeri bir boole olup varsayılan olarak
true
değerini alır.
websites
Chrome'un web sitelerine hangi bilgileri sağladığını belirleyen ayarlar.
Tür
nesne
Özellikler
-
adMeasurementEnabled
types.ChromeSetting<boolean>
Chrome 111 ve sonraki sürümlerDevre dışı bırakılırsa Attribution Reporting API ve Private Aggregation API devre dışı bırakılır. Bu tercihin değeri boole türüne sahiptir ve varsayılan değeri
true
'tır. Uzantılar, bu API'leri yalnızca değerifalse
olarak ayarlayarak devre dışı bırakabilir. Bu API'leritrue
olarak ayarlamayı denerseniz hata alırsınız. -
doNotTrackEnabled
types.ChromeSetting<boolean>
Chrome 65 ve üzeri sürümlerEtkinleştirilirse Chrome, isteklerinizle birlikte "İzleme Yapma" (
DNT: 1
) başlığını gönderir. Bu tercihin değeri boole türüne sahiptir ve varsayılan değerifalse
'tır. -
fledgeEnabled
types.ChromeSetting<boolean>
Chrome 111 ve sonraki sürümlerDevre dışı bırakılırsa Fledge API devre dışı bırakılır. Bu tercihin değeri boole türüne sahiptir ve varsayılan değer
true
'tır. Uzantılar bu API'yi yalnızca değerifalse
olarak ayarlayarak devre dışı bırakabilir. Bu API'yitrue
olarak ayarlamayı denerseniz hata alırsınız. -
hyperlinkAuditingEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome, bir web sitesi tarafından istendiğinde (
<a ping>
) denetim ping'leri gönderir. Bu tercihin değeri boole türüne sahiptir ve varsayılan değertrue
'tür. -
protectedContentEnabled
types.ChromeSetting<boolean>
Yalnızca Windows ve ChromeOS'te kullanılabilir: Etkinleştirilirse Chrome, korumalı içeriği çalıştırmak için eklentilere benzersiz bir kimlik sağlar. Bu tercihin değeri boole türüne sahiptir ve varsayılan değer
true
'tır. -
referrersEnabled
types.ChromeSetting<boolean>
Etkinleştirilirse Chrome, isteklerinizle birlikte
referer
üstbilgileri gönderir. Evet, bu tercihin adı yanlış yazılmış başlıkla eşleşmiyor. Hayır, bunu değiştirmeyeceğiz. Bu tercihin değeri boole türüne sahiptir ve varsayılan değertrue
'tır. -
types.ChromeSetting<boolean>
Chrome 121 ve sonraki sürümlerDevre dışı bırakılırsa İlişkili Web Sitesi Grupları devre dışı bırakılır. Bu tercihin değeri boole türüne sahiptir ve varsayılan değer
true
'tır. Uzantılar bu API'yi yalnızca değerifalse
olarak ayarlayarak devre dışı bırakabilir. Bu API'yitrue
olarak ayarlamayı denerseniz hata alırsınız. -
thirdPartyCookiesAllowed
types.ChromeSetting<boolean>
Devre dışı bırakılırsa Chrome, üçüncü taraf sitelerin çerez ayarlamasını engeller. Bu tercihin değeri boole türüne sahiptir ve varsayılan değer
true
'tır.**Not:**Geçerli bir istisnaları varsa veya bunun yerine Storage Access API'yi kullanıyorlarsa bu API
false
değerini döndürdüğünde bireysel siteler üçüncü taraf çerezlerine erişmeye devam edebilir. -
topicsEnabled
types.ChromeSetting<boolean>
Chrome 111 ve sonraki sürümlerDevre dışı bırakılırsa Topics API devre dışı bırakılır. Bu tercihin değeri boole türüne sahiptir ve varsayılan değeri
true
'tır. Uzantılar bu API'yi yalnızca değerifalse
olarak ayarlayarak devre dışı bırakabilir. Bu API'yitrue
olarak ayarlamayı denerseniz hata alırsınız.