Bug 1429179 - Add policy to clear data on shutdown. r=felipe
MozReview-Commit-ID: canswg76ZN
--- a/browser/components/enterprisepolicies/Policies.jsm
+++ b/browser/components/enterprisepolicies/Policies.jsm
@@ -531,16 +531,32 @@ var Policies = {
},
"RememberPasswords": {
onBeforeUIStartup(manager, param) {
setAndLockPref("signon.rememberSignons", param);
}
},
+ "SanitizeOnShutdown": {
+ onBeforeUIStartup(manager, param) {
+ setAndLockPref("privacy.sanitize.sanitizeOnShutdown", param);
+ if (param) {
+ setAndLockPref("privacy.clearOnShutdown.cache", true);
+ setAndLockPref("privacy.clearOnShutdown.cookies", true);
+ setAndLockPref("privacy.clearOnShutdown.downloads", true);
+ setAndLockPref("privacy.clearOnShutdown.formdata", true);
+ setAndLockPref("privacy.clearOnShutdown.history", true);
+ setAndLockPref("privacy.clearOnShutdown.sessions", true);
+ setAndLockPref("privacy.clearOnShutdown.siteSettings", true);
+ setAndLockPref("privacy.clearOnShutdown.offlineApps", true);
+ }
+ }
+ },
+
"SearchBar": {
onAllWindowsRestored(manager, param) {
// This policy is meant to change the default behavior, not to force it.
// If this policy was already applied and the user chose move the search
// bar, don't move it again.
runOncePerModification("searchInNavBar", param, () => {
if (param == "separate") {
CustomizableUI.addWidgetToArea("search-container", CustomizableUI.AREA_NAVBAR,
--- a/browser/components/enterprisepolicies/schemas/policies-schema.json
+++ b/browser/components/enterprisepolicies/schemas/policies-schema.json
@@ -481,16 +481,23 @@
"RememberPasswords": {
"description": "Enforces the setting to allow Firefox to remember saved logins and passwords. Both true and false values are accepted.",
"first_available": "60.0",
"type": "boolean"
},
+ "SanitizeOnShutdown": {
+ "description": "Clears ALL browser data on shutdown.",
+ "first_available": "60.0",
+
+ "type": "boolean"
+ },
+
"SearchBar": {
"description": "Sets the default location of the search bar. Only applies on firtrun, but can be changed.",
"first_available": "60.0",
"enterprise_only": true,
"type": "string",
"enum": ["unified", "separate"]
},
--- a/browser/components/enterprisepolicies/tests/browser/browser_policies_simple_pref_policies.js
+++ b/browser/components/enterprisepolicies/tests/browser/browser_policies_simple_pref_policies.js
@@ -96,16 +96,32 @@ const POLICIES_TESTS = [
"Certificates": {
"ImportEnterpriseRoots": true,
}
},
lockedPrefs: {
"security.enterprise_roots.enabled": true,
}
},
+ {
+ policies: {
+ "SanitizeOnShutdown": true,
+ },
+ lockedPrefs: {
+ "privacy.sanitize.sanitizeOnShutdown": true,
+ "privacy.clearOnShutdown.cache": true,
+ "privacy.clearOnShutdown.cookies": true,
+ "privacy.clearOnShutdown.downloads": true,
+ "privacy.clearOnShutdown.formdata": true,
+ "privacy.clearOnShutdown.history": true,
+ "privacy.clearOnShutdown.sessions": true,
+ "privacy.clearOnShutdown.siteSettings": true,
+ "privacy.clearOnShutdown.offlineApps": true,
+ }
+ },
];
add_task(async function test_policy_remember_passwords() {
for (let test of POLICIES_TESTS) {
await setupPolicyEngineWithJson({
"policies": test.policies
});