Not all user preferences are managed through policy, typically because they do not need to be managed centrally.
If you are looking to set policies that should be editable by the user (“recommended policies”), you may want to follow bug http://code.google.com/p/chromium/issues/detail?id=49941
Preferences and policies are two different methods for controlling the browser's behavior. They have different purposes, however:
Preferences:
Policies:
There are several notable preferences that are also policies, “homepage” being the most common.
Policies take precedence to preferences. If “homepage” is specified in both the policies, and in the “master_preferences” file, policies will always override.
Preferences are kept in a file named “Preferences”, which every Chromium / Google Chrome user will have in their own user directory. This Preferences file is just a text file that contains JSON markup. Going through and editing every user's Preferences file to deploy a behavior change is really cumbersome, so there are easier ways to manage this:
The master_preferences file, like each user's Preferences file, is simply a text file that contains JSON markup, and will look something like this:
{ "homepage" : "http://www.chromium.org/", "homepage_is_newtabpage" : false, "distribution" : { ...more stuff here ... } }
Some of the preferences should be obvious, but some are not entirely clear -- they are described at the end of this document.
Moreover, you'll notice that some of these preferences are managed by policy. Note that no matter what is in the master_preferences or Preferences files, policy always takes precedence. Setting the home page in both the Preferences file and policy means that the home page in policy will be the one that Chromium / Google Chrome uses, and the user will not be able to edit it.
Should I use a Preference, or a Policy?
If you want to set some specific behavior that is accomplished by both a preference and a policy, and you're not sure which one you should use, simply answer: do you want users to be able to change this setting?
User cannot change policies at will, but they can change their preferences.
So, what preferences should you actually use? There are actually lots and lots of preferences, most of which you won't really care about.
Here is a sample master_preferences list that may be of interest (this is a fully-functional master_preferences file):
{
“homepage”: “http://www.google.com”,
“homepage_is_newtabpage”: false,
“browser”: {
“show_home_button”: true
},
“session”: {
“restore_on_startup”: 4,
“startup_urls”: [
]
},
“bookmark_bar”: {
“show_on_all_tabs”: true
},
“sync_promo”: {
“show_on_first_run_allowed”: false
},
“distribution”: {
“import_bookmarks_from_file”: “bookmarks.html”,
“import_bookmarks”: true,
“import_history”: true,
“import_home_page”: true,
“import_search_engine”: true,
“ping_delay”: 60,
“suppress_first_run_bubble”: true,
“do_not_create_desktop_shortcut”: true,
“do_not_create_quick_launch_shortcut”: true,
“do_not_launch_chrome”: true,
“do_not_register_for_update_launch”: true,
“make_chrome_default”: true,
“make_chrome_default_for_user”: true,
“suppress_first_run_default_browser_prompt”: true,
“system_level”: true,
“verbose_logging”: true
},
“first_run_tabs”: [
]
}
Most of these settings should be self-explanatory. The most interesting settings are:
To add pre-installed bookmarks, you have to create a file that contains all of your bookmarks, then give the right signals for a Chrome install to import them when a user runs Chrome for the first time.
To instruct an end-user's Chrome to import these bookmarks, include these elements in your master_preferences:
{ “distribution”: { “import_bookmarks”: false, “import_bookmarks_from_file”: “c:\\path\\to\\your\\bookmarks.html” }, “bookmark_bar”: { “show_on_all_tabs”: true } }
The relevant entries are: