Add new enterprise policy to control App-Bound encryption.

A new policy is added to control App-Bound encryption, which is
default enabled.

Because this policy might be disabled after data has been encrypted
using App-Bound encryption, this policy only controls whether or not
future data is encrypted with App-Bound, and existing data that
might have been encrypted remains available.

Once the policy is set to 'false' to disable App-Bound encryption
no further data will be encrypted using App-Bound encryption.

Tests are added to verify the behavior.

BUG=332570744

Change-Id: I77362edf6dc4ac29a5162c7ce78b82f3e70b0010
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5417396
Reviewed-by: Owen Min <[email protected]>
Reviewed-by: Scott Violet <[email protected]>
Commit-Queue: Will Harris <[email protected]>
Reviewed-by: Julian Pastarmov <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1282094}
diff --git a/chrome/browser/os_crypt/BUILD.gn b/chrome/browser/os_crypt/BUILD.gn
index 9ef8ea74..1b565344 100644
--- a/chrome/browser/os_crypt/BUILD.gn
+++ b/chrome/browser/os_crypt/BUILD.gn
@@ -38,6 +38,7 @@
     "//chrome/common:constants",
     "//chrome/elevation_service:public_headers",
     "//chrome/install_static:install_static_util",
+    "//components/prefs:prefs",
   ]
 }