diff --git a/app/brave_generated_resources.grd b/app/brave_generated_resources.grd index 4a8e42df9c29..e195f1e918b6 100644 --- a/app/brave_generated_resources.grd +++ b/app/brave_generated_resources.grd @@ -379,13 +379,13 @@ By installing this extension, you are agreeing to the Google Widevine Terms of U Advanced view - Block trackers & ads + Trackers & ads blocking - Cookies + Cookie blocking - Fingerprinting + Fingerprinting blocking Upgrade connections to HTTPS @@ -412,31 +412,31 @@ By installing this extension, you are agreeing to the Google Widevine Terms of U Allow LinkedIn embedded posts - Trackers & ads blocked (aggressive) + Aggressive - Trackers & ads blocked (standard) + Standard - Allow all trackers & ads + Disabled - Only block cross-site cookies + Only cross-site - Allow all cookies + Disabled - Block all cookies + All - - Block cross-site fingerprinting + + Standard - - Allow all fingerprinting + + Disabled - - Block all fingerprinting + + Strict, may break sites diff --git a/browser/browsing_data/brave_browsing_data_remover_delegate_unittest.cc b/browser/browsing_data/brave_browsing_data_remover_delegate_unittest.cc index 9cec8b219e3b..e79630379424 100644 --- a/browser/browsing_data/brave_browsing_data_remover_delegate_unittest.cc +++ b/browser/browsing_data/brave_browsing_data_remover_delegate_unittest.cc @@ -69,7 +69,7 @@ TEST_F(BraveBrowsingDataRemoverDelegateTest, ShieldsSettingsClearTest) { brave_shields::kHTTPUpgradableResources, CONTENT_SETTING_ALLOW); map()->SetContentSettingDefaultScope( kBatURL, GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting, CONTENT_SETTING_ALLOW); + brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); map()->SetContentSettingCustomScope( brave_shields::GetPatternFromURL(kGoogleURL), ContentSettingsPattern::Wildcard(), diff --git a/browser/browsing_data/counters/brave_site_settings_counter_unittest.cc b/browser/browsing_data/counters/brave_site_settings_counter_unittest.cc index 18682bcbb2d0..faad995032ee 100644 --- a/browser/browsing_data/counters/brave_site_settings_counter_unittest.cc +++ b/browser/browsing_data/counters/brave_site_settings_counter_unittest.cc @@ -95,7 +95,7 @@ TEST_F(BraveSiteSettingsCounterTest, Count) { brave_shields::kHTTPUpgradableResources, CONTENT_SETTING_ALLOW); map()->SetContentSettingDefaultScope( kBatURL, GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting, CONTENT_SETTING_ALLOW); + brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); map()->SetContentSettingCustomScope( brave_shields::GetPatternFromURL(kGoogleURL), ContentSettingsPattern::Wildcard(), diff --git a/browser/extensions/api/brave_shields_api.cc b/browser/extensions/api/brave_shields_api.cc index 27fafd9e5c9a..15b7ffad9d88 100644 --- a/browser/extensions/api/brave_shields_api.cc +++ b/browser/extensions/api/brave_shields_api.cc @@ -394,7 +394,8 @@ BraveShieldsGetFingerprintingControlTypeFunction::Run() { Profile* profile = Profile::FromBrowserContext(browser_context()); auto type = ::brave_shields::GetFingerprintingControlType(profile, url); - auto result = std::make_unique(ControlTypeToString(type)); + auto result = + std::make_unique(ControlTypeToString(type)); return RespondNow(OneArgument(std::move(result))); } diff --git a/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.js b/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.js index 144aa5743b67..8f94f1d0d72d 100644 --- a/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.js +++ b/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.js @@ -30,8 +30,8 @@ Polymer({ type: Array, value: function() { return [ - {value: 'block_third_party', name: loadTimeData.getString('block3rdPartyCookies')}, {value: 'block', name: loadTimeData.getString('blockAllCookies')}, + {value: 'block_third_party', name: loadTimeData.getString('block3rdPartyCookies')}, {value: 'allow', name: loadTimeData.getString('allowAllCookies')} ] } @@ -42,8 +42,8 @@ Polymer({ type: Array, value: function() { return [ - {value: 'block_third_party', name: loadTimeData.getString('block3rdPartyFingerprinting')}, - {value: 'block', name: loadTimeData.getString('blockAllFingerprinting')}, + {value: 'block', name: loadTimeData.getString('strictFingerprinting')}, + {value: 'default', name: loadTimeData.getString('standardFingerprinting')}, {value: 'allow', name: loadTimeData.getString('allowAllFingerprinting')} ] } diff --git a/browser/ui/webui/settings/default_brave_shields_handler.cc b/browser/ui/webui/settings/default_brave_shields_handler.cc index 49de19468b23..77bbed7c9dd3 100644 --- a/browser/ui/webui/settings/default_brave_shields_handler.cc +++ b/browser/ui/webui/settings/default_brave_shields_handler.cc @@ -162,9 +162,10 @@ void DefaultBraveShieldsHandler::SetFingerprintingControlType( std::string value; args->GetString(0, &value); - brave_shields::SetFingerprintingControlType(profile_, - ControlTypeFromString(value), - GURL()); + brave_shields::SetFingerprintingControlType( + profile_, + ControlTypeFromString(value), + GURL()); } void DefaultBraveShieldsHandler::SetHTTPSEverywhereEnabled( diff --git a/chromium_src/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chromium_src/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc index 5ec9c8ad35ec..0cad859ad228 100644 --- a/chromium_src/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chromium_src/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc @@ -123,12 +123,12 @@ void BraveAddCommonStrings(content::WebUIDataSource* html_source, IDS_SETTINGS_ALLOW_ALL_COOKIES}, {"blockAllCookies", IDS_SETTINGS_BLOCK_ALL_COOKIES}, - {"block3rdPartyFingerprinting", - IDS_SETTINGS_BLOCK_3RD_PARTY_FINGERPRINTING}, + {"standardFingerprinting", + IDS_SETTINGS_STANDARD_FINGERPRINTING}, {"allowAllFingerprinting", - IDS_SETTINGS_ALLOW_FINGERPRINTING}, - {"blockAllFingerprinting", - IDS_SETTINGS_BLOCK_FINGERPRINTING}, + IDS_SETTINGS_ALLOW_ALL_FINGERPRINTING}, + {"strictFingerprinting", + IDS_SETTINGS_STRICT_FINGERPRINTING}, {"webRTCPolicyLabel", IDS_SETTINGS_WEBRTC_POLICY_LABEL}, {"webRTCPolicySubLabel", diff --git a/chromium_src/components/content_settings/core/browser/content_settings_utils.cc b/chromium_src/components/content_settings/core/browser/content_settings_utils.cc index bb55ef82a261..fd548f2f5c8a 100644 --- a/chromium_src/components/content_settings/core/browser/content_settings_utils.cc +++ b/chromium_src/components/content_settings/core/browser/content_settings_utils.cc @@ -5,21 +5,13 @@ #include "base/feature_list.h" #include "brave/components/brave_shields/common/brave_shield_constants.h" -#include "brave/components/brave_shields/common/features.h" #define BRAVE_GET_RENDER_CONTENT_SETTING_RULES \ map->GetSettingsForOneType(ContentSettingsType::AUTOPLAY, \ ResourceIdentifier(), &(rules->autoplay_rules)); \ - if (base::FeatureList::IsEnabled( \ - brave_shields::features::kFingerprintingProtectionV2)) { \ - map->GetSettingsForOneType(ContentSettingsType::PLUGINS, \ - brave_shields::kFingerprintingV2, \ - &(rules->fingerprinting_rules)); \ - } else { \ - map->GetSettingsForOneType(ContentSettingsType::PLUGINS, \ - brave_shields::kFingerprinting, \ - &(rules->fingerprinting_rules)); \ - } \ + map->GetSettingsForOneType(ContentSettingsType::PLUGINS, \ + brave_shields::kFingerprintingV2, \ + &(rules->fingerprinting_rules)); \ map->GetSettingsForOneType(ContentSettingsType::PLUGINS, \ brave_shields::kBraveShields, \ &(rules->brave_shields_rules)); diff --git a/components/brave_extension/extension/brave_extension/_locales/en_US/messages.json b/components/brave_extension/extension/brave_extension/_locales/en_US/messages.json index bbb73e503d82..5487da7c7d1d 100644 --- a/components/brave_extension/extension/brave_extension/_locales/en_US/messages.json +++ b/components/brave_extension/extension/brave_extension/_locales/en_US/messages.json @@ -91,16 +91,16 @@ "message": "All cookies allowed", "description": "Message for the option in the cookies select field to allow all cookies" }, - "thirdPartyFingerprintingBlocked": { - "message": "Cross-site fingerprinting blocked", + "standardFingerprinting": { + "message": "Fingerprinting blocked (standard)", "description": "Message for the option in the fingerprinting select field to block all 3rd party recognition attempts" }, - "allFingerprintingBlocked": { - "message": "Fingerprinting attempts blocked", + "strictFingerprinting": { + "message": "Fingerprinting blocked (strict, may break sites)", "description": "Message for the option in the fingerprinting select field to block all fingerprinting attempts" }, - "allFingerprintingAllowed": { - "message": "All fingerprinting attempts allowed", + "allowAllFingerprinting": { + "message": "Allow all fingerprinting", "description": "Message for the option in the fingerprinting select field to allow all fingerprinting attempts" }, "deviceRecognitionAttempts": { diff --git a/components/brave_extension/extension/brave_extension/containers/advancedView/controls/cookiesControl.tsx b/components/brave_extension/extension/brave_extension/containers/advancedView/controls/cookiesControl.tsx index 20815e4f995d..d38251588444 100644 --- a/components/brave_extension/extension/brave_extension/containers/advancedView/controls/cookiesControl.tsx +++ b/components/brave_extension/extension/brave_extension/containers/advancedView/controls/cookiesControl.tsx @@ -35,8 +35,8 @@ export default class CookiesControl extends React.PureComponent { value={cookies} onChange={this.onChangeBlockCookies} > - + diff --git a/components/brave_extension/extension/brave_extension/containers/advancedView/controls/deviceRecognitionControl.tsx b/components/brave_extension/extension/brave_extension/containers/advancedView/controls/deviceRecognitionControl.tsx index 6f71b3cae361..5878d41367a6 100644 --- a/components/brave_extension/extension/brave_extension/containers/advancedView/controls/deviceRecognitionControl.tsx +++ b/components/brave_extension/extension/brave_extension/containers/advancedView/controls/deviceRecognitionControl.tsx @@ -124,9 +124,9 @@ export default class DeviceRecognitionControl extends React.PureComponent - - - + + + { diff --git a/components/brave_shields/browser/brave_shields_util.cc b/components/brave_shields/browser/brave_shields_util.cc index 986e96947de5..5207bf69e278 100644 --- a/components/brave_shields/browser/brave_shields_util.cc +++ b/components/brave_shields/browser/brave_shields_util.cc @@ -333,55 +333,24 @@ void SetFingerprintingControlType(Profile* profile, return; auto* map = HostContentSettingsMapFactory::GetForProfile(profile); - if (base::FeatureList::IsEnabled( - features::kFingerprintingProtectionV2)) { - map->SetContentSettingCustomScope( - primary_pattern, ContentSettingsPattern::Wildcard(), - ContentSettingsType::PLUGINS, kFingerprintingV2, - GetDefaultAllowFromControlType(type)); - } else { - map->SetContentSettingCustomScope( - primary_pattern, ContentSettingsPattern::Wildcard(), - ContentSettingsType::PLUGINS, kFingerprinting, - GetDefaultBlockFromControlType(type)); - - map->SetContentSettingCustomScope( - primary_pattern, - ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, kFingerprinting, - GetDefaultAllowFromControlType(type)); - } + map->SetContentSettingCustomScope( + primary_pattern, ContentSettingsPattern::Wildcard(), + ContentSettingsType::PLUGINS, kFingerprintingV2, + GetDefaultAllowFromControlType(type)); RecordShieldsSettingChanged(); } ControlType GetFingerprintingControlType(Profile* profile, const GURL& url) { auto* map = HostContentSettingsMapFactory::GetForProfile(profile); - - if (base::FeatureList::IsEnabled( - features::kFingerprintingProtectionV2)) { - ContentSetting setting = map->GetContentSetting( - url, GURL(), ContentSettingsType::PLUGINS, kFingerprintingV2); - if (setting == CONTENT_SETTING_BLOCK) { - return ControlType::BLOCK; - } else if (setting == CONTENT_SETTING_ALLOW) { - return ControlType::ALLOW; - } - return ControlType::DEFAULT; - } else { - ContentSetting setting = map->GetContentSetting( - url, GURL(), ContentSettingsType::PLUGINS, kFingerprinting); - ContentSetting fp_setting = - map->GetContentSetting(url, GURL("https://firstParty/"), - ContentSettingsType::PLUGINS, kFingerprinting); - - if (setting != fp_setting || setting == CONTENT_SETTING_DEFAULT) { - return ControlType::BLOCK_THIRD_PARTY; - } else { - return setting == CONTENT_SETTING_ALLOW ? ControlType::ALLOW - : ControlType::BLOCK; - } + ContentSetting setting = map->GetContentSetting( + url, GURL(), ContentSettingsType::PLUGINS, kFingerprintingV2); + if (setting == CONTENT_SETTING_BLOCK) { + return ControlType::BLOCK; + } else if (setting == CONTENT_SETTING_ALLOW) { + return ControlType::ALLOW; } + return ControlType::DEFAULT; } void SetHTTPSEverywhereEnabled(Profile* profile, diff --git a/components/brave_shields/browser/brave_shields_util_unittest.cc b/components/brave_shields/browser/brave_shields_util_unittest.cc index 47a6c3d00685..98b636ecb498 100644 --- a/components/brave_shields/browser/brave_shields_util_unittest.cc +++ b/components/brave_shields/browser/brave_shields_util_unittest.cc @@ -558,18 +558,18 @@ TEST_F(BraveShieldsUtilTest, SetFingerprintingControlType_Default) { // setting should be default to start with auto setting = map->GetContentSetting(GURL(), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); setting = map->GetContentSetting(GURL(), GURL("https://firstParty"), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); setting = map->GetContentSetting(GURL("http://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); setting = map->GetContentSetting( GURL("http://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); /* ALLOW */ @@ -577,20 +577,20 @@ TEST_F(BraveShieldsUtilTest, SetFingerprintingControlType_Default) { GURL()); setting = map->GetContentSetting(GURL(), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); setting = map->GetContentSetting(GURL(), GURL("https://firstParty"), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); // setting should apply to all urls setting = map->GetContentSetting(GURL("http://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); setting = map->GetContentSetting( GURL("http://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); /* BLOCK */ @@ -598,43 +598,43 @@ TEST_F(BraveShieldsUtilTest, SetFingerprintingControlType_Default) { GURL()); setting = map->GetContentSetting(GURL(), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); setting = map->GetContentSetting(GURL(), GURL("https://firstParty"), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); // setting should apply to all urls setting = map->GetContentSetting(GURL("http://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); setting = map->GetContentSetting( GURL("http://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); - /* BLOCK_THIRD_PARTY */ + /* DEFAULT */ brave_shields::SetFingerprintingControlType( - profile(), ControlType::BLOCK_THIRD_PARTY, GURL()); + profile(), ControlType::DEFAULT, GURL()); setting = map->GetContentSetting(GURL(), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); - EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); + brave_shields::kFingerprintingV2); + EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); setting = map->GetContentSetting(GURL(), GURL("https://firstParty"), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); - EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); + brave_shields::kFingerprintingV2); + EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); // setting should apply to all urls setting = map->GetContentSetting(GURL("http://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); - EXPECT_EQ(CONTENT_SETTING_BLOCK, setting); + brave_shields::kFingerprintingV2); + EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); setting = map->GetContentSetting( GURL("http://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); - EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); + EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); } TEST_F(BraveShieldsUtilTest, SetFingerprintingControlType_ForOrigin) { @@ -645,31 +645,31 @@ TEST_F(BraveShieldsUtilTest, SetFingerprintingControlType_ForOrigin) { // override should apply to origin auto setting = map->GetContentSetting(GURL("http://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); setting = map->GetContentSetting( GURL("http://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); // override should also apply to different scheme setting = map->GetContentSetting(GURL("https://brave.com"), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); setting = map->GetContentSetting( GURL("https://brave.com"), GURL("https://firstParty"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting); + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_ALLOW, setting); // override should not apply to default setting = map->GetContentSetting(GURL(), GURL(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); // override should not apply to default setting = map->GetContentSetting(GURL(), GURL("https://firstParty"), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting); + brave_shields::kFingerprintingV2); EXPECT_EQ(CONTENT_SETTING_DEFAULT, setting); } @@ -677,20 +677,20 @@ TEST_F(BraveShieldsUtilTest, GetFingerprintingControlType_Default) { auto* map = HostContentSettingsMapFactory::GetForProfile(profile()); auto setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); /* ALLOW */ map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); EXPECT_EQ(ControlType::ALLOW, setting); @@ -701,12 +701,12 @@ TEST_F(BraveShieldsUtilTest, GetFingerprintingControlType_Default) { /* BLOCK */ map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); EXPECT_EQ(ControlType::BLOCK, setting); @@ -714,21 +714,21 @@ TEST_F(BraveShieldsUtilTest, GetFingerprintingControlType_Default) { profile(), GURL("http://brave.com")); EXPECT_EQ(ControlType::BLOCK, setting); - /* BLOCK_THIRD_PARTY */ + /* DEFAULT */ map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); map->SetContentSettingCustomScope( ContentSettingsPattern::Wildcard(), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::BLOCK, setting); setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::BLOCK, setting); } TEST_F(BraveShieldsUtilTest, GetFingerprintingControlType_ForOrigin) { @@ -736,55 +736,55 @@ TEST_F(BraveShieldsUtilTest, GetFingerprintingControlType_ForOrigin) { auto setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); /* ALLOW */ map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::Wildcard(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting, CONTENT_SETTING_ALLOW); + brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); EXPECT_EQ(ControlType::ALLOW, setting); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); /* BLOCK */ map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::Wildcard(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting, CONTENT_SETTING_BLOCK); + brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); EXPECT_EQ(ControlType::BLOCK, setting); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); - /* BLOCK_THIRD_PARTY */ + /* DEFAULT */ map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::Wildcard(), ContentSettingsType::PLUGINS, - brave_shields::kFingerprinting, CONTENT_SETTING_BLOCK); + brave_shields::kFingerprintingV2, CONTENT_SETTING_BLOCK); map->SetContentSettingCustomScope( ContentSettingsPattern::FromString("http://brave.com/*"), ContentSettingsPattern::FromString("https://firstParty/*"), - ContentSettingsType::PLUGINS, brave_shields::kFingerprinting, + ContentSettingsType::PLUGINS, brave_shields::kFingerprintingV2, CONTENT_SETTING_ALLOW); setting = brave_shields::GetFingerprintingControlType( profile(), GURL("http://brave.com")); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::BLOCK, setting); setting = brave_shields::GetFingerprintingControlType(profile(), GURL()); - EXPECT_EQ(ControlType::BLOCK_THIRD_PARTY, setting); + EXPECT_EQ(ControlType::DEFAULT, setting); } /* HTTPSEVERYWHERE CONTROL */ diff --git a/components/brave_shields/browser/brave_shields_web_contents_observer.cc b/components/brave_shields/browser/brave_shields_web_contents_observer.cc index 7c47a753ba90..b74b2890adb6 100644 --- a/components/brave_shields/browser/brave_shields_web_contents_observer.cc +++ b/components/brave_shields/browser/brave_shields_web_contents_observer.cc @@ -250,7 +250,7 @@ void BraveShieldsWebContentsObserver::DispatchBlockedEvent( } else if (block_type == kJavaScript) { prefs->SetUint64(kJavascriptBlocked, prefs->GetUint64(kJavascriptBlocked) + 1); - } else if (block_type == kFingerprinting) { + } else if (block_type == kFingerprintingV2) { prefs->SetUint64(kFingerprintingBlocked, prefs->GetUint64(kFingerprintingBlocked) + 1); } @@ -322,7 +322,7 @@ void BraveShieldsWebContentsObserver::OnFingerprintingBlockedWithDetail( if (!web_contents) { return; } - DispatchBlockedEventForWebContents(brave_shields::kFingerprinting, + DispatchBlockedEventForWebContents(brave_shields::kFingerprintingV2, base::UTF16ToUTF8(details), web_contents); } diff --git a/components/brave_shields/common/brave_shield_constants.h b/components/brave_shields/common/brave_shield_constants.h index b428ca35e0bc..ea61b84c77f0 100644 --- a/components/brave_shields/common/brave_shield_constants.h +++ b/components/brave_shields/common/brave_shield_constants.h @@ -14,7 +14,6 @@ const char kCosmeticFiltering[] = "cosmeticFiltering"; const char kTrackers[] = "trackers"; const char kHTTPUpgradableResources[] = "httpUpgradableResources"; const char kJavaScript[] = "javascript"; -const char kFingerprinting[] = "fingerprinting"; const char kFingerprintingV2[] = "fingerprintingV2"; const char kBraveShields[] = "braveShields"; const char kReferrers[] = "referrers"; diff --git a/components/brave_shields/common/features.cc b/components/brave_shields/common/features.cc index 828464cfc284..de60a72be8e5 100644 --- a/components/brave_shields/common/features.cc +++ b/components/brave_shields/common/features.cc @@ -14,9 +14,5 @@ const base::Feature kBraveAdblockCosmeticFiltering{ "BraveAdblockCosmeticFiltering", base::FEATURE_ENABLED_BY_DEFAULT}; -const base::Feature kFingerprintingProtectionV2{ - "BraveFingerprintingProtectionV2", - base::FEATURE_DISABLED_BY_DEFAULT}; - } // namespace features } // namespace brave_shields diff --git a/components/brave_shields/common/features.h b/components/brave_shields/common/features.h index 8f26722fa853..b61a313fee2a 100644 --- a/components/brave_shields/common/features.h +++ b/components/brave_shields/common/features.h @@ -13,7 +13,6 @@ struct Feature; namespace brave_shields { namespace features { extern const base::Feature kBraveAdblockCosmeticFiltering; -extern const base::Feature kFingerprintingProtectionV2; } // namespace features } // namespace brave_shields diff --git a/components/content_settings/core/browser/brave_content_settings_pref_provider_unittest.cc b/components/content_settings/core/browser/brave_content_settings_pref_provider_unittest.cc index 48d5ebfb0545..ab207f4f9e74 100644 --- a/components/content_settings/core/browser/brave_content_settings_pref_provider_unittest.cc +++ b/components/content_settings/core/browser/brave_content_settings_pref_provider_unittest.cc @@ -92,10 +92,10 @@ class ShieldsCookieSetting : public ShieldsSetting { class ShieldsFingerprintingSetting : public ShieldsSetting { public: explicit ShieldsFingerprintingSetting(BravePrefProvider* provider) - : ShieldsSetting( - provider, - {{GURL(), brave_shields::kFingerprinting}, - {GURL("https://firstParty/*"), brave_shields::kFingerprinting}}) {} + : ShieldsSetting(provider, + {{GURL(), brave_shields::kFingerprintingV2}, + {GURL("https://firstParty/*"), + brave_shields::kFingerprintingV2}}) {} }; class ShieldsHTTPSESetting : public ShieldsSetting { diff --git a/components/content_settings/core/browser/brave_content_settings_utils.cc b/components/content_settings/core/browser/brave_content_settings_utils.cc index e62321811487..d9915f34dfb1 100644 --- a/components/content_settings/core/browser/brave_content_settings_utils.cc +++ b/components/content_settings/core/browser/brave_content_settings_utils.cc @@ -19,7 +19,6 @@ const std::vector kShieldsResourceIDs { brave_shields::kCosmeticFiltering, brave_shields::kHTTPUpgradableResources, brave_shields::kJavaScript, - brave_shields::kFingerprinting, brave_shields::kFingerprintingV2, brave_shields::kBraveShields, brave_shields::kReferrers, diff --git a/renderer/brave_content_settings_agent_impl.cc b/renderer/brave_content_settings_agent_impl.cc index ebb3de55eb52..5da84e745b3a 100644 --- a/renderer/brave_content_settings_agent_impl.cc +++ b/renderer/brave_content_settings_agent_impl.cc @@ -250,32 +250,8 @@ bool BraveContentSettingsAgentImpl::AllowFingerprinting( if (brave::IsWhitelistedFingerprintingException(primary_url, secondary_url)) { return true; } - if (base::FeatureList::IsEnabled( - brave_shields::features::kFingerprintingProtectionV2)) { - return GetBraveFarblingLevel() != BraveFarblingLevel::MAXIMUM; - } - ContentSettingsForOneType rules; - if (content_setting_rules_) { - rules = content_setting_rules_->fingerprinting_rules; - } - ContentSettingPatternSource default_rule = ContentSettingPatternSource( - ContentSettingsPattern::Wildcard(), - ContentSettingsPattern::FromString("https://firstParty/*"), - base::Value::FromUniquePtrValue( - content_settings::ContentSettingToValue(CONTENT_SETTING_ALLOW)), - std::string(), false); - rules.push_back(default_rule); - ContentSetting setting = - GetFPContentSettingFromRules(rules, frame, secondary_url); - rules.pop_back(); - bool allow = setting != CONTENT_SETTING_BLOCK; - allow = allow || IsWhitelistedForContentSettings(); - if (!allow) { - DidBlockFingerprinting(base::UTF8ToUTF16(secondary_url.spec())); - } - - return allow; + return GetBraveFarblingLevel() != BraveFarblingLevel::MAXIMUM; } BraveFarblingLevel BraveContentSettingsAgentImpl::GetBraveFarblingLevel() { @@ -289,24 +265,15 @@ BraveFarblingLevel BraveContentSettingsAgentImpl::GetBraveFarblingLevel() { url::Origin(frame->GetDocument().GetSecurityOrigin()).GetURL()); } - if (base::FeatureList::IsEnabled( - brave_shields::features::kFingerprintingProtectionV2)) { - if (setting == CONTENT_SETTING_BLOCK) { - VLOG(1) << "farbling level MAXIMUM"; - return BraveFarblingLevel::MAXIMUM; - } else if (setting == CONTENT_SETTING_ALLOW) { - VLOG(1) << "farbling level OFF"; - return BraveFarblingLevel::OFF; - } else { - VLOG(1) << "farbling level BALANCED"; - return BraveFarblingLevel::BALANCED; - } + if (setting == CONTENT_SETTING_BLOCK) { + VLOG(1) << "farbling level MAXIMUM"; + return BraveFarblingLevel::MAXIMUM; + } else if (setting == CONTENT_SETTING_ALLOW) { + VLOG(1) << "farbling level OFF"; + return BraveFarblingLevel::OFF; } else { - if (setting == CONTENT_SETTING_ALLOW) { - return BraveFarblingLevel::OFF; - } else { - return BraveFarblingLevel::BALANCED; - } + VLOG(1) << "farbling level BALANCED"; + return BraveFarblingLevel::BALANCED; } } diff --git a/renderer/brave_content_settings_agent_impl_browsertest.cc b/renderer/brave_content_settings_agent_impl_browsertest.cc index 9d9819e6b339..12169b618e94 100644 --- a/renderer/brave_content_settings_agent_impl_browsertest.cc +++ b/renderer/brave_content_settings_agent_impl_browsertest.cc @@ -398,32 +398,12 @@ IN_PROC_BROWSER_TEST_F(BraveContentSettingsAgentImplBrowserTest, EXPECT_TRUE( ExecuteScriptAndExtractInt(contents(), kGetImageDataScript, &hash)); EXPECT_EQ(kExpectedImageDataHashFarblingOff, hash); - - // Farbling should be default if 3rd-party fingerprinting is blocked - // via content settings and kBraveFingerprintingV2 is disabled - BlockThirdPartyFingerprinting(); - NavigateToPageWithIframe(); - hash = -1; - EXPECT_TRUE( - ExecuteScriptAndExtractInt(contents(), kGetImageDataScript, &hash)); - EXPECT_EQ(kExpectedImageDataHashFarblingBalanced, hash); - - // Farbling should be default if fingerprinting is blocked via - // content settings and kBraveFingerprintingV2 is disabled - BlockFingerprinting(); - NavigateToPageWithIframe(); - hash = -1; - EXPECT_TRUE( - ExecuteScriptAndExtractInt(contents(), kGetImageDataScript, &hash)); - EXPECT_EQ(kExpectedImageDataHashFarblingBalanced, hash); } class BraveContentSettingsAgentImplV2BrowserTest : public BraveContentSettingsAgentImplBrowserTest { public: void SetUp() override { - scoped_feature_list_.InitAndEnableFeature( - brave_shields::features::kFingerprintingProtectionV2); BraveContentSettingsAgentImplBrowserTest::SetUp(); }