blob: 8c1d17de001272ecb750ae718d022f932c98e9fe [file] [log] [blame]
{
# policy_templates.json - Metafile for policy templates
#
# The content of this file is evaluated as a Python expression.
#
# This file is used as input to generate the following policy templates:
# ADM, ADMX+ADML, MCX/plist and html documentation.
#
# Policy templates are user interface definitions or documents about the
# policies that can be used to configure Chrome. Each policy is a name-value
# pair where the value has a given type. Chrome looks up the values using the
# names of the policies. In the user interface where the values can be set,
# related policies might appear together in policy groups. The grouping is not
# visible to Chrome.
#
# This file contains a list of policies and groups. Each group contains a list
# of policies under the key 'policies'. All the policies and groups must have
# unique names. Group names are not exposed to Chrome at all.
#
# Each policy has a type. The currently implemented types:
# 'group': - not a real policy, contains a list of policies
# NOTE: Currently nesting groups inside other groups is not supported.
# 'string' - a string value
# 'int' - an integer value
# 'int-enum' - the user can select an integer value from a collection of
# items
# 'string-enum' - the user can select a string value from a collection of
# items
# 'string-enum-list' - the user can select a set of string values from a
# collection of items
# 'main' - a boolean value
# 'list' - a list of string values
# 'dict' - a dictionary value, containing other values indexed by strings
# 'external' - a policy that references external data.
# NOTE: This type is currently supported on Chrome OS only.
#
# Each policy is tagged with risk tags that indicate potential privacy or
# security risks. They are defined at the beginning of this file (tag
# 'risk_tag_definitions').
# Each risk tag contains the following information:
# - name: The name of the risk tag. May not contain spaces.
# - description: Description for developers so they know which tags apply to
# newly added policies.
# - user-description: A text that helps users understand what a policy with
# this tag means for their privacy and/or security.
# TODO(fhorschig|tnagel): Revisit policy tags after reviews.
#
# Policy group descriptions, policy captions and similar texts are localized
# strings taken from the <message> nodes of the .grd file. Their name attributes
# are generated from the JSON keys.
# Each item (policy or group) may have the following messages:
# - description:
# Describes the item it applies to.
# - caption
# A short, one-line summary of the item it applies to. This can appear
# both in policy or group listings or on title bars of policy-setting
# windows. (The caption should not end with a punctuation mark.)
# - label (Optional, defaults to caption if not specified.)
# A short, one-line summary of the item it applies to. The difference
# from caption is that label always appears next to the entry field
# where the value of the policy can be entered. 'main' policies on
# Windows ignore this. Policies on Mac are using this instead of caption.
#
# As a reference for translators, non-translateable strings must be tagged using
# <ph name="..."></ph> as described in [1]. As these tags are pruned before
# generating the comments for .proto files, paragraphs containing such tags
# should not be line-wrapped (use one long line per paragraph instead) to allow
# for correct re-flowing of the text.
# [1] https://www.chromium.org/developers/tools-we-use-in-chromium/grit/grit-users-guide.
#
# Generated grd names:
# Each name has two parts: the second part is either CAPTION, DESC or LABEL,
# and the first part identifies the item the text applies to:
# -For policies and groups:
# IDS_POLICY_<NAME OF THE POLICY OR GROUP>
# e.g. the name of the caption of policy HomepageLocation:
# IDS_POLICY_HOMEPAGELOCATION_CAPTION
# or other messages of the policy HomepageLocation:
# IDS_POLICY_HOMEPAGELOCATION_LABEL
# IDS_POLICY_HOMEPAGELOCATION_DESC
# -For enum items:
# IDS_POLICY_ENUM_<NAME OF THE ITEM>
# e.g. the name of the caption of ProxyServerDisabled:
# IDS_POLICY_ENUM_PROXYSERVERDISABLED_CAPTION
#
# Products and versions:
# Each policy has the list of products and version numbers where it is
# supported under the key 'supported_on'. Each item of this list has the
# form of 'product:since_version-until_version', which means that support
# for the policy in 'product' was introduced in 'since_version' and removed
# after 'until_version'. Product names may contain a suffix specifying a
# platform name, e.g.: 'chrome.win' is read as 'Chrome on Windows'. Version
# numbers can be any string that does not contain ':' or '-' characters.
#
# Currently supported product names:
# 'chrome_frame', 'chrome_os', 'android', 'webview_android',
# 'chrome.win', 'chrome.linux', 'chrome.mac', 'chrome.*'
# For example if 'chrome.*:5-10' is specified for a policy, then it should
# be read as:
# 'chrome.linux:5-10', 'chrome.mac:5-10', 'chrome.win:5-10'
#
# The product name also affects in which templates the policy is included:
# chrome.*, chrome.win, chrome_frame -> ADM, ADMX, ADML, doc
# chrome.*, chrome.linux -> JSON, doc
# chrome.*, chrome.mac -> plist, plist_strings, doc
# everything else -> doc
#
# The default list of policies supported by Chrome is also generated based
# on the product names:
# chrome.* -> Chrome policy definition list
# chrome_os -> Chrome policy definition list, when building OS_CHROMEOS
#
# Annotations:
# Additional information is specified under keys 'features' and
# 'example_value'. These are used in the generated documentation and example
# policy configuration files. 'dynamic_refresh' controls if the generated
# documentation should state that the policy supports dynamic refresh or not.
# Supporting dynamic refresh means that Chrome respects the changes to the
# policy immediately, without the need for restart.
# 'can_be_mandatory' Set to False to suppress the policy in the generated
# mandatory policy templates. The generated documentation for the policy
# will contain a suitable hint for administrators.
# 'can_be_recommended' Set to True to include the policy in the generated
# recommended policy templates. The generated documentation for the policy
# will contain a suitable hint for administrators.
# Policies settings in the mandatory template override user preferences, while
# recommended policies provide a default setting that may be overridden by the
# user. By default, each policy is mandatory and not recommended.
# 'per_profile' controls whether a user policy applies to every user logging
# into the browser or only one profile.
#
# The 'max_size' key is used to specify the maximal size of the external data
# that a policy can reference, in bytes. This annotation is compulsory for
# policies of type 'external'. It is ignored for all other policy types.
#
# The 'future' key is used to indicate that a policy isn't yet ready for
# usage. It defaults to False, and currently affects the generated policy
# templates and documentation. The policy definition list that Chrome sees
# will include policies marked with 'future'. If a WIP policy isn't meant to
# be seen by the policy providers either, the 'supported_on' key should be set
# to an empty list.
#
# Schemas:
# All policies have a key 'schema' which describes the schema of the policy.
# This schema supports a subset of the JSON Schema standard. For more
# information see //components/json_schema/json_schema_validator.h
# which validates the schema and //components/policy/core/common/schema.h
# which validates instances against the specified schema.
#
# For many policies this is simply a type eg 'boolean' or 'string', but for
# 'dict' policies this describes the types of not only the root object, but
# also all of its descendants. This schema data is used to validate 'dict'
# policies, if a SchemaValidatingPolicyHandler is configured appropriately in
# configuration_policy_handler_list_factory.cc
#
# Some policies at first seem to have simple schema e.g. a string or a list of
# strings, but those strings are actually JSON strings, and this JSON has
# another schema. This type of policy is deprecated. When adding new policies,
# make sure the entire schema is described by the 'schema' field and that
# there are no strings which contain JSON.
# The legacy policies which contain JSON strings have an extra field, the
# 'validation_schema' which is used to validate not only the schema of the
# policy itself, but also the content of the JSON strings inside the policy.
# Do not use this field when adding new policies.
#
# IDs:
# Since a Protocol Buffer definition is generated from this file, unique and
# persistent IDs for all fields (but not for groups!) are needed. These are
# specified by the 'id' keys of each policy. NEVER CHANGE EXISTING IDs,
# because doing so would break the deployed wire format!
# For your editing convenience:
# The highest ID currently used is always set in the
# 'highest_id_currently_used' value at the end of this file.
# And don't forget to also update the EnterprisePolicies enum of
# histograms.xml (run 'python tools/metrics/histograms/update_policies.py').
# A policy can be deleted from this file if and only if it is never launched;
# in which case its id must be added to the 'deleted_policy_ids' list to
# prevent reuse.
#
# Placeholders:
# The following placeholder strings are automatically substituted:
# $1 -> Google Chrome / Chromium
# $2 -> Google Chrome OS / Chromium OS
# $3 -> Google Chrome Frame / Chromium Frame
# $6 is reserved for doc_writer
#
# Device Policy:
# An additional flag 'device_only' (optional, defaults to False) indicates
# that this policy is only supported as a device-level Cloud Policy. In that
# case no entry in the UserPolicy Protobuf is generated and it is assumed that
# it will be added to the DevicePolicy Protobuf manually. Device policy only
# exists on Chrome OS.
#
# Management Type:
# Chrome OS devices can either be managed through the Google cloud or through
# Active Directory. Most policies are supported for both management types, but
# some are not. To indicate supported management types, use
# 'supported_chrome_os_management': ['google_cloud', 'active_directory'],
# where
# 'google_cloud' = Policy is supported for Google cloud management.
# 'active_directory' = Policy is supported for Active Directory management.
# This setting applies to Chrome OS only. If the setting is missing, both
# types are assumed. The array must not be empty.
#
# Enterprise defaults for user policy:
# For managed users on Chrome OS (i.e. users receiving user policy from the
# cloud), if the optional key 'default_for_enterprise_users' is set, its value
# is applied as mandatory policy unless a different setting is received from
# the cloud. This default value handling is automatically enforced by the
# policy stack when filling the PolicyMap (specifically, by the generated
# function SetEnterpriseUsersDefaults).
#
# Enterprise defaults for device policy:
# The optional key 'default_for_managed_devices_doc_only' can be used to
# document a differing default value for devices enrolled into enterprise
# management. This is for documentation only - the enrollment-dependent
# handling must be manually implemented.
'risk_tag_definitions' : [
# All following tags are ordered by severity of their impact.
# TODO(fhorschig|tnagel): Revisit user-descriptions after reviews.
{
'name': 'full-admin-access',
'description': '''Policies with this tag enable an administrator to
execute arbitrary code or configure a machine in a way that a
man-in-the-middle situation can occur.''',
'user-description': '''Your administrator has set up certificates or applications that could potentially access all of your data.
This could possibly allow inspecting and modifying all data sent and received by Chrome.'''
},
{
'name': 'system-security',
'description': '''Policies with this tag can make the user vulnerable
against attacks which are not possible when the policies are unset.
This includes execution of deprecated code or unsafe configuration of
network settings and proxies.''',
'user-description': '''Policy set by your administrator could enable functionality that is outdated or that could reduce the security of the system in other ways.'''
},
{
'name': 'website-sharing',
'description': '''Setting Policies with this tag will allow sharing
information with a server that would normally not be allowed.
Those information can include geolocation, audio/video device inputs or
data that can be used to identify the user.''',
'user-description': '''Policy set by your administrator could enable sharing of data with websites.
Some of these data might suffice to identify you or could be used to record private information.'''
},
{
'name': 'admin-sharing',
'description': '''Policies with this tag enable an administrator to log
the user's activity or traffic.''',
'user-description': '''Policy configured by your administrator might allow them to gather general information about your device and your activity.'''
},
{
'name': 'filtering',
'description': '''Policies with this tag can restrict the information a
user can query from the world-wide web. This includes blocked websites,
enforced search settings and partly data synchronization.''',
'user-description': '''Your administrator has set up policy that may restrict your access to websites, services or search results.'''
},
{
'name': 'local-data-access',
'description': '''Policies with this tag can cause storing data to or
reading data from a local file system without the user's knowledge. This
includes import of existing settings to the cloud or avoiding clean-up of
local history data.''',
'user-description': '''Your administrator has set up policy that could cause private data to be imported from your system or could cause private data to be written to an admin-specified place.'''
},
{
'name': 'google-sharing',
'description': '''Set policies might enforce sharing data with google,
like crash reports or history.''',
'user-description': '''There are policies set by your administrator which can affect the communication with Google services.
Therefore, some services could either be unreachable or you might not be able to restrict sent data.'''
}
],
'policy_definitions': [
{
'name': 'Homepage',
'type': 'group',
'caption': '''Home page''',
'desc': '''Configure the default home page in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing it.
The user's home page settings are only completely locked down, if you either select the home page to be the new tab page, or set it to be a URL and specify a home page URL. If you don't specify the home page URL, then the user is still able to set the home page to the new tab page by specifying 'chrome://newtab'.''',
'policies': [
'HomepageLocation',
'HomepageIsNewTabPage',
],
},
{
'name': 'NewTabPage',
'type': 'group',
'caption': '''New Tab Page''',
'desc': '''Configure the default New Tab page in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
'policies': [
'NewTabPageLocation',
],
},
{
'name': 'RemoteAccess',
'type': 'group',
'caption': '''Configure remote access options''',
'desc': '''Configure remote access options in Chrome Remote Desktop host.
Chrome Remote Desktop host is a native service that runs on the target machine that a user can connect to using Chrome Remote Desktop application. The native service is packaged and executed separately from the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> browser.
These policies are ignored unless the
Chrome Remote Desktop host is installed.''',
'policies': [
'RemoteAccessClientFirewallTraversal',
'RemoteAccessHostClientDomain',
'RemoteAccessHostClientDomainList',
'RemoteAccessHostFirewallTraversal',
'RemoteAccessHostDomain',
'RemoteAccessHostDomainList',
'RemoteAccessHostRequireTwoFactor',
'RemoteAccessHostTalkGadgetPrefix',
'RemoteAccessHostRequireCurtain',
'RemoteAccessHostAllowClientPairing',
'RemoteAccessHostAllowGnubbyAuth',
'RemoteAccessHostAllowRelayedConnection',
'RemoteAccessHostUdpPortRange',
'RemoteAccessHostMatchUsername',
'RemoteAccessHostTokenUrl',
'RemoteAccessHostTokenValidationUrl',
'RemoteAccessHostTokenValidationCertificateIssuer',
'RemoteAccessHostDebugOverridePolicies',
'RemoteAccessHostAllowUiAccessForRemoteAssistance',
],
},
{
'name': 'PasswordManager',
'type': 'group',
'caption': '''Password manager''',
'desc': '''Configures the password manager.''',
'policies': [
'PasswordManagerEnabled',
'PasswordManagerAllowShowPasswords',
],
},
{
'name': 'Proxy',
'type': 'group',
'caption': '''Proxy server''',
'desc': '''Allows you to specify the proxy server used by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing proxy settings.
If you choose to never use a proxy server and always connect directly, all other options are ignored.
If you choose to auto detect the proxy server, all other options are ignored.
For detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and ARC-apps ignore all proxy-related options specified from the command line.
Leaving these policies not set will allow the users to choose the proxy settings on their own.''',
'policies': [
'ProxyMode',
'ProxyServerMode',
'ProxyServer',
'ProxyPacUrl',
'ProxyBypassList',
],
},
{
'name': 'HTTPAuthentication',
'type': 'group',
'caption': '''Policies for HTTP authentication''',
'desc': '''Policies related to integrated HTTP authentication.''',
'policies': [
'AuthSchemes',
'DisableAuthNegotiateCnameLookup',
'EnableAuthNegotiatePort',
'AuthServerWhitelist',
'AuthNegotiateDelegateWhitelist',
'GSSAPILibraryName',
'AuthAndroidNegotiateAccountType',
'AllowCrossOriginAuthPrompt',
'NtlmV2Enabled',
],
},
{
'name': 'Extensions',
'type': 'group',
'caption': '''Extensions''',
'desc': '''Configures extension-related policies. The user is not allowed to install blacklisted extensions unless they are whitelisted. You can also force <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to automatically install extensions by specifying them in <ph name="EXTENSION_INSTALL_FORCELIST_POLICY_NAME">ExtensionInstallForcelist</ph>. Force-installed extensions are installed regardless whether they are present in the blacklist.''',
'policies': [
'ExtensionInstallBlacklist',
'ExtensionInstallWhitelist',
'ExtensionInstallForcelist',
'ExtensionInstallSources',
'ExtensionAllowedTypes',
'ExtensionSettings',
],
},
{
'name': 'RestoreOnStartupGroup',
'type': 'group',
'caption': '''Startup pages''',
'desc': '''Allows you to configure the pages that are loaded on startup.
The contents of the list 'URLs to open at startup' are ignored unless you select 'Open a list of URLs' in 'Action on startup'.''',
'policies': [
'RestoreOnStartup',
'RestoreOnStartupURLs',
],
},
{
# TODO(joaodasilva): Flag these policies with 'can_be_recommended'
# after fixing https://crbug.com/106683
'name': 'DefaultSearchProvider',
'type': 'group',
'caption': '''Default search provider''',
'desc': '''Configures the default search provider. You can specify the default search provider that the user will use or choose to disable default search.''',
'policies': [
'DefaultSearchProviderEnabled',
'DefaultSearchProviderName',
'DefaultSearchProviderKeyword',
'DefaultSearchProviderSearchURL',
'DefaultSearchProviderSuggestURL',
'DefaultSearchProviderInstantURL',
'DefaultSearchProviderIconURL',
'DefaultSearchProviderEncodings',
'DefaultSearchProviderAlternateURLs',
'DefaultSearchProviderSearchTermsReplacementKey',
'DefaultSearchProviderImageURL',
'DefaultSearchProviderNewTabURL',
'DefaultSearchProviderSearchURLPostParams',
'DefaultSearchProviderSuggestURLPostParams',
'DefaultSearchProviderInstantURLPostParams',
'DefaultSearchProviderImageURLPostParams',
],
},
{
# TODO(joaodasilva): Flag these policies with 'can_be_recommended'
# after fixing https://crbug.com/106682
'name': 'ContentSettings',
'type': 'group',
'caption': '''Content Settings''',
'desc': '''Content Settings allow you to specify how contents of a specific type (for example Cookies, Images or JavaScript) is handled.''',
'policies': [
'DefaultCookiesSetting',
'DefaultImagesSetting',
'DefaultJavaScriptSetting',
'DefaultPluginsSetting',
'DefaultPopupsSetting',
'DefaultNotificationsSetting',
'DefaultGeolocationSetting',
'DefaultMediaStreamSetting',
'DefaultWebBluetoothGuardSetting',
'DefaultKeygenSetting',
'DefaultWebUsbGuardSetting',
'AutoSelectCertificateForUrls',
'CookiesAllowedForUrls',
'CookiesBlockedForUrls',
'CookiesSessionOnlyForUrls',
'ImagesAllowedForUrls',
'ImagesBlockedForUrls',
'JavaScriptAllowedForUrls',
'JavaScriptBlockedForUrls',
'KeygenAllowedForUrls',
'KeygenBlockedForUrls',
'PluginsAllowedForUrls',
'PluginsBlockedForUrls',
'PopupsAllowedForUrls',
'RegisteredProtocolHandlers',
'PopupsBlockedForUrls',
'NotificationsAllowedForUrls',
'NotificationsBlockedForUrls',
'WebUsbAskForUrls',
'WebUsbBlockedForUrls',
],
},
{
'name': 'NativeMessaging',
'type': 'group',
'caption': '''Native Messaging''',
'desc': '''Configures policies for Native Messaging. Blacklisted native messaging hosts won't be allowed unless they are whitelisted.''',
'policies': [
'NativeMessagingBlacklist',
'NativeMessagingWhitelist',
'NativeMessagingUserLevelHosts',
],
},
{
'name': 'ChromeFrameRendererSettings',
'type': 'group',
'caption': '''Default HTML renderer for <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>''',
'desc': '''Allows you to configure the default HTML renderer when <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> is installed.
The default setting is to allow the host browser do the rendering, but you can optionally override this and have <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> render HTML pages by default.''',
'policies': [
'ChromeFrameRendererSettings',
'RenderInChromeFrameList',
'RenderInHostList',
'AdditionalLaunchParameters',
'SkipMetadataCheck',
],
},
{
'name': 'ChromeFrameContentTypes',
'type': 'group',
'caption': '''Allow <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> to handle the following content types''',
'desc': '''Allow <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> to handle the following content types.''',
'policies': [
'ChromeFrameContentTypes',
],
},
{
'name': 'Drive',
'type': 'group',
'caption': '''Configure Google Drive options''',
'desc': '''Configure Google Drive in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.''',
'policies': [
'DriveDisabled',
'DriveDisabledOverCellular',
],
},
{
'name': 'PowerManagement',
'type': 'group',
'caption': '''Power management''',
'desc': '''Configure power management in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
These policies let you configure how <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> behaves when the user remains idle for some amount of time.''',
'policies': [
'ScreenDimDelayAC',
'ScreenOffDelayAC',
'ScreenLockDelayAC',
'IdleWarningDelayAC',
'IdleDelayAC',
'ScreenDimDelayBattery',
'ScreenOffDelayBattery',
'ScreenLockDelayBattery',
'IdleWarningDelayBattery',
'IdleDelayBattery',
'IdleAction',
'IdleActionAC',
'IdleActionBattery',
'LidCloseAction',
'PowerManagementUsesAudioActivity',
'PowerManagementUsesVideoActivity',
'PresentationIdleDelayScale',
'PresentationScreenDimDelayScale',
'AllowScreenWakeLocks',
'UserActivityScreenDimDelayScale',
'WaitForInitialUserActivity',
'PowerManagementIdleSettings',
'ScreenLockDelays',
],
},
{
'name': 'Accessibility',
'type': 'group',
'caption': '''Accessibility settings''',
'desc': '''Configure <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> accessibility features.''',
'policies': [
'ShowAccessibilityOptionsInSystemTrayMenu',
'LargeCursorEnabled',
'SpokenFeedbackEnabled',
'HighContrastEnabled',
'VirtualKeyboardEnabled',
'KeyboardDefaultToFunctionKeys',
'ScreenMagnifierType',
'DeviceLoginScreenDefaultLargeCursorEnabled',
'DeviceLoginScreenDefaultSpokenFeedbackEnabled',
'DeviceLoginScreenDefaultHighContrastEnabled',
'DeviceLoginScreenDefaultVirtualKeyboardEnabled',
'DeviceLoginScreenDefaultScreenMagnifierType',
],
},
{
'name': 'Attestation',
'type': 'group',
'caption': 'Remote Attestation',
'desc': 'Configure the remote attestation with TPM mechanism.',
'policies': [
'AttestationEnabledForDevice',
'AttestationEnabledForUser',
'AttestationExtensionWhitelist',
'AttestationForContentProtectionEnabled',
],
},
{
'name': 'LocallyManagedUsers',
'type': 'group',
'caption': '''Locally managed users settings''',
'desc': '''Configure settings for managed users.''',
'policies': [
'ContentPackDefaultFilteringBehavior',
'ContentPackManualBehaviorHosts',
'ContentPackManualBehaviorURLs',
'SupervisedUsersEnabled',
'SupervisedUserCreationEnabled',
'SupervisedUserContentProviderEnabled',
],
},
{
'name': 'GoogleCast',
'type': 'group',
'caption': '''<ph name="PRODUCT_NAME">Google Cast</ph>''',
'desc': '''Configure policies for <ph name="PRODUCT_NAME">Google Cast</ph>, a feature that allows users to send the contents of tabs, sites or the desktop from the browser to remote displays and sound systems.''',
'policies': [
'EnableMediaRouter',
'ShowCastIconInToolbar',
],
},
{
'name': 'QuickUnlock',
'type': 'group',
'caption': '''Quick unlock policies''',
'desc': '''Configures quick unlock related policies.''',
'policies': [
'QuickUnlockModeWhitelist',
'QuickUnlockTimeout',
'PinUnlockMinimumLength',
'PinUnlockMaximumLength',
'PinUnlockWeakPinsAllowed',
],
},
{
'name': 'CastReceiver',
'type': 'group',
'caption': '''Cast Receiver''',
'desc': '''Configure the Cast Receiver in <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph>.''',
'policies': [
'CastReceiverEnabled',
'CastReceiverName',
]
},
{
'name': 'SafeBrowsing',
'type': 'group',
'caption': '''Safe Browsing settings''',
'desc': '''Configure Safe Browsing related policies.''',
'policies': [
'SafeBrowsingEnabled',
'SafeBrowsingExtendedReportingEnabled',
'SafeBrowsingExtendedReportingOptInAllowed',
'SafeBrowsingWhitelistDomains',
'PasswordProtectionWarningTrigger',
'PasswordProtectionLoginURLs',
'PasswordProtectionChangePasswordURL',
],
},
{
'name': 'HomepageLocation',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://www.chromium.org',
'id': 1,
'caption': '''Configure the home page URL''',
'tags': [],
'desc': '''Configures the default home page URL in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing it.
The home page is the page opened by the Home button. The pages that open on startup are controlled by the RestoreOnStartup policies.
The home page type can either be set to a URL you specify here or set to the New Tab Page. If you select the New Tab Page, then this policy does not take effect.
If you enable this setting, users cannot change their home page URL in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, but they can still choose the New Tab Page as their home page.
Leaving this policy not set will allow the user to choose their home page on their own if HomepageIsNewTabPage is not set too.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
'label': '''Home page URL''',
},
{
'name': 'HomepageIsNewTabPage',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 2,
'caption': '''Use New Tab Page as homepage''',
'tags': [],
'desc': '''Configures the type of the default home page in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing home page preferences. The home page can either be set to a URL you specify or set to the New Tab Page.
If you enable this setting, the New Tab Page is always used for the home page, and the home page URL location is ignored.
If you disable this setting, the user's homepage will never be the New Tab Page, unless its URL is set to 'chrome://newtab'.
If you enable or disable this setting, users cannot change their homepage type in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Leaving this policy not set will allow the user to choose whether the new tab page is their home page on their own.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'NewTabPageLocation',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:58-', 'chrome_os:58-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://www.chromium.org',
'id': 360,
'caption': '''Configure the New Tab page URL''',
'tags': [],
'desc': '''Configures the default New Tab page URL and prevents users from changing it.
The New Tab page is the page opened when new tabs are created (including the one opened in new windows).
This policy does not decide which pages are to be opened on start up. Those are controlled by the <ph name="RESTORE_ON_STARTUP_POLICY_NAME">RestoreOnStartup</ph> policies. Yet this policy does affect the Home Page if that is set to open the New Tab page, as well as the startup page if that is set to open the New Tab page.
If the policy is not set or left empty the default new tab page is used.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
'label': '''New Tab page URL''',
},
{
'name': 'DefaultBrowserSettingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 3,
'caption': '''Set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> as Default Browser''',
'tags': [],
'desc': '''Configures the default browser checks in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing them.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will always check on startup whether it is the default browser and automatically register itself if possible.
If this setting is disabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will never check if it is the default browser and will disable user controls for setting this option.
If this setting is not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will allow the user to control whether it is the default browser and whether user notifications should be shown when it isn't.''',
'label': '''Set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> as Default Browser''',
},
{
'name': 'ApplicationLocaleValue',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.win:8-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'en',
'id': 4,
'caption': '''Application locale''',
'tags': [],
'desc': '''Configures the application locale in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing the locale.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the specified locale. If the configured locale is not supported, 'en-US' is used instead.
If this setting is disabled or not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses either the user-specified preferred locale (if configured), the system locale or the fallback locale 'en-US'.''',
'label': '''Application locale''',
},
{
'name': 'AlternateErrorPagesEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 5,
'caption': '''Enable alternate error pages''',
'tags': [],
'desc': '''Enables the use of alternate error pages that are built into <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> (such as 'page not found') and prevents users from changing this setting.
If you enable this setting, alternate error pages are used.
If you disable this setting, alternate error pages are never used.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, this will be enabled but the user will be able to change it.''',
},
{
'name': 'SearchSuggestEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 6,
'caption': '''Enable search suggestions''',
'tags': [],
'desc': '''Enables search suggestions in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s omnibox and prevents users from changing this setting.
If you enable this setting, search suggestions are used.
If you disable this setting, search suggestions are never used.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, this will be enabled but the user will be able to change it.''',
},
{
'name': 'DnsPrefetchingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-53', 'chrome_os:11-53', 'android:30-53'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 7,
'caption': '''Enable network prediction''',
'tags': [],
'desc': '''This policy is deprecated in M48 in favor of <ph name="NETWORK_PREDICTION_OPTIONS_POLICY_NAME">NetworkPredictionOptions</ph>, and removed in M54.
Enables network prediction in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
This controls not only DNS prefetching but also TCP and SSL preconnection and prerendering of web pages. The policy name refers to DNS prefetching for historical reasons.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, this will be enabled but the user will be able to change it.''',
},
{
'name': 'NetworkPredictionOptions',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'NetworkPredictionAlways',
'value': 0,
'caption': '''Predict network actions on any network connection''',
},
{
'name': 'NetworkPredictionWifiOnly',
'value': 1,
'caption': '''Predict network actions on any network that is not cellular.
(Deprecated in 50, removed in 52. After 52, if value 1 is set, it will be treated as 0 - predict network actions on any network connection.)''',
},
{
'name': 'NetworkPredictionNever',
'value': 2,
'caption': '''Do not predict network actions on any network connection''',
},
],
'supported_on': ['chrome.*:38-', 'chrome_os:38-', 'android:38-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 273,
'caption': '''Enable network prediction''',
'tags': [],
'desc': '''Enables network prediction in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
This controls DNS prefetching, TCP and SSL preconnection and prerendering of web pages.
If you set this policy, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, network prediction will be enabled but the user will be able to change it.''',
},
{
'name': 'WPADQuickCheckEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [ 'chrome.*:35-', 'chrome_os:35-' ],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 261,
'caption': '''Enable WPAD optimization''',
'tags': ['system-security'],
'desc': '''Allows to turn off WPAD (Web Proxy Auto-Discovery) optimization in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is set to false, WPAD optimization is disabled causing <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to wait longer for DNS-based WPAD servers. If the policy is not set or is enabled, WPAD optimization is enabled.
Independent of whether or how this policy is set, the WPAD optimization setting cannot be changed by users.''',
},
{
'name': 'DisableSpdy',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-53', 'chrome_os:11-53', 'android:30-53'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': True,
'id': 8,
'caption': '''Disable SPDY protocol''',
'tags': [],
'desc': '''This policy is deprecated in M53 and removed in M54, because SPDY/3.1 support is removed.
Disables use of the SPDY protocol in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is enabled the SPDY protocol will not be available in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Setting this policy to disabled will allow the usage of SPDY.
If this policy is left not set, SPDY will be available.''',
},
{
'name': 'DisabledSchemes',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:12-', 'chrome_os:12-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': ['file', 'https'],
'id': 85,
'caption': '''Disable URL protocol schemes''',
'tags': [],
'desc': '''This policy is deprecated, please use URLBlacklist instead.
Disables the listed protocol schemes in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
URLs using a scheme from this list will not load and can not be navigated to.
If this policy is left not set or the list is empty all schemes will be accessible in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
'label': '''List of disabled protocol schemes''',
},
{
'name': 'Http09OnNonDefaultPortsEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:54-', 'chrome_os:54-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 345,
'caption': '''Enable HTTP/0.9 support on non-default ports''',
'tags': [],
'desc': '''This policy enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS.
This policy is disabled by default, and if enabled, leaves users open to the security issue https://crbug.com/600352.
This policy is intended to give enterprises a chance to migrate exising servers off of HTTP/0.9, and will be removed in the future.
If this policy is not set, HTTP/0.9 will be disabled on non-default ports.''',
},
{
'name': 'JavascriptEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 9,
'caption': '''Enable JavaScript''',
'tags': [],
'desc': '''This policy is deprecated, please use DefaultJavaScriptSetting instead.
Can be used to disabled JavaScript in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this setting is disabled, web pages cannot use JavaScript and the user cannot change that setting.
If this setting is enabled or not set, web pages can use JavaScript but the user can change that setting.''',
},
{
'name': 'IncognitoEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:11-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 10,
'caption': '''Enable Incognito mode''',
'tags': [],
'desc': '''This policy is deprecated. Please, use IncognitoModeAvailability instead.
Enables Incognito mode in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this setting is enabled or not configured, users can open web pages in incognito mode.
If this setting is disabled, users cannot open web pages in incognito mode.
If this policy is left not set, this will be enabled and the user will be able to use incognito mode.''',
},
{
'name': 'IncognitoModeAvailability',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Enabled',
'value': 0,
'caption': '''Incognito mode available''',
},
{
'name': 'Disabled',
'value': 1,
'caption': '''Incognito mode disabled''',
},
{
'name': 'Forced',
'value': 2,
'caption': '''Incognito mode forced''',
},
],
'supported_on': [
'chrome.*:14-',
'chrome_os:14-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 93,
'caption': '''Incognito mode availability''',
'tags': ['filtering'],
'desc': '''Specifies whether the user may open pages in Incognito mode in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If 'Enabled' is selected or the policy is left unset, pages may be opened in Incognito mode.
If 'Disabled' is selected, pages may not be opened in Incognito mode.
If 'Forced' is selected, pages may be opened ONLY in Incognito mode.''',
},
{
'name': 'SavingBrowserHistoryDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 11,
'caption': '''Disable saving browser history''',
'tags': [],
'desc': '''Disables saving browser history in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
If this setting is enabled, browsing history is not saved. This setting also disables tab syncing.
If this setting is disabled or not set, browsing history is saved.''',
},
{
'name': 'AllowDeletingBrowserHistory',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:57-', 'chrome_os:57-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 187,
'caption': '''Enable deleting browser and download history''',
'tags': ['local-data-access', 'admin-sharing'],
'desc': '''Enables deleting browser history and download history in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
Note that even with this policy disabled, the browsing and download history are not guaranteed to be retained: users may be able to edit or delete the history database files directly, and the browser itself may expire or archive any or all history items at any time.
If this setting is enabled or not set, browsing and download history can be deleted.
If this setting is disabled, browsing and download history cannot be deleted.''',
},
{
'name': 'AllowDinosaurEasterEgg',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:48-', 'chrome.*:48-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 309,
'default_for_enterprise_users': False,
'caption': '''Allow Dinosaur Easter Egg Game''',
'tags': [],
'desc': '''Allow users to play dinosaur easter egg game when device is offline.
If this policy is set to False, users will not be able to play the dinosaur easter egg game when device is offline. If this setting is set to True, users are allowed to play the dinosaur game. If this policy is not set, users are not allowed to play the dinosaur easter egg game on enrolled Chrome OS, but are allowed to play it under other circumstances.''',
},
{
'name': 'RemoteAccessClientFirewallTraversal',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:14-16', 'chrome_os:14-16'],
'features': {
'dynamic_refresh': True,
},
# Mark this 'removed' when https://crbug.com/100216 is resolved.
'deprecated': True,
'example_value': False,
'id': 94,
'caption': '''Enable firewall traversal from remote access client''',
'tags': [],
'desc': '''This policy is no longer supported.
Enables usage of STUN and relay servers when connecting to a remote client.
If this setting is enabled, then this machine can discover and connect to remote host machines even if they are separated by a firewall.
If this setting is disabled and outgoing UDP connections are filtered by the firewall, then this machine can only connect to host machines within the local network.''',
},
{
'name': 'RemoteAccessHostClientDomain',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:22-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 'my-awesome-domain.com',
'id': 316,
'caption': '''Configure the required domain name for remote access clients''',
'tags': [],
'desc': '''This policy is deprecated. Please use RemoteAccessHostClientDomainList instead.''',
},
{
'name': 'RemoteAccessHostClientDomainList',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:60-', 'chrome_os:60-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['my-awesome-domain.com', 'my-auxiliary-domain.com'],
'id': 369,
'caption': '''Configure the required domain names for remote access clients''',
'tags': [],
'desc': '''Configures the required client domain names that will be imposed on remote access clients and prevents users from changing it.
If this setting is enabled, then only clients from one of the specified domains can connect to the host.
If this setting is disabled or not set, then the default policy for the connection type is applied. For remote assistance, this allows clients from any domain to connect to the host; for anytime remote access, only the host owner can connect.
This setting will override RemoteAccessHostClientDomain, if present.
See also RemoteAccessHostDomainList.''',
},
{
'name': 'RemoteAccessHostFirewallTraversal',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:14-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 95,
'caption': '''Enable firewall traversal from remote access host''',
'tags': [],
'desc': '''Enables usage of STUN servers when remote clients are trying to establish a connection to this machine.
If this setting is enabled, then remote clients can discover and connect to this machines even if they are separated by a firewall.
If this setting is disabled and outgoing UDP connections are filtered by the firewall, then this machine will only allow connections from client machines within the local network.
If this policy is left not set the setting will be enabled.''',
},
{
'name': 'RemoteAccessHostDomain',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:22-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 'my-awesome-domain.com',
'id': 154,
'caption': '''Configure the required domain name for remote access hosts''',
'tags': [],
'desc': '''This policy is deprecated. Please use RemoteAccessHostDomainList instead.''',
},
{
'name': 'RemoteAccessHostDomainList',
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string' },
},
'supported_on': ['chrome.*:60-', 'chrome_os:60-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['my-awesome-domain.com', 'my-auxiliary-domain.com'],
'id': 368,
'caption': '''Configure the required domain names for remote access hosts''',
'tags': [],
'desc': '''Configures the required host domain names that will be imposed on remote access hosts and prevents users from changing it.
If this setting is enabled, then hosts can be shared only using accounts registered on one of the specified domain names.
If this setting is disabled or not set, then hosts can be shared using any account.
This setting will override RemoteAccessHostDomain, if present.
See also RemoteAccessHostClientDomainList.''',
},
{
'name': 'RemoteAccessHostRequireTwoFactor',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:22-22'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
# Mark this 'removed' when https://crbug.com/100216 is resolved.
'deprecated': True,
'example_value': False,
'id': 155,
'caption': '''Enable two-factor authentication for remote access hosts''',
'tags': [],
'desc': '''Enables two-factor authentication for remote access hosts instead of a user-specified PIN.
If this setting is enabled, then users must provide a valid two-factor code when accessing a host.
If this setting is disabled or not set, then two-factor will not be enabled and the default behavior of having a user-defined PIN will be used.''',
},
{
'name': 'RemoteAccessHostTalkGadgetPrefix',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:22-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'chromoting-host',
'id': 156,
'caption': '''Configure the TalkGadget prefix for remote access hosts''',
'tags': [],
'desc': '''Configures the TalkGadget prefix that will be used by remote access hosts and prevents users from changing it.
If specified, this prefix is prepended to the base TalkGadget name to create a full domain name for the TalkGadget. The base TalkGadget domain name is '.talkgadget.google.com'.
If this setting is enabled, then hosts will use the custom domain name when accessing the TalkGadget instead of the default domain name.
If this setting is disabled or not set, then the default TalkGadget domain name ('chromoting-host.talkgadget.google.com') will be used for all hosts.
Remote access clients are not affected by this policy setting. They will always use 'chromoting-client.talkgadget.google.com' to access the TalkGadget.''',
},
{
'name': 'RemoteAccessHostRequireCurtain',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:23-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 157,
'caption': '''Enable curtaining of remote access hosts''',
'tags': ['system-security'],
'desc': '''Enables curtaining of remote access hosts while a connection is in progress.
If this setting is enabled, then hosts' physical input and output devices are disabled while a remote connection is in progress.
If this setting is disabled or not set, then both local and remote users can interact with the host when it is being shared.''',
},
{
'name': 'RemoteAccessHostAllowClientPairing',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:30-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 234,
'caption': '''Enable or disable PIN-less authentication for remote access hosts''',
'tags': [],
'desc': '''If this setting is enabled or not configured, then users can opt to pair clients and hosts at connection time, eliminating the need to enter a PIN every time.
If this setting is disabled, then this feature will not be available.''',
},
{
'name': 'RemoteAccessHostAllowGnubbyAuth',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:35-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 257,
'caption': '''Allow gnubby authentication for remote access hosts''',
'tags': [],
'desc': '''If this setting is enabled, then gnubby authentication requests will be proxied across a remote host connection.
If this setting is disabled or not configured, gnubby authentication requests will not be proxied.''',
},
{
'name': 'RemoteAccessHostAllowRelayedConnection',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:36-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 263,
'caption': '''Enable the use of relay servers by the remote access host''',
'tags': [],
'desc': '''Enables usage of relay servers when remote clients are trying to establish a connection to this machine.
If this setting is enabled, then remote clients can use relay servers to connect to this machine when a direct connection is not available (e.g. due to firewall restrictions).
Note that if the policy <ph name="REMOTE_ACCESS_HOST_FIREWALL_TRAVERSAL_POLICY_NAME">RemoteAccessHostFirewallTraversal</ph> is disabled, this policy will be ignored.
If this policy is left not set the setting will be enabled.''',
},
{
'name': 'RemoteAccessHostUdpPortRange',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:36-', 'chrome_os:41-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '12400-12409',
'id': 264,
'caption': '''Restrict the UDP port range used by the remote access host''',
'tags': [],
'desc': '''Restricts the UDP port range used by the remote access host in this machine.
If this policy is left not set, or if it is set to an empty string, the remote access host will be allowed to use any available port, unless the policy <ph name="REMOTE_ACCESS_HOST_FIREWALL_TRAVERSAL_POLICY_NAME">RemoteAccessHostFirewallTraversal</ph> is disabled, in which case the remote access host will use UDP ports in the 12400-12409 range.''',
},
{
'name': 'RemoteAccessHostMatchUsername',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.linux:25-', 'chrome.mac:25-', 'chrome_os:42-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 285,
'caption': '''Require that the name of the local user and the remote access host owner match''',
'tags': [],
'desc': '''If this setting is enabled, then the remote access host compares the name of the local user (that the host is associated with) and the name of the Google account registered as the host owner (i.e. "johndoe" if the host is owned by "johndoe@example.com" Google account). The remote access host will not start if the name of the host owner is different from the name of the local user that the host is associated with. RemoteAccessHostMatchUsername policy should be used together with RemoteAccessHostDomain to also enforce that the Google account of the host owner is associated with a specific domain (i.e. "example.com").
If this setting is disabled or not set, then the remote access host can be associated with any local user.''',
},
{
'name': 'RemoteAccessHostTokenUrl',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:28-','chrome_os:42-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'https://example.com/issue',
'id': 286,
'caption': '''URL where remote access clients should obtain their authentication token''',
'tags': ['website-sharing'],
'desc': '''If this policy is set, the remote access host will require authenticating clients to obtain an authentication token from this URL in order to connect. Must be used in conjunction with RemoteAccessHostTokenValidationUrl.
This feature is currently disabled server-side.''',
},
{
'name': 'RemoteAccessHostTokenValidationUrl',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:28-','chrome_os:42-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'https://example.com/validate',
'id': 287,
'caption': '''URL for validating remote access client authentication token''',
'tags': ['website-sharing'],
'desc': '''If this policy is set, the remote access host will use this URL to validate authentication tokens from remote access clients, in order to accept connections. Must be used in conjunction with RemoteAccessHostTokenUrl.
This feature is currently disabled server-side.''',
},
{
'name': 'RemoteAccessHostTokenValidationCertificateIssuer',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:28-','chrome_os:42-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'Example Certificate Authority',
'id': 288,
'caption': '''Client certificate for connecting to RemoteAccessHostTokenValidationUrl''',
'tags': [],
'desc': '''If this policy is set, the host will use a client certificate with the given issuer CN to authenticate to RemoteAccessHostTokenValidationUrl. Set it to "*" to use any available client certificate.
This feature is currently disabled server-side.''',
},
{
'name': 'RemoteAccessHostDebugOverridePolicies',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:25-47','chrome_os:42-47'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '{ "RemoteAccessHostMatchUsername": true }',
'id': 289,
'caption': '''Policy overrides for Debug builds of the remote access host''',
'tags': [],
'desc': '''Overrides policies on Debug builds of the remote access host.
The value is parsed as a JSON dictionary of policy name to policy value mappings.''',
},
{
'name': 'RemoteAccessHostAllowUiAccessForRemoteAssistance',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:55-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 344,
'caption': '''Allow remote users to interact with elevated windows in remote assistance sessions''',
'tags': ['system-security'],
'desc': '''If this setting is enabled, the remote assistance host will be run in a process with <ph name="UIACCESS_PERMISSION_NAME">uiAccess</ph> permissions. This will allow remote users to interact with elevated windows on the local user's desktop.
If this setting is disabled or not configured, the remote assistance host will run in the user's context and remote users cannot interact with elevated windows on the desktop.''',
},
{
'name': 'PrintingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:39-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 12,
'caption': '''Enable printing''',
'tags': [],
'desc': '''Enables printing in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
If this setting is enabled or not configured, users can print.
If this setting is disabled, users cannot print from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Printing is disabled in the wrench menu, extensions, JavaScript applications, etc. It is still possible to print from plugins that bypass <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> while printing. For example, certain Flash applications have the print option in their context menu, which is not covered by this policy.''',
'arc_support': 'This policy has no effect on Android apps.',
},
{
'name': 'CloudPrintProxyEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:17-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 13,
'caption': '''Enable <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> proxy''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to act as a proxy between <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> and legacy printers connected to the machine.
If this setting is enabled or not configured, users can enable the cloud print proxy by authentication with their Google account.
If this setting is disabled, users cannot enable the proxy, and the machine will not be allowed to share it's printers with <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph>.''',
},
{
'name': 'ForceSafeSearch',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:25-', 'chrome_os:25-', 'android:30-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 162,
'caption': '''Force SafeSearch''',
'tags': ['filtering'],
'desc': '''This policy is deprecated, please use <ph name="FORCE_GOOGLE_SAFE_SEARCH_POLICY_NAME">ForceGoogleSafeSearch</ph> and <ph name="FORCE_YOUTUBE_RESTRICT_POLICY_NAME">ForceYouTubeRestrict</ph> instead. This policy is ignored if either the <ph name="FORCE_GOOGLE_SAFE_SEARCH_POLICY_NAME">ForceGoogleSafeSearch</ph>, the <ph name="FORCE_YOUTUBE_RESTRICT_POLICY_NAME">ForceYouTubeRestrict</ph> or the (deprecated) <ph name="FORCE_YOUTUBE_SAFETY_MODE_POLICY_NAME">ForceYouTubeSafetyMode</ph> policies are set.
Forces queries in Google Web Search to be done with SafeSearch set to active and prevents users from changing this setting. This setting also forces Moderate Restricted Mode on YouTube.
If you enable this setting, SafeSearch in Google Search and Moderate Restricted Mode YouTube is always active.
If you disable this setting or do not set a value, SafeSearch in Google Search and Restricted Mode in YouTube is not enforced.''',
},
{
'name': 'ForceGoogleSafeSearch',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:41-', 'chrome_os:41-', 'android:41-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 282,
'caption': '''Force Google SafeSearch''',
'tags': ['filtering'],
'desc': '''Forces queries in Google Web Search to be done with SafeSearch set to active and prevents users from changing this setting.
If you enable this setting, SafeSearch in Google Search is always active.
If you disable this setting or do not set a value, SafeSearch in Google Search is not enforced.''',
},
{
'name': 'ForceYouTubeSafetyMode',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:41-', 'chrome_os:41-', 'android:41-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 283,
'caption': '''Force YouTube Safety Mode''',
'tags': ['filtering'],
'desc': '''This policy is deprecated. Consider using <ph name="FORCE_YOUTUBE_RESTRICT_POLICY_NAME">ForceYouTubeRestrict</ph>, which overrides this policy and allows more fine-grained tuning.
Forces YouTube Moderate Restricted Mode and prevents users from changing this setting.
If this setting is enabled, Restricted Mode on YouTube is always enforced to be at least Moderate.
If this setting is disabled or no value is set, Restricted Mode on YouTube is not enforced by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. External policies such as YouTube policies might still enforce Restricted Mode, though.''',
'arc_support': 'This policy has no effect on the Android YouTube app. If Safety Mode on YouTube should be enforced, installation of the Android YouTube app should be disallowed.',
},
{
'name': 'ForceYouTubeRestrict',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Off',
'value': 0,
'caption': '''Do not enforce Restricted Mode on YouTube''',
},
{
'name': 'Moderate',
'value': 1,
'caption': '''Enforce at least Moderate Restricted Mode on YouTube''',
},
{
'name': 'Strict',
'value': 2,
'caption': '''Enforce Strict Restricted Mode for YouTube''',
},
],
'supported_on': ['chrome.*:55-', 'chrome_os:55-', 'android:55-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 0,
'id': 348,
'caption': '''Force minimum YouTube Restricted Mode''',
'tags': ['filtering'],
'desc': '''Enforces a minimum Restricted Mode on YouTube and prevents users from
picking a less restricted mode.
If this setting is set to Strict, Strict Restricted Mode on YouTube is always active.
If this setting is set to Moderate, the user may only pick Moderate Restricted Mode
and Strict Restricted Mode on YouTube, but cannot disable Restricted Mode.
If this setting is set to Off or no value is set, Restricted Mode on YouTube is not enforced by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. External policies such as YouTube policies might still enforce Restricted Mode, though.''',
'arc_support': 'This policy has no effect on the Android YouTube app. If Safety Mode on YouTube should be enforced, installation of the Android YouTube app should be disallowed.',
},
{
'name': 'SafeBrowsingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 14,
'caption': '''Enable Safe Browsing''',
'tags': ['system-security'],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s Safe Browsing feature and prevents users from changing this setting.
If you enable this setting, Safe Browsing is always active.
If you disable this setting, Safe Browsing is never active.
If you enable or disable this setting, users cannot change or override the "Enable phishing and malware protection" setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, this will be enabled but the user will be able to change it.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'MetricsReportingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 15,
'caption': '''Enable reporting of usage and crash-related data''',
'tags': ['google-sharing'],
'desc': '''Enables anonymous reporting of usage and crash-related data about <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to Google and prevents users from changing this setting.
If this setting is enabled, anonymous reporting of usage and crash-related
data is sent to Google. If it is disabled, this information is not sent
to Google. In both cases, users cannot change or override the setting.
If this policy is left not set, the setting will be what the user chose
upon installation / first run.
This policy is not available on Windows instances that are not joined to
a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. (For Chrome OS, see
DeviceMetricsReportingEnabled.)''',
},
{
'name': 'PasswordManagerEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 16,
'caption': '''Enable saving passwords to the password manager''',
'tags': [],
'desc': '''If this setting is enabled, users can have <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> memorize passwords and provide them automatically the next time they log in to a site.
If this settings is disabled, users cannot save new passwords but they
may still use passwords that have been saved previously.
If this policy is enabled or disabled, users cannot change or override it in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. If this policy is unset, password saving is allowed (but can be turned off by the user).''',
'arc_support': 'This policy has no effect on Android apps.',
},
{
'name': 'PasswordManagerAllowShowPasswords',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-50', 'chrome_os:11-50'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 17,
'caption': '''Allow users to show passwords in Password Manager (deprecated)''',
'tags': [],
'desc': '''The associated setting was used before reauthentication on viewing passwords was introduced. Since then, the setting and hence this policy had no effect on the behavior of Chrome. The current behavior of Chrome is now the same as if the policy was set to disable showing passwords in clear text in the password manager settings page. That means that the settings page contains just a placeholder, and only upon the user clicking "Show" (and reauthenticating, if applicable) Chrome shows the password. Original description of the policy follows below.
Controls whether the user may show passwords in clear text in the password manager.
If you disable this setting, the password manager does not allow showing stored passwords in clear text in the password manager window.
If you enable or do not set this policy, users can view their passwords in clear text in the password manager.''',
},
{
'name': 'AutoFillEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 18,
'caption': '''Enable AutoFill''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s AutoFill feature and allows users to auto complete web forms using previously stored information such as address or credit card information.
If you disable this setting, AutoFill will be inaccessible to users.
If you enable this setting or do not set a value, AutoFill will remain under the control of the user. This will allow them to configure AutoFill profiles and to switch AutoFill on or off at their own discretion.''',
},
{
'name': 'AutofillAddressEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:69-',
'chrome_os:69-',
'android:69-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 459,
'caption': '''Enable AutoFill for addresses''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s AutoFill feature and allows users to auto complete address information in web forms using previously stored information.
If this setting is disabled, Autofill will never suggest, or fill address information, nor will it save additional address information that the user might submit while browsing the web.
If this setting is enabled or has no value, the user will be able to control Autofill for addresses in the UI.''',
},
{
'name': 'AutofillCreditCardEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:63-',
'chrome_os:63-',
'android:63-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 392,
'caption': '''Enable AutoFill for credit cards''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s AutoFill feature and allows users to auto complete credit card information in web forms using previously stored information.
If this setting is disabled, Autofill will never suggest, or fill credit card information, nor will it save additional credit card information that the user might submit while browsing the web.
If this setting is enabled or has no value, the user will be able to control Autofill for credit cards in the UI.''',
},
{
'name': 'DisabledPlugins',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['Java', 'Shockwave Flash', 'Chrome PDF Viewer'],
'id': 19,
'caption': '''Specify a list of disabled plugins''',
'tags': [],
'desc': '''This policy is deprecated. Please use the <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph> to control the avalability of the Flash plugin and <ph name="ALWAYS_OPEN_PDF_EXTERNALLY_POLICY_NAME">AlwaysOpenPdfExternally</ph> to control whether the integrated PDF viewer should be used for opening PDF files.
Specifies a list of plugins that are disabled in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
The wildcard characters '*' and '?' can be used to match sequences of arbitrary characters. '*' matches an arbitrary number of characters while '?' specifies an optional single character, i.e. matches zero or one characters. The escape character is '\\', so to match actual '*', '?', or '\\' characters, you can put a '\\' in front of them.
If you enable this setting, the specified list of plugins is never used in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. The plugins are marked as disabled in 'about:plugins' and users cannot enable them.
Note that this policy can be overridden by EnabledPlugins and DisabledPluginsExceptions.
If this policy is left not set the user can use any plugin installed on the system except for hard-coded incompatible, outdated or dangerous plugins.''',
'label': '''List of disabled plugins''',
},
{
'name': 'EnabledPlugins',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['Java', 'Shockwave Flash', 'Chrome PDF Viewer'],
'id': 78,
'caption': '''Specify a list of enabled plugins''',
'tags': ['system-security'],
'desc': '''This policy is deprecated. Please use the <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph> to control the avalability of the Flash plugin and <ph name="ALWAYS_OPEN_PDF_EXTERNALLY_POLICY_NAME">AlwaysOpenPdfExternally</ph> to control whether the integrated PDF viewer should be used for opening PDF files.
Specifies a list of plugins that are enabled in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
The wildcard characters '*' and '?' can be used to match sequences of arbitrary characters. '*' matches an arbitrary number of characters while '?' specifies an optional single character, i.e. matches zero or one characters. The escape character is '\\', so to match actual '*', '?', or '\\' characters, you can put a '\\' in front of them.
The specified list of plugins is always used in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> if they are installed. The plugins are marked as enabled in 'about:plugins' and users cannot disable them.
Note that this policy overrides both DisabledPlugins and DisabledPluginsExceptions.
If this policy is left not set the user can disable any plugin installed on the system.''',
'label': '''List of enabled plugins''',
},
{
'name': 'DisabledPluginsExceptions',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['Java', 'Shockwave Flash', 'Chrome PDF Viewer'],
'id': 79,
'caption': '''Specify a list of plugins that the user can enable or disable''',
'tags': [],
'desc': '''This policy is deprecated. Please use the <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph> to control the avalability of the Flash plugin and <ph name="ALWAYS_OPEN_PDF_EXTERNALLY_POLICY_NAME">AlwaysOpenPdfExternally</ph> to control whether the integrated PDF viewer should be used for opening PDF files.
Specifies a list of plugins that user can enable or disable in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
The wildcard characters '*' and '?' can be used to match sequences of arbitrary characters. '*' matches an arbitrary number of characters while '?' specifies an optional single character, i.e. matches zero or one characters. The escape character is '\\', so to match actual '*', '?', or '\\' characters, you can put a '\\' in front of them.
If you enable this setting, the specified list of plugins can be used in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Users can enable or disable them in 'about:plugins', even if the plugin also matches a pattern in DisabledPlugins. Users can also enable and disable plugins that don't match any patterns in DisabledPlugins, DisabledPluginsExceptions and EnabledPlugins.
This policy is meant to allow for strict plugin blacklisting where the 'DisabledPlugins' list contains wildcarded entries like disable all plugins '*' or disable all Java plugins '*Java*' but the administrator wishes to enable some particular version like 'IcedTea Java 2.3'. This particular versions can be specified in this policy.
Note that both the plugin name and the plugin's group name have to be exempted. Each plugin group is shown in a separate section in about:plugins; each section may have one or more plugins. For example, the "Shockwave Flash" plugin belongs to the "Adobe Flash Player" group, and both names have to have a match in the exceptions list if that plugin is to be exempted from the blacklist.
If this policy is left not set any plugin that matches the patterns in the 'DisabledPlugins' will be locked disabled and the user won't be able to enable them.''',
'label': '''List of exceptions to the list of disabled plugins''',
},
{
'name': 'AlwaysOpenPdfExternally',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:55-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 347,
'caption': '''Always Open PDF files externally''',
'tags': [],
'desc': '''Disables the internal PDF viewer in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Instead it treats it as download and allows the user to open PDF files with the default application.
If this policy is left not set or disabled the PDF plugin will be used to open PDF files unless the user disables it.''',
},
{
'name': 'DisablePluginFinder',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:11-64', 'chrome_os:11-64'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': True,
'id': 66,
'caption': '''Specify whether the plugin finder should be disabled (deprecated)''',
'tags': [],
'desc': '''This policy has been removed as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 64.
Automatic search and installation of missing plugins is no longer supported.''',
'label': '''Disable plugin finder (deprecated)''',
},
{
'name': 'SyncDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 20,
'caption': '''Disable synchronization of data with Google''',
'tags': ['filtering', 'google-sharing'],
'desc': '''Disables data synchronization in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> using Google-hosted synchronization services and prevents users from changing this setting.
If you enable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set Google Sync will be available for the user to choose whether to use it or not.
To fully disable Google Sync, it is recommended that you disable the Google Sync service in the Google Admin console.
This policy should not be enabled when <ph name="ROAMING_PROFILE_SUPPORT_ENABLED_POLICY_NAME">RoamingProfileSupportEnabled</ph> policy is set to enabled as that feature shares the same client side functionality. The Google-hosted synchronization is disabled in this case completely.''',
'arc_support': 'Disabling Google Sync will cause Android Backup and Restore to not function properly.',
},
{
'name': 'RoamingProfileSupportEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:57-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 358,
'caption': '''Enable the creation of roaming copies for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> profile data''',
'tags': ['local-data-access'],
'desc': '''If you enable this setting, the settings stored in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> profiles like bookmarks, autofill data, passwords, etc. will also be written to a file stored in the Roaming user profile folder or a location specified by the Administrator through the <ph name="ROAMING_PROFILE_LOCATION_POLICY_NAME">$1<ex>RoamingProfileLocation</ex></ph> policy. Enabling this policy disables cloud sync.
If this policy is disabled or left not set only the regular local profiles will be used.
The <ph name="SYNC_DISABLED_POLICY_NAME">SyncDisabled</ph> policy disables all data synchronization, overriding RoamingProfileSupportEnabled.''',
'label': '''Enable the creation of roaming copies for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> profile data.''',
},
{
'name': 'RoamingProfileLocation',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.win:57-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '${roaming_app_data}\\chrome-profile',
'id': 359,
'caption': '''Set the roaming profile directory''',
'tags': ['local-data-access'],
'desc': '''Configures the directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for storing the roaming copy of the profiles.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided directory to store the roaming copy of the profiles if the <ph name="ROAMING_PROFILE_SUPPORT_ENABLED_POLICY_NAME">$1<ex>RoamingProfileSupportEnabled</ex></ph> policy has been enabled. If the <ph name="ROAMING_PROFILE_SUPPORT_ENABLED_POLICY_NAME">$1<ex>RoamingProfileSupportEnabled</ex></ph> policy is disabled or left unset the value stored in this policy is not used.
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.
If this policy is left not set the default roaming profile path will be used.''',
'label': '''Set the roaming profile directory''',
},
{
'name': 'SigninAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:27-', 'android:38-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 190,
'caption': '''Allow sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''This policy is deprecated, consider using SyncDisabled instead.
Allows the user to sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If you set this policy, you can configure whether a user is allowed to sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Setting this policy to 'False' will prevent apps and extensions that use the chrome.identity API from functioning, so you may want to use SyncDisabled instead.''',
},
{
'name': 'EnableDeprecatedWebBasedSignin',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:35-42'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'deprecated': True,
'example_value': False,
'id': 265,
'caption': '''Enable the old web-based signin flow''',
'tags': [],
'desc': '''This setting was named EnableWebBasedSignin prior to Chrome 42, and support for it will be removed entirely in Chrome 43.
This setting is useful for enterprise customers who are using SSO solutions that are not compatible with the new inline signin flow yet.
If you enable this setting, the old web-based signin flow would be used.
If you disable this setting or leave it not set, the new inline signin flow would be used by default. Users may still enable the old web-based signin flow through the command line flag --enable-web-based-signin.
The experimental setting will be removed in the future when the inline signin fully supports all SSO signin flows.''',
},
{
'name': 'UserDataDir',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.win:11-', 'chrome.mac:11-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '${users}/${user_name}/Chrome',
'id': 63,
'caption': '''Set user data directory''',
'tags': ['local-data-access'],
'desc': '''Configures the directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for storing user data.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided directory regardless whether the user has specified the '--user-data-dir' flag or not. To avoid data loss or other unexpected errors this policy should not be set to a volume's root directory or to a directory used for other purposes, because <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> manages its contents.
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.
If this policy is left not set the default profile path will be used and the user will be able to override it with the '--user-data-dir' command line flag.''',
'label': '''Set user data directory''',
},
{
'name': 'DiskCacheDir',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:13-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '${user_home}/Chrome_cache',
'id': 88,
'caption': '''Set disk cache directory''',
'tags': [],
'desc': '''Configures the directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for storing cached files on the disk.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided directory regardless whether the user has specified the '--disk-cache-dir' flag or not. To avoid data loss or other unexpected errors this policy should not be set to a volume's root directory or to a directory used for other purposes, because <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> manages its contents.
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.
If this policy is left not set the default cache directory will be used and the user will be able to override it with the '--disk-cache-dir' command line flag.''',
'label': '''Set disk cache directory''',
},
{
'name': 'DiskCacheSize',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome.*:17-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 104857600,
'id': 110,
'caption': '''Set disk cache size in bytes''',
'tags': [],
'desc': '''Configures the cache size that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for storing cached files on the disk.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided cache size regardless whether the user has specified the '--disk-cache-size' flag or not. The value specified in this policy is not a hard boundary but rather a suggestion to the caching system, any value below a few megabytes is too small and will be rounded up to a sane minimum.
If the value of this policy is 0, the default cache size will be used but the user will not be able to change it.
If this policy is not set the default size will be used and the user will be able to override it with the --disk-cache-size flag.''',
'label': '''Set disk cache size''',
},
{
'name': 'MediaCacheSize',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome.*:17-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 104857600,
'id': 111,
'caption': '''Set media disk cache size in bytes''',
'tags': [],
'desc': '''Configures the cache size that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for storing cached media files on the disk.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided cache size regardless whether the user has specified the '--media-cache-size' flag or not. The value specified in this policy is not a hard boundary but rather a suggestion to the caching system, any value below a few megabytes is too small and will be rounded up to a sane minimum.
If the value of this policy is 0, the default cache size will be used but the user will not be able to change it.
If this policy is not set the default size will be used and the user will be able to override it with the --media-cache-size flag.''',
'label': '''Set media disk cache size''',
},
{
'name': 'DownloadRestrictions',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'DefaultDownloadSecurity',
'value': 0,
'caption': '''No special restrictions''',
},
{
'name': 'BlockDangerousDownloads',
'value': 1,
'caption': '''Block dangerous downloads''',
},
{
'name': 'BlockPotentiallyDangerousDownloads',
'value': 2,
'caption': '''Block potentially dangerous downloads''',
},
{
'name': 'BlockAllDownloads',
'value': 3,
'caption': '''Block all downloads''',
},
],
'supported_on': ['chrome.*:61-', 'chrome_os:61-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 371,
'caption': '''Allow download restrictions''',
'tags': ['local-data-access'],
'desc': '''Configures the type of downloads that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will completely block, without letting users override the security decision.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will prevent certain types of downloads, and won't let user bypass the security warnings.
When the 'Block dangerous downloads' option is chosen, all downloads are allowed, except for those that carry Safe Browsing warnings.
When the 'Block potentially dangerous downloads' option is chosen, all downloads allowed, except for those that carry Safe Browsing warnings of potentially dangerous downloads.
When the 'Block all downloads' option is chosen, all downloads are blocked.
When this policy is not set, (or the 'No special restrictions' option is chosen), the downloads will go through the usual security restrictions based on Safe Browsing analysis results.
Note that these restrictions apply to downloads triggered from web page content, as well as the 'download link...' context menu option. These restrictions do not apply to the save / download of the currently displayed page, nor does it apply to saving as PDF from the printing options.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
'label': '''Download restrictions''',
},
{
'name': 'DownloadDirectory',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:11-', 'chrome_os:35-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '/home/${user_name}/Downloads',
'id': 64,
'caption': '''Set download directory''',
'tags': ['local-data-access'],
'desc': '''Configures the directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for downloading files.
If you set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the provided directory regardless whether the user has specified one or enabled the flag to be prompted for download location every time.
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.
If this policy is left not set the default download directory will be used and the user will be able to change it.''',
'label': '''Set download directory''',
'arc_support': 'This policy has no effect on Android apps. Android apps always use the default downloads directory and cannot access any files downloaded by <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> into a non-default downloads directory.',
},
{
'name': 'SafeBrowsingForTrustedSourcesEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:61-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 375,
'caption': '''Enable Safe Browsing for trusted sources''',
'tags': ['local-data-access'],
'desc': '''Identify if <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can allow download without Safe Browsing checks when it's from a trusted source.
When False, downloaded files will not be sent to be analyzed by Safe Browsing when it's from a trusted source.
When not set (or set to True), downloaded files are sent to be analyzed by Safe Browsing, even when it's from a trusted source.
Note that these restrictions apply to downloads triggered from web page content, as well as the 'download link...' context menu option. These restrictions do not apply to the save / download of the currently displayed page, nor does it apply to saving as PDF from the printing options.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
'label': '''Safe Browsing enable state for trusted sources''',
},
{
'name': 'ClearSiteDataOnExit',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:11-28', 'chrome_os:11-28'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 65,
'caption': '''Clear site data on browser shutdown (deprecated)''',
'tags': [],
'desc': '''This policy has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 29.''',
'label': '''Clear site data on browser shutdown (deprecated)''',
},
{
'name': 'CaptivePortalAuthenticationIgnoresProxy',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:41-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 295,
'caption': '''Captive portal authentication ignores proxy''',
'tags': [],
'desc': '''This policy allows <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> to bypass any proxy for captive portal authentication.
This policy only takes effect if a proxy is configured (for example through policy, by the user in chrome://settings, or by extensions).
If you enable this setting, any captive portal authentication pages (i.e. all web pages starting from captive portal signin page until <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> detects successful internet connection) will be displayed in a separate window ignoring all policy settings and restrictions for the current user.
If you disable this setting or leave it unset, any captive portal authentication pages will be shown in a (regular) new browser tab, using the current user's proxy settings.''',
},
{
'name': 'ProxyMode',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'direct',
'auto_detect',
'pac_script',
'fixed_servers',
'system'
],
},
'items': [
{
'name': 'ProxyDisabled',
'value': 'direct',
'caption': '''Never use a proxy''',
},
{
'name': 'ProxyAutoDetect',
'value': 'auto_detect',
'caption': '''Auto detect proxy settings''',
},
{
'name': 'ProxyPacScript',
'value': 'pac_script',
'caption': '''Use a .pac proxy script''',
},
{
'name': 'ProxyFixedServers',
'value': 'fixed_servers',
'caption': '''Use fixed proxy servers''',
},
{
'name': 'ProxyUseSystem',
'value': 'system',
'caption': '''Use system proxy settings''',
},
],
'supported_on': [
'chrome.*:10-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'direct',
'id': 21,
'caption': '''Choose how to specify proxy server settings''',
'tags': [],
'desc': '''Allows you to specify the proxy server used by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing proxy settings.
If you choose to never use a proxy server and always connect directly, all other options are ignored.
If you choose to use system proxy settings, all other options are ignored.
If you choose to auto detect the proxy server, all other options are ignored.
If you choose fixed server proxy mode, you can specify further options in 'Address or URL of proxy server' and 'Comma-separated list of proxy bypass rules'. Only the HTTP proxy server with the highest priority is available for ARC-apps.
If you choose to use a .pac proxy script, you must specify the URL to the script in 'URL to a proxy .pac file'.
For detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and ARC-apps ignore all proxy-related options specified from the command line.
Leaving this policy not set will allow the users to choose the proxy settings on their own.''',
'arc_support': '''You cannot force Android apps to use a proxy. A subset of proxy settings is made available to Android apps, which they may voluntarily choose to honor:
If you choose to never use a proxy server, Android apps are informed that no proxy is configured.
If you choose to use system proxy settings or a fixed server proxy, Android apps are provided with the http proxy server address and port.
If you choose to auto detect the proxy server, the script URL "http://wpad/wpad.dat" is provided to Android apps. No other part of the proxy auto-detection protocol is used.
If you choose to use a .pac proxy script, the script URL is provided to Android apps.''',
},
{
'name': 'ProxyServerMode',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'ProxyServerDisabled',
'value': 0,
'caption': '''Never use a proxy''',
},
{
'name': 'ProxyServerAutoDetect',
'value': 1,
'caption': '''Auto detect proxy settings''',
},
{
'name': 'ProxyServerManual',
'value': 2,
'caption': '''Manually specify proxy settings''',
},
{
'name': 'ProxyServerUseSystem',
'value': 3,
'caption': '''Use system proxy settings''',
},
],
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': 2,
'id': 22,
'caption': '''Choose how to specify proxy server settings''',
'tags': [],
'desc': '''This policy is deprecated, use ProxyMode instead.
Allows you to specify the proxy server used by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing proxy settings.
If you choose to never use a proxy server and always connect directly, all other options are ignored.
If you choose to use system proxy settings or auto detect the proxy server, all other options are ignored.
If you choose manual proxy settings, you can specify further options in 'Address or URL of proxy server', 'URL to a proxy .pac file' and 'Comma-separated list of proxy bypass rules'. Only the HTTP proxy server with the highest priority is available for ARC-apps.
For detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> ignores all proxy-related options specified from the command line.
Leaving this policy not set will allow the users to choose the proxy settings on their own.''',
'arc_support': 'You cannot force Android apps to use a proxy. A subset of proxy settings is made available to Android apps, which they may voluntarily choose to honor. See the <ph name="PROXY_MODE_POLICY_NAME">ProxyMode</ph> policy for more details.',
},
{
'name': 'ProxyServer',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '123.123.123.123:8080',
'id': 23,
'caption': '''Address or URL of proxy server''',
'tags': [],
'desc': '''You can specify the URL of the proxy server here.
This policy only takes effect if you have selected manual proxy settings at 'Choose how to specify proxy server settings'.
You should leave this policy not set if you have selected any other mode for setting proxy policies.
For more options and detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.''',
'arc_support': 'You cannot force Android apps to use a proxy. A subset of proxy settings is made available to Android apps, which they may voluntarily choose to honor. See the <ph name="PROXY_MODE_POLICY_NAME">ProxyMode</ph> policy for more details.',
},
{
'name': 'ProxyPacUrl',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://internal.site/example.pac',
'id': 24,
'caption': '''URL to a proxy .pac file''',
'tags': [],
'desc': '''You can specify a URL to a proxy .pac file here.
This policy only takes effect if you have selected manual proxy settings at 'Choose how to specify proxy server settings'.
You should leave this policy not set if you have selected any other mode for setting proxy policies.
For detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.''',
'arc_support': 'You cannot force Android apps to use a proxy. A subset of proxy settings is made available to Android apps, which they may voluntarily choose to honor. See the <ph name="PROXY_MODE_POLICY_NAME">ProxyMode</ph> policy for more details.',
},
{
'name': 'ProxyBypassList',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://www.example1.com,https://www.example2.com,https://internalsite/',
'id': 25,
'caption': '''Proxy bypass rules''',
'tags': [],
'desc': '''<ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will bypass any proxy for the list of hosts given here.
This policy only takes effect if you have selected manual proxy settings at 'Choose how to specify proxy server settings'.
You should leave this policy not set if you have selected any other mode for setting proxy policies.
For more detailed examples, visit:
<ph name="PROXY_HELP_URL">https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett<ex>https://www.chromium.org/developers/design-documents/network-settings#TOC-Command-line-options-for-proxy-sett</ex></ph>.''',
'label': '''Comma-separated list of proxy bypass rules''',
'arc_support': 'You cannot force Android apps to use a proxy. A subset of proxy settings is made available to Android apps, which they may voluntarily choose to honor. See the <ph name="PROXY_MODE_POLICY_NAME">ProxyMode</ph> policy for more details.',
},
{
'name': 'ProxySettings',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'ProxyMode': { 'type': 'string' },
'ProxyPacUrl': { 'type': 'string' },
'ProxyServer': { 'type': 'string' },
'ProxyBypassList': { 'type': 'string' },
'ProxyServerMode': { 'type': 'string' },
},
},
'supported_on': [
'chrome.*:18-',
'chrome_os:18-',
'android:30-',
],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': { "ProxyMode": "direct" },
'id': 116,
'caption': '''Proxy settings''',
'tags': ['system-security'],
'desc': '''Configures the proxy settings for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. These proxy settings will be available for ARC-apps too.
This policy isn't ready for usage yet, please don't use it.''',
'arc_support': 'Only a subset of proxy configuration options are made available to Android apps. Android apps may voluntarily choose to use the proxy. You cannot force them to use a proxy.',
},
{
'name': 'AuthSchemes',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'basic,digest,ntlm,negotiate',
'id': 26,
'caption': '''Supported authentication schemes''',
'tags': [],
'desc': '''Specifies which HTTP authentication schemes are supported by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Possible values are 'basic', 'digest', 'ntlm' and 'negotiate'. Separate multiple values with commas.
If this policy is left not set, all four schemes will be used.''',
},
{
'name': 'DisableAuthNegotiateCnameLookup',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 27,
'caption': '''Disable CNAME lookup when negotiating Kerberos authentication''',
'tags': [],
'desc': '''Specifies whether the generated Kerberos SPN is based on the canonical DNS name or the original name entered.
If you enable this setting, CNAME lookup will be skipped and the server name will be used as entered.
If you disable this setting or leave it not set, the canonical name of the server will be determined via CNAME lookup.''',
},
{
'name': 'EnableAuthNegotiatePort',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 28,
'caption': '''Include non-standard port in Kerberos SPN''',
'tags': [],
'desc': '''Specifies whether the generated Kerberos SPN should include a non-standard port.
If you enable this setting, and a non-standard port (i.e., a port other than 80 or 443) is entered, it will be included in the generated Kerberos SPN.
If you disable this setting or leave it not set, the generated Kerberos SPN will not include a port in any case.''',
},
{
'name': 'AuthServerWhitelist',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','webview_android:49-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '*example.com,foobar.com,*baz',
'id': 29,
'caption': '''Authentication server whitelist''',
'tags': [],
'desc': '''Specifies which servers should be whitelisted for integrated authentication. Integrated authentication is only enabled when <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> receives an authentication challenge from a proxy or from a server which is in this permitted list.
Separate multiple server names with commas. Wildcards (*) are allowed.
If you leave this policy not set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will try to detect if a server is on the Intranet and only then will it respond to IWA requests. If a server is detected as Internet then IWA requests from it will be ignored by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'name': 'AuthNegotiateDelegateWhitelist',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'foobar.example.com',
'id': 30,
'caption': '''Kerberos delegation server whitelist''',
'tags': [],
'desc': '''Servers that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> may delegate to.
Separate multiple server names with commas. Wildcards (*) are allowed.
If you leave this policy not set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not delegate user credentials even if a server is detected as Intranet.''',
},
{
'name': 'GSSAPILibraryName',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.linux:9-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'libgssapi_krb5.so.2',
'id': 31,
'caption': '''GSSAPI library name''',
'tags': [],
'desc': '''Specifies which GSSAPI library to use for HTTP authentication. You can set either just a library name, or a full path.
If no setting is provided, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will fall back to using a default library name.''',
},
{
'name': 'AuthAndroidNegotiateAccountType',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['android:46-','webview_android:49-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'com.example.spnego',
'id': 305,
'caption': '''Account type for <ph name="HTTP_NEGOTIATE">HTTP Negotiate</ph> authentication''',
'tags': [],
'desc': '''Specifies the account type of the accounts provided by the Android authentication app that supports <ph name="HTTP_NEGOTIATE">HTTP Negotiate</ph> authentication (e.g. Kerberos authentication). This information should be available from the supplier of the authentication app. For more details see https://goo.gl/hajyfN.
If no setting is provided, <ph name="HTTP_NEGOTIATE">HTTP Negotiate</ph> authentication is disabled on Android.''',
},
{
'name': 'AllowCrossOriginAuthPrompt',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:13-','chrome_os:62-'],
'supported_chrome_os_management': ['active_directory'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 89,
'caption': '''Cross-origin HTTP Basic Auth prompts''',
'tags': ['website-sharing'],
'desc': '''Controls whether third-party sub-content on a page is allowed to pop-up an HTTP Basic Auth dialog box.
Typically this is disabled as a phishing defense. If this policy is not set, this is disabled and third-party sub-content will not be allowed to pop up a HTTP Basic Auth dialog box.''',
},
{
'name': 'NtlmV2Enabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.linux:63-','chrome.mac:63-','chrome_os:63-','android:63-','webview_android:63-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 393,
'caption': '''Whether NTLMv2 authentication is enabled.''',
'tags': ['website-sharing'],
'desc': '''Controls whether NTLMv2 is enabled.
All recent versions of Samba and Windows servers support NTLMv2. This should only be disabled for backwards compatibility and reduces the security of authentication.
If this policy is not set, the default is true and NTLMv2 is enabled.''',
},
{
'name': 'ExtensionInstallBlacklist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['extension_id1', 'extension_id2'],
'id': 32,
'caption': '''Configure extension installation blacklist''',
'tags': [],
'desc': '''Allows you to specify which extensions the users can NOT install. Extensions already installed will be disabled if blacklisted, without a way for the user to enable them. Once an extension disabled due to the blacklist is removed from it, it will automatically get re-enabled.
A blacklist value of '*' means all extensions are blacklisted unless they are explicitly listed in the whitelist.
If this policy is left not set the user can install any extension in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
'label': '''Extension IDs the user should be prevented from installing (or * for all)''',
},
{
'name': 'ExtensionInstallWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['extension_id1', 'extension_id2'],
'id': 33,
'caption': '''Configure extension installation whitelist''',
'tags': [],
'desc': '''Allows you to specify which extensions are not subject to the blacklist.
A blacklist value of * means all extensions are blacklisted and users can only install extensions listed in the whitelist.
By default, all extensions are whitelisted, but if all extensions have been blacklisted by policy, the whitelist can be used to override that policy.''',
'label': '''Extension IDs to exempt from the blacklist''',
},
{
'name': 'ExtensionInstallForcelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:9-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['gbchcmhmhahfdphkhkmpfmihenigjmpp;https://clients2.google.com/service/update2/crx', 'abcdefghijklmnopabcdefghijklmnop'],
'id': 34,
'caption': '''Configure the list of force-installed apps and extensions''',
'tags': ['full-admin-access'],
'desc': '''Specifies a list of apps and extensions that are installed silently,
without user interaction, and which cannot be uninstalled nor
disabled by the user. All permissions requested by the
apps/extensions are granted implicitly, without user interaction,
including any additional permissions requested by future versions of
the app/extension. Furthermore, permissions are granted for the
enterprise.deviceAttributes and enterprise.platformKeys extension
APIs. (These two APIs are not available to apps/extensions that are
not force-installed.)
This policy takes precedence over a potentially conflicting <ph name="EXTENSION_INSTALL_BLACKLIST_POLICY_NAME">ExtensionInstallBlacklist</ph> policy. If an app or extension that previously had been force-installed is removed from this list, it is automatically uninstalled by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
For Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain, forced installation is limited to apps and extensions listed in the Chrome Web Store.
Note that the source code of any extension may be altered by users via Developer Tools (potentially rendering the extension dysfunctional). If this is a concern, the <ph name="DEVELOPER_TOOLS_POLICY_NAME">DeveloperToolsDisabled</ph> policy should be set.
Each list item of the policy is a string that contains an extension ID and, optionally, an "update" URL separated by a semicolon (<ph name="SEMICOLON">;</ph>). The extension ID is the 32-letter string found e.g. on <ph name="CHROME_EXTENSIONS_LINK">chrome://extensions</ph> when in developer mode. The "update" URL, if specified, should point to an Update Manifest XML document as described at <ph name="LINK_TO_EXTENSION_DOC1">https://developer.chrome.com/extensions/autoupdate</ph>. By default, the Chrome Web Store's update URL is used (which currently is "https://clients2.google.com/service/update2/crx"). Note that the "update" URL set in this policy is only used for the initial installation; subsequent updates of the extension employ the update URL indicated in the extension's manifest. Note also that specifying the "update" URL explicitly was mandatory in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> versions up to and including 67.
For example, <ph name="EXTENSION_POLICY_EXAMPLE">gbchcmhmhahfdphkhkmpfmihenigjmpp;https://clients2.google.com/service/update2/crx</ph> installs the <ph name="EXTENSION_POLICY_EXAMPLE_EXTENSION_NAME">Chrome Remote Desktop</ph> app from the standard Chrome Web Store "update" URL. For more information about hosting extensions, see: <ph name="LINK_TO_EXTENSION_DOC2">https://developer.chrome.com/extensions/hosting</ph>.
If this policy is left not set, no apps or extensions are installed automatically and the user can uninstall any app or extension in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
'label': '''Extension/App IDs and update URLs to be silently installed''',
'arc_support': 'Android apps can be force-installed from the Google Admin console using Google Play. They do not use this policy.',
},
{
'name': 'ExtensionInstallSources',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
'id': 'ExtensionInstallSources',
},
'supported_on': ['chrome.*:21-', 'chrome_os:21-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://corp.mycompany.com/*'],
'id': 148,
'caption': '''Configure extension, app, and user script install sources''',
'tags': ['full-admin-access', 'system-security'],
'desc': '''Allows you to specify which URLs are allowed to install extensions, apps, and themes.
Starting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 21, it is more difficult to install extensions, apps, and user scripts from outside the Chrome Web Store. Previously, users could click on a link to a *.crx file, and <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> would offer to install the file after a few warnings. After <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 21, such files must be downloaded and dragged onto the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> settings page. This setting allows specific URLs to have the old, easier installation flow.
Each item in this list is an extension-style match pattern (see https://developer.chrome.com/extensions/match_patterns). Users will be able to easily install items from any URL that matches an item in this list. Both the location of the *.crx file and the page where the download is started from (i.e. the referrer) must be allowed by these patterns.
<ph name="EXTENSION_INSTALL_BLACKLIST_POLICY_NAME">ExtensionInstallBlacklist</ph> takes precedence over this policy. That is, an extension on the blacklist won't be installed, even if it happens from a site on this list.''',
'label': '''URL patterns to allow extension, app, and user script installs from''',
},
{
'name': 'ExtensionAllowedTypes',
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [
'extension',
'theme',
'user_script',
'hosted_app',
'legacy_packaged_app',
'platform_app'
],
},
'id': 'ExtensionAllowedTypes',
},
'supported_on': ['chrome.*:25-', 'chrome_os:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['hosted_app'],
'id': 168,
'caption': '''Configure allowed app/extension types''',
'tags': [],
'desc': '''Controls which app/extension types are allowed to be installed and limits runtime access.
This setting white-lists the allowed types of extension/apps that can be installed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and which hosts they can interact with. The value is a list of strings, each of which should be one of the following: "extension", "theme", "user_script", "hosted_app", "legacy_packaged_app", "platform_app". See the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> extensions documentation for more information on these types.
Note that this policy also affects extensions and apps to be force-installed via ExtensionInstallForcelist.
If this setting is configured, extensions/apps which have a type that is not on the list will not be installed.
If this settings is left not-configured, no restrictions on the acceptable extension/app types are enforced.''',
'label': '''Types of extensions/apps that are allowed to be installed''',
},
{
'name': 'ExtensionSettings',
'type': 'dict',
'schema': {
'type': 'object',
'patternProperties': {
'^[a-p]{32}$': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed', 'force_installed', 'normal_installed']
},
'update_url': { 'type': 'string' },
'blocked_permissions': {
'type': 'array',
'items': {
'type': 'string',
'pattern': '^[a-z][a-zA-Z.]*$',
},
'id': 'ListOfPermissions',
},
'allowed_permissions': {
'$ref': 'ListOfPermissions',
},
'minimum_version_required': {
'type': 'string',
'pattern': '^[0-9]+([.][0-9]+)*$',
},
'runtime_blocked_hosts': {
'type': 'array',
'items': {
'type': 'string'
},
'id': 'ListOfUrlPatterns'
},
'runtime_allowed_hosts': {
'$ref': 'ListOfUrlPatterns'
},
'blocked_install_message': {
'type': 'string'
}
},
},
'^update_url:': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed']
},
'blocked_permissions': {
'$ref': 'ListOfPermissions',
},
'allowed_permissions': {
'$ref': 'ListOfPermissions',
},
},
},
},
'properties': {
'*': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed']
},
'blocked_permissions': {
'$ref': 'ListOfPermissions',
},
'install_sources': {
'$ref': 'ExtensionInstallSources',
},
'allowed_types': {
'$ref': 'ExtensionAllowedTypes',
},
'runtime_blocked_hosts': {
'$ref': 'ListOfUrlPatterns'
},
'runtime_allowed_hosts': {
'$ref': 'ListOfUrlPatterns'
},
'blocked_install_message': {
'type': 'string'
}
},
},
},
},
'supported_on': ['chrome.*:62-', 'chrome_os:62-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
'abcdefghijklmnopabcdefghijklmnop' : {
'installation_mode': 'allowed',
'blocked_permissions': ['history'],
'minimum_version_required': '1.0.1',
},
'bcdefghijklmnopabcdefghijklmnopa' : {
'installation_mode': 'force_installed',
'update_url': 'https://example.com/update_url',
'allowed_permissions': ['downloads'],
'runtime_blocked_hosts': ['*://*.example.com'],
'runtime_allowed_hosts': ['*://good.example.com'],
},
'update_url:https://www.example.com/update.xml': {
'blocked_permissions': ['wallpaper'],
},
'*': {
'installation_mode': 'blocked',
'blocked_permissions': ['downloads', 'bookmarks'],
'install_sources': ['https://company-intranet/chromeapps'],
'allowed_types': ['hosted_app'],
},
},
'id': 278,
'caption': 'Extension management settings',
'tags': [],
'desc': '''Configures extension management settings for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy controls multiple settings, including settings controlled by any existing extension-related policies. This policy will override any legacy policies if both are set.
This policy maps an extension ID or an update URL to its configuration. With an extension ID, configuration will be applied to the specified extension only. A default configuration can be set for the special ID <ph name="DEFAULT_SCOPE">"*"</ph>, which will apply to all extensions that don't have a custom configuration set in this policy. With an update URL, configuration will be applied to all extensions with the exact update URL stated in manifest of this extension, as described at <ph name="LINK_TO_EXTENSION_DOC1">https://developer.chrome.com/extensions/autoupdate</ph>.
For a full description of possible settings and structure of this policy please visit https://www.chromium.org/administrators/policy-list-3/extension-settings-full
''',
},
{
'name': 'ShowHomeButton',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 35,
'caption': '''Show Home button on toolbar''',
'tags': [],
'desc': '''Shows the Home button on <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s toolbar.
If you enable this setting, the Home button is always shown.
If you disable this setting, the Home button is never shown.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Leaving this policy not set will allow the user to choose whether to show the home button.''',
},
{
'name': 'DeveloperToolsDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 36,
'caption': '''Disable Developer Tools''',
'tags': [],
'desc': '''This policy is deprecated in M68, please use DeveloperToolsAvailability instead.
Disables the Developer Tools and the JavaScript console.
If you enable this setting, the Developer Tools can not be accessed and web-site elements can not be inspected anymore. Any keyboard shortcuts and any menu or context menu entries to open the Developer Tools or the JavaScript Console will be disabled.
Setting this option to disabled or leaving it not set allows the user to use the Developer Tools and the JavaScript console.
If the policy DeveloperToolsAvailability is set, the value of the policy DeveloperToolsDisabled is ignored.''',
'arc_support': 'This policy also controls access to Android Developer Options. If you set this policy to true, users cannot access Developer Options. If you set this policy to false or leave it unset, users can access Developer Options by tapping seven times on the build number in the Android settings app.',
},
{
'name': 'DeveloperToolsAvailability',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [0, 1, 2],
},
'items': [
{
'name': 'DeveloperToolsDisallowedForForceInstalledExtensions',
'value': 0,
'caption': '''Disallow usage of the Developer Tools on extensions installed by enterprise policy, allow usage of the Developer Tools in other contexts''',
},
{
'name': 'DeveloperToolsAllowed',
'value': 1,
'caption': '''Allow usage of the Developer Tools''',
},
{
'name': 'DeveloperToolsDisallowed',
'value': 2,
'caption': '''Disallow usage of the Developer Tools''',
},
],
'supported_on': ['chrome.*:68-', 'chrome_os:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 443,
'caption': '''Control where Developer Tools can be used''',
'tags': [],
'desc': '''Allows you to control where Developer Tools can be used.
If this policy is set to 'DeveloperToolsDisallowedForForceInstalledExtensions' (value 0, which is the default value), the Developer Tools and the JavaScript console can be accessed in general, but they can not be accessed in the context of extensions installed by enterprise policy.
If this policy is set to 'DeveloperToolsAllowed' (value 1), the Developer Tools and the JavaScript console can be accessed and used in all contexts, including the context of extensions installed by enterprise policy.
If this policy is set to 'DeveloperToolsDisallowed' (value 2), the Developer Tools can not be accessed and web-site elements can not be inspected anymore. Any keyboard shortcuts and any menu or context menu entries to open the Developer Tools or the JavaScript Console will be disabled.''',
'arc_support': '''This policy also controls access to Android Developer Options. If you set this policy to 'DeveloperToolsDisallowed' (value 2), users cannot access Developer Options. If you set this policy to another value or leave it unset, users can access Developer Options by tapping seven times on the build number in the Android settings app.''',
},
{
'name': 'RestoreOnStartup',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 4, 5 ],
},
'items': [
{
'name': 'RestoreOnStartupIsNewTabPage',
'value': 5,
'caption': '''Open New Tab Page''',
},
{
'name': 'RestoreOnStartupIsLastSession',
'value': 1,
'caption': '''Restore the last session''',
},
{
'name': 'RestoreOnStartupIsURLs',
'value': 4,
'caption': '''Open a list of URLs''',
},
],
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 4,
'id': 37,
'caption': '''Action on startup''',
'tags': [],
'desc': '''Allows you to specify the behavior on startup.
If you choose 'Open New Tab Page' the New Tab Page will always be opened when you start <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If you choose 'Restore the last session', the URLs that were open last time <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> was closed will be reopened and the browsing session will be restored as it was left.
Choosing this option disables some settings that rely on sessions or that perform actions on exit (such as Clear browsing data on exit or session-only cookies).
If you choose 'Open a list of URLs', the list of 'URLs to open on startup' will be opened when a user starts <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If you enable this setting, users cannot change or override it in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Disabling this setting is equivalent to leaving it not configured. The user will still be able to change it in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'RestoreOnStartupURLs',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:8-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://example.com', 'https://www.chromium.org'],
'id': 38,
'caption': '''URLs to open on startup''',
'tags': [],
'desc': '''If 'Open a list of URLs' is selected as the startup action, this allows you to specify the list of URLs that are opened. If left not set no URL will be opened on start up.
This policy only works if the 'RestoreOnStartup' policy is set to 'RestoreOnStartupIsURLs'.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'BlockThirdPartyCookies',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:10-', 'chrome_os:11-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 39,
'caption': '''Block third party cookies''',
'tags': [],
'desc': '''Enabling this setting prevents cookies from being set by web page elements that are not from the domain that is in the browser's address bar.
Disabling this setting allows cookies to be set by web page elements that are not from the domain that is in the browser's address bar and prevents users from changing this setting.
If this policy is left not set, third party cookies will be enabled but the user will be able to change that.''',
},
{
'name': 'DefaultSearchProviderEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 40,
'caption': '''Enable the default search provider''',
'tags': [],
'desc': '''Enables the use of a default search provider.
If you enable this setting, a default search is performed when the user types text in the omnibox that is not a URL.
You can specify the default search provider to be used by setting the rest of the default search policies. If these are left empty, the user can choose the default provider.
If you disable this setting, no search is performed when the user enters non-URL text in the omnibox.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, the default search provider is enabled, and the user will be able to set the search provider list.
This policy is not available on Windows instances that are not joined
to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'DefaultSearchProviderName',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'My Intranet Search',
'id': 41,
'caption': '''Default search provider name''',
'tags': ['website-sharing'],
'desc': '''Specifies the name of the default search provider. If left empty or not set, the host name specified by the search URL will be used.
This policy is only considered if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderKeyword',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'mis',
'id': 42,
'caption': '''Default search provider keyword''',
'tags': [],
'desc': '''Specifies the keyword, which is the shortcut used in the omnibox to trigger the search for this provider.
This policy is optional. If not set, no keyword will activate the search provider.
This policy is only considered if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderSearchURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/search?q={searchTerms}',
'id': 43,
'caption': '''Default search provider search URL''',
'tags': ['website-sharing'],
'desc': '''Specifies the URL of the search engine used when doing a default search. The URL should contain the string '<ph name="SEARCH_TERM_MARKER">{searchTerms}</ph>', which will be replaced at query time by the terms the user is searching for.
Google's search URL can be specified as: <ph name="GOOGLE_SEARCH_URL">'{google:baseURL}search?q={searchTerms}&amp;{google:RLZ}{google:originalQueryForSuggestion}{google:assistedQueryStats}{google:searchFieldtrialParameter}{google:searchClient}{google:sourceId}ie={inputEncoding}'</ph>.
This option must be set when the 'DefaultSearchProviderEnabled' policy is enabled and will only be respected if this is the case.''',
},
{
'name': 'DefaultSearchProviderSuggestURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/suggest?q={searchTerms}',
'id': 44,
'caption': '''Default search provider suggest URL''',
'tags': [],
'desc': '''Specifies the URL of the search engine used to provide search suggestions. The URL should contain the string '<ph name="SEARCH_TERM_MARKER">{searchTerms}</ph>', which will be replaced at query time by the text the user has entered so far.
This policy is optional. If not set, no suggest URL will be used.
Google's suggest URL can be specified as: <ph name="GOOGLE_SUGGEST_SEARCH_URL">'{google:baseURL}complete/search?output=chrome&amp;q={searchTerms}'</ph>.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderInstantURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:10-63', 'chrome_os:11-63', 'android:30-63'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/suggest?q={searchTerms}',
'id': 45,
'caption': '''Default search provider instant URL''',
'tags': [],
'desc': '''Specifies the URL of the search engine used to provide instant results. The URL should contain the string <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, which will be replaced at query time by the text the user has entered so far.
This policy is optional. If not set, no instant search results will be provided.
Google's instant results URL can be specified as: <ph name="GOOGLE_INSTANT_SEARCH_URL">'{google:baseURL}suggest?q={searchTerms}'</ph>.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderIconURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/favicon.ico',
'id': 46,
'caption': '''Default search provider icon''',
'tags': [],
'desc': '''Specifies the favorite icon URL of the default search provider.
This policy is optional. If not set, no icon will be present for the search provider.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderEncodings',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['UTF-8', 'UTF-16', 'GB2312', 'ISO-8859-1'],
'id': 47,
'caption': '''Default search provider encodings''',
'tags': [],
'desc': '''Specifies the character encodings supported by the search provider. Encodings are code page names like UTF-8, GB2312, and ISO-8859-1. They are tried in the order provided.
This policy is optional. If not set, the default will be used which is UTF-8.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderAlternateURLs',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:24-', 'chrome_os:24-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://search.my.company/suggest#q={searchTerms}', 'https://search.my.company/suggest/search#q={searchTerms}'],
'id': 161,
'caption': '''List of alternate URLs for the default search provider''',
'tags': [],
'desc': '''Specifies a list of alternate URLs that can be used to extract search terms from the search engine. The URLs should contain the string <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, which will be used to extract the search terms.
This policy is optional. If not set, no alternate urls will be used to extract search terms.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderSearchTermsReplacementKey',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:25-63', 'chrome_os:25-63', 'android:30-63'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'espv',
'id': 171,
'caption': '''Parameter controlling search term placement for the default search provider''',
'tags': [],
'desc': '''If this policy is set and a search URL suggested from the omnibox contains this parameter in the query string or in the fragment identifier, then the suggestion will show the search terms and search provider instead of the raw search URL.
This policy is optional. If not set, no search term replacement will be performed.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderImageURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:29-', 'chrome_os:29-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/searchbyimage/upload',
'id': 229,
'caption': '''Parameter providing search-by-image feature for the default search provider''',
'tags': [],
'desc': '''Specifies the URL of the search engine used to provide image search. Search requests will be sent using the GET method. If the DefaultSearchProviderImageURLPostParams policy is set then image search requests will use the POST method instead.
This policy is optional. If not set, no image search will be used.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderNewTabURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:30-', 'chrome_os:30-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/newtab',
'id': 237,
'caption': '''Default search provider new tab page URL''',
'tags': [],
'desc': '''Specifies the URL that a search engine uses to provide a new tab page.
This policy is optional. If not set, no new tab page will be provided.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderSearchURLPostParams',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:29-', 'chrome_os:29-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'q={searchTerms},ie=utf-8,oe=utf-8',
'id': 230,
'caption': '''Parameters for search URL which uses POST''',
'tags': [],
'desc': '''Specifies the parameters used when searching a URL with POST. It consists of comma-separated name/value pairs. If a value is a template parameter, like {searchTerms} in above example, it will be replaced with real search terms data.
This policy is optional. If not set, search request will be sent using the GET method.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderSuggestURLPostParams',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:29-', 'chrome_os:29-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'q={searchTerms},ie=utf-8,oe=utf-8',
'id': 231,
'caption': '''Parameters for suggest URL which uses POST''',
'tags': [],
'desc': '''Specifies the parameters used when doing suggestion search with POST. It consists of comma-separated name/value pairs. If a value is a template parameter, like {searchTerms} in above example, it will be replaced with real search terms data.
This policy is optional. If not set, suggest search request will be sent using the GET method.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderInstantURLPostParams',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:29-63', 'chrome_os:29-63', 'android:30-63'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'q={searchTerms},ie=utf-8,oe=utf-8',
'id': 232,
'caption': '''Parameters for instant URL which uses POST''',
'tags': [],
'desc': '''Specifies the parameters used when doing instant search with POST. It consists of comma-separated name/value pairs. If a value is a template parameter, like {searchTerms} in above example, it will be replaced with real search terms data.
This policy is optional. If not set, instant search request will be sent using the GET method.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultSearchProviderImageURLPostParams',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:29-', 'chrome_os:29-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'content={imageThumbnail},url={imageURL},sbisrc={SearchSource}',
'id': 233,
'caption': '''Parameters for image URL which uses POST''',
'tags': [],
'desc': '''Specifies the parameters used when doing image search with POST. It consists of comma-separated name/value pairs. If a value is a template parameter, like {imageThumbnail} in above example, it will be replaced with real image thumbnail data.
This policy is optional. If not set, image search request will be sent using the GET method.
This policy is only respected if the 'DefaultSearchProviderEnabled' policy is enabled.''',
},
{
'name': 'DefaultCookiesSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 4 ],
},
'items': [
{
'name': 'AllowCookies',
'value': 1,
'caption': '''Allow all sites to set local data''',
},
{
'name': 'BlockCookies',
'value': 2,
'caption': '''Do not allow any site to set local data''',
},
{
'name': 'SessionOnly',
'value': 4,
'caption': '''Keep cookies for the duration of the session''',
},
],
'supported_on': [
'chrome.*:10-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 48,
'caption': '''Default cookies setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to set local data. Setting local data can be either allowed for all websites or denied for all websites.
If this policy is set to 'Keep cookies for the duration of the session' then cookies will be cleared when the session closes. Note that if <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running in 'background mode', the session may not close when the last window is closed. Please see the 'BackgroundModeEnabled' policy for more information about configuring this behavior.
If this policy is left not set, 'AllowCookies' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultImagesSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'AllowImages',
'value': 1,
'caption': '''Allow all sites to show all images''',
},
{
'name': 'BlockImages',
'value': 2,
'caption': '''Do not allow any site to show images''',
},
],
'supported_on': ['chrome.*:10-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 49,
'caption': '''Default images setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to display images. Displaying images can be either allowed for all websites or denied for all websites.
If this policy is left not set, 'AllowImages' will be used and the user will be able to change it.
Note that previously this policy was erroneously enabled on Android, but this functionality has never been fully supported on Android.''',
},
{
'name': 'DefaultJavaScriptSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'AllowJavaScript',
'value': 1,
'caption': '''Allow all sites to run JavaScript''',
},
{
'name': 'BlockJavaScript',
'value': 2,
'caption': '''Do not allow any site to run JavaScript''',
},
],
'supported_on': ['chrome.*:10-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 50,
'caption': '''Default JavaScript setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to run JavaScript. Running JavaScript can be either allowed for all websites or denied for all websites.
If this policy is left not set, 'AllowJavaScript' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultPluginsSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3 ],
},
'items': [
{
'name': 'AllowPlugins',
'value': 1,
'caption': '''Allow all sites to automatically run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin''',
},
{
'name': 'BlockPlugins',
'value': 2,
'caption': '''Block the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin''',
},
{
'name': 'ClickToPlay',
'value': 3,
'caption': '''Click to play''',
},
],
'supported_on': ['chrome.*:10-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 51,
'caption': '''Default <ph name="FLASH_PLUGIN_NAME">Flash</ph> setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to automatically run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin. Automatically running the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin can be either allowed for all websites or denied for all websites.
Click to play allows the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin to run but the user must click on the placeholder to start its execution.
Automatic playback is only allowed for domains explictly listed in the <ph name="PLUGINS_ALLOWED_FOR_URLS_POLICY_NAME">PluginsAllowedForUrls</ph> policy. If you want to enabled automatic playback for all sites consider adding http://* and https://* to this list.
If this policy is left not set, the user will be able to change this setting manually.''',
},
{
'name': 'DefaultPopupsSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'AllowPopups',
'value': 1,
'caption': '''Allow all sites to show pop-ups''',
},
{
'name': 'BlockPopups',
'value': 2,
'caption': '''Do not allow any site to show popups''',
},
],
'supported_on': [
'chrome.*:10-',
'chrome_os:11-',
'android:33-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 52,
'caption': '''Default popups setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to show pop-ups. Showing popups can be either allowed for all websites or denied for all websites.
If this policy is left not set, 'BlockPopups' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultNotificationsSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3 ],
},
'items': [
{
'name': 'AllowNotifications',
'value': 1,
'caption': '''Allow sites to show desktop notifications''',
},
{
'name': 'BlockNotifications',
'value': 2,
'caption': '''Do not allow any site to show desktop notifications''',
},
{
'name': 'AskNotifications',
'value': 3,
'caption': '''Ask every time a site wants to show desktop notifications''',
},
],
'supported_on': ['chrome.*:10-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 53,
'caption': '''Default notification setting''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to display desktop notifications. Displaying desktop notifications can be allowed by default, denied by default or the user can be asked every time a website wants to show desktop notifications.
If this policy is left not set, 'AskNotifications' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultGeolocationSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3 ],
},
'items': [
{
'name': 'AllowGeolocation',
'value': 1,
'caption': '''Allow sites to track the users' physical location''',
},
{
'name': 'BlockGeolocation',
'value': 2,
'caption': '''Do not allow any site to track the users' physical location''',
},
{
'name': 'AskGeolocation',
'value': 3,
'caption': '''Ask whenever a site wants to track the users' physical location''',
},
],
'supported_on': ['chrome.*:10-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 0,
'id': 54,
'caption': '''Default geolocation setting''',
'tags': ['website-sharing'],
'desc': '''Allows you to set whether websites are allowed to track the users' physical location. Tracking the users' physical location can be allowed by default, denied by default or the user can be asked every time a website requests the physical location.
If this policy is left not set, 'AskGeolocation' will be used and the user will be able to change it.''',
'arc_support': 'If this policy is set to <ph name="BLOCK_GEOLOCATION_SETTING">BlockGeolocation</ph>, Android apps cannot access location information. If you set this policy to any other value or leave it unset, the user is asked to consent when an Android app wants to access location information.',
},
{
'name': 'DefaultMediaStreamSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 2, 3 ],
},
'items': [
{
'name': 'BlockAccess',
'value': 2,
'caption': '''Do not allow any site to access the camera and microphone''',
},
{
'name': 'PromptOnAccess',
'value': 3,
'caption': '''Ask every time a site wants to access the camera and/or microphone''',
},
],
'supported_on': ['chrome.*:22-', 'chrome_os:22-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': 2,
'id': 149,
'caption': '''Default mediastream setting''',
'tags': ['website-sharing'],
'desc': '''Allows you to set whether websites are allowed to get access to media capture devices. Access to media capture devices can be allowed by default, or the user can be asked every time a website wants to get access to media capture devices.
If this policy is left not set, 'PromptOnAccess' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultWebBluetoothGuardSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 2, 3 ],
},
'items': [
{
'name': 'BlockWebBluetooth',
'value': 2,
'caption': '''Do not allow any site to request access to Bluetooth devices via the Web Bluetooth API''',
},
{
'name': 'AskWebBluetooth',
'value': 3,
'caption': '''Allow sites to ask the user to grant access to a nearby Bluetooth device''',
},
],
'supported_on': ['chrome_os:50-', 'android:50-', 'chrome.*:50-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 320,
'caption': '''Control use of the Web Bluetooth API''',
'tags': ['website-sharing'],
'desc': '''Allows you to set whether websites are allowed to get access to nearby Bluetooth devices. Access can be completely blocked, or the user can be asked every time a website wants to get access to nearby Bluetooth devices.
If this policy is left not set, '3' will be used, and the user will be able to change it.''',
},
{
'name': 'DefaultKeygenSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'AllowKeygen',
'value': 1,
'caption': '''Allow all sites to use key generation''',
},
{
'name': 'BlockKeygen',
'value': 2,
'caption': '''Do not allow any site to use key generation''',
},
],
'supported_on': ['chrome.*:49-56', 'chrome_os:49-56', 'android:49-56'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 313,
'caption': '''Default key generation setting''',
'tags': ['system-security', 'website-sharing', 'local-data-access'],
'desc': '''Allows you to set whether websites are allowed to use key generation. Using key generation can be either allowed for all websites or denied for all websites.
If this policy is left not set, 'BlockKeygen' will be used and the user will be able to change it.''',
},
{
'name': 'DefaultWebUsbGuardSetting',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 2, 3 ],
},
'items': [
{
'name': 'BlockWebUsb',
'value': 2,
'caption': '''Do not allow any site to request access to USB devices via the WebUSB API''',
},
{
'name': 'AskWebUsb',
'value': 3,
'caption': '''Allow sites to ask the user to grant access to a connected USB device''',
},
],
'supported_on': ['chrome_os:67-', 'android:67-', 'chrome.*:67-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 434,
'caption': '''Control use of the WebUSB API''',
'tags': ['website-sharing'],
'desc': '''Allows you to set whether websites are allowed to get access to connected USB devices. Access can be completely blocked, or the user can be asked every time a website wants to get access to connected USB devices.
This policy can be overridden for specific URL patterns using the 'WebUsbAskForUrls' and 'WebUsbBlockedForUrls' policies.
If this policy is left not set, '3' will be used, and the user will be able to change it.''',
},
{
'name': 'WebUsbAskForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:68-', 'android:68-', 'chrome.*:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 439,
'caption': '''Allow WebUSB on these sites''',
'tags': ['website-sharing'],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to ask the user to grant them access to a USB device.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultWebUsbGuardSetting' policy if it is set, or the user's personal configuration otherwise.
URL patterns in this policy should not clash with ones configured via WebUsbBlockedForUrls. It is unspecified which of the two policies takes precedence if a URL matches with both.''',
},
{
'name': 'WebUsbBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:68-', 'android:68-', 'chrome.*:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 440,
'caption': '''Block WebUSB on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are prevented from asking the user to grant them access to a USB device.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultWebUsbGuardSetting' policy if it is set, or the user's personal configuration otherwise.
URL patterns in this policy should not clash with ones configured via WebUsbAskForUrls. It is unspecified which of the two policies takes precedence if a URL matches with both.''',
},
{
'name': 'AutoSelectCertificateForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'validation_schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'pattern': { 'type': 'string'},
'filter': {
'type': 'object',
'properties': {
'ISSUER': {
'type': 'object',
'properties': {
'CN': { 'type': 'string'},
}
}
}
}
}
}
},
'supported_on': ['chrome.*:15-', 'chrome_os:15-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['{"pattern":"https://www.example.com","filter":{"ISSUER":{"CN":"certificate issuer name"}}}'],
'id': 102,
'caption': '''Automatically select client certificates for these sites''',
'tags': ['website-sharing'],
'desc': '''Allows you to specify a list of url patterns that specify sites for which <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> should automatically select a client certificate, if the site requests a certificate.
The value must be an array of stringified JSON dictionaries. Each dictionary must have the form { "pattern": "$URL_PATTERN", "filter" : $FILTER }, where $URL_PATTERN is a content setting pattern. $FILTER restricts from which client certificates the browser will automatically select. Independent of the filter, only certificates will be selected that match the server's certificate request. If $FILTER has the form { "ISSUER": { "CN": "$ISSUER_CN" } }, additionally only client certificates are selected that are issued by a certificate with the CommonName $ISSUER_CN. If $FILTER is the empty dictionary {}, the selection of client certificates is not additionally restricted.
If this policy is left not set, no auto-selection will be done for any site.''',
},
{
'name': 'DeviceLoginScreenAutoSelectCertificateForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'validation_schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'pattern': { 'type': 'string'},
'filter': {
'type': 'object',
'properties': {
'ISSUER': {
'type': 'object',
'properties': {
'CN': { 'type': 'string'},
}
}
}
}
}
}
},
'supported_on': ['chrome_os:65-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': ['{"pattern":"https://www.example.com","filter":{"ISSUER":{"CN":"certificate issuer name"}}}'],
'id': 396,
'caption': '''Automatically select client certificates for these sites on the sign-in screen''',
'tags': ['website-sharing'],
'desc': '''Allows you to specify a list of url patterns that specify sites for which a client certificate is automatically selected on the sign-in screen in the frame hosting the SAML flow, if the site requests a certificate. An example usage is to configure a device-wide certificate to be presented to the SAML IdP.
The value must be an array of stringified JSON dictionaries. Each dictionary must have the form { "pattern": "$URL_PATTERN", "filter" : $FILTER }, where $URL_PATTERN is a content setting pattern. $FILTER restricts from which client certificates the browser will automatically select. Independent of the filter, only certificates will be selected that match the server's certificate request. If $FILTER has the form { "ISSUER": { "CN": "$ISSUER_CN" } }, additionally only client certificates are selected that are issued by a certificate with the CommonName $ISSUER_CN. If $FILTER is the empty dictionary {}, the selection of client certificates is not additionally restricted.
If this policy is left not set, no auto-selection will be done for any site.''',
},
{
'name': 'CookiesAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 77,
'caption': '''Allow cookies on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to set cookies.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultCookiesSetting' policy if it is set, or the user's personal configuration otherwise.
See also policies 'CookiesBlockedForUrls' and 'CookiesSessionOnlyForUrls'. Note that there must be no conflicting URL patterns between these three policies - it is unspecified which policy takes precedence.''',
},
{
'name': 'CookiesBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 67,
'caption': '''Block cookies on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to set cookies.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultCookiesSetting' policy if it is set, or the user's personal configuration otherwise.
See also policies 'CookiesAllowedForUrls' and 'CookiesSessionOnlyForUrls'. Note that there must be no conflicting URL patterns between these three policies - it is unspecified which policy takes precedence.''',
},
{
'name': 'CookiesSessionOnlyForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 68,
'caption': '''Limit cookies from matching URLs to the current session''',
'tags': [],
'desc': '''Cookies set by pages matching these URL patterns will be limited to the current session, i.e. they will be deleted when the browser exits.
For URLs not covered by the patterns specified here, or for all URLs if this policy is not set, the global default value will be used either from the 'DefaultCookiesSetting' policy, if it is set, or the user's personal configuration otherwise.
Note that if <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running in 'background mode', the session may not be closed when the last browser window is closed, but will instead stay active until the browser exits. Please see the 'BackgroundModeEnabled' policy for more information about configuring this behavior.
See also policies 'CookiesAllowedForUrls' and 'CookiesBlockedForUrls'. Note that there must be no conflicting URL patterns between these three policies - it is unspecified which policy takes precedence.
If the "RestoreOnStartup" policy is set to restore URLs from previous sessions this policy will not be respected and cookies will be stored permanently for those sites.''',
},
{
'name': 'ImagesAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 69,
'caption': '''Allow images on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to display images.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultImagesSetting' policy if it is set, or the user's personal configuration otherwise.
Note that previously this policy was erroneously enabled on Android, but this functionality has never been fully supported on Android.''',
},
{
'name': 'ImagesBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 70,
'caption': '''Block images on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to display images.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultImagesSetting' policy if it is set, or the user's personal configuration otherwise.
Note that previously this policy was erroneously enabled on Android, but this functionality has never been fully supported on Android.''',
},
{
'name': 'JavaScriptAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 71,
'caption': '''Allow JavaScript on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to run JavaScript.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultJavaScriptSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'JavaScriptBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 72,
'caption': '''Block JavaScript on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to run JavaScript.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultJavaScriptSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'KeygenAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:49-56', 'chrome_os:49-56', 'android:49-56'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 314,
'caption': '''Allow key generation on these sites''',
'tags': ['system-security', 'website-sharing', 'local-data-access'],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to use key generation. If a url pattern is in 'KeygenBlockedForUrls', that overrides these exceptions.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultKeygenSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'KeygenBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:49-56', 'chrome_os:49-56', 'android:49-56'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 315,
'caption': '''Block key generation on these sites''',
'tags': ['system-security', 'website-sharing', 'local-data-access'],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to use key generation. If a url pattern is in 'KeygenAllowedForUrls', this policy overrides these exceptions.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultKeygenSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'PluginsAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 73,
'caption': '''Allow the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultPluginsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'PluginsBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:11-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 74,
'caption': '''Block the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultPluginsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'PopupsAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:34-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 75,
'caption': '''Allow popups on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to open popups.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultPopupsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'RegisteredProtocolHandlers',
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'default': {
'description': 'A boolean flag indicating if the protocol handler should be set as the default.',
'type': 'boolean'
},
'protocol': {
'description': 'The protocol for the protocol handler.',
'type': 'string'
},
'url': {
'description': 'The URL of the protocol handler.',
'type': 'string'
}
},
'required': ['protocol', 'url']
}
},
'supported_on': ['chrome.*:37-', 'chrome_os:37-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
'can_be_recommended': True,
'can_be_mandatory' : False,
},
'example_value': [{'protocol': 'mailto', 'url': 'https://mail.google.com/mail/?extsrc=mailto&url=%s', 'default': True}],
'id': 268,
'caption': '''Register protocol handlers''',
'tags': [],
'desc': '''Allows you to register a list of protocol handlers. This can only be a recommended policy. The property |protocol| should be set to the scheme such as 'mailto' and the property |url| should be set to the URL pattern of the application that handles the scheme. The pattern can include a '%s', which if present will be replaced by the handled URL.
The protocol handlers registered by policy are merged with the ones registered by the user and both are available for use. The user can override the protocol handlers installed by policy by installing a new default handler, but cannot remove a protocol handler registered by policy.''',
'arc_support': 'The protocol handlers set via this policy are not used when handling Android intents.',
},
{
'name': 'PopupsBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:34-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 76,
'caption': '''Block popups on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to open popups.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultPopupsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'NotificationsAllowedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:16-', 'chrome_os:16-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 105,
'caption': '''Allow notifications on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to display notifications.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultNotificationsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'NotificationsBlockedForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:16-', 'chrome_os:16-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 106,
'caption': '''Block notifications on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to display notifications.
If this policy is left not set the global default value will be used for all sites either from the 'DefaultNotificationsSetting' policy if it is set, or the user's personal configuration otherwise.''',
},
{
'name': 'NativeMessagingBlacklist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:34-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [
'com.native.messaging.host.name1',
'com.native.messaging.host.name2',
],
'id': 251,
'caption': '''Configure native messaging blacklist''',
'tags': [],
'desc': '''Allows you to specify which native messaging hosts that should not be loaded.
A blacklist value of '*' means all native messaging hosts are blacklisted unless they are explicitly listed in the whitelist.
If this policy is left not set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will load all installed native messaging hosts.''',
'label': '''Names of the forbidden native messaging hosts (or * for all)''',
},
{
'name': 'NativeMessagingWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:34-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [
'com.native.messaging.host.name1',
'com.native.messaging.host.name2',
],
'id': 252,
'caption': '''Configure native messaging whitelist''',
'tags': [],
'desc': '''Allows you to specify which native messaging hosts are not subject to the blacklist.
A blacklist value of * means all native messaging hosts are blacklisted and only native messaging hosts listed in the whitelist will be loaded.
By default, all native messaging hosts are whitelisted, but if all native messaging hosts have been blacklisted by policy, the whitelist can be used to override that policy.''',
'label': '''Names of the native messaging hosts to exempt from the blacklist''',
},
{
'name': 'NativeMessagingUserLevelHosts',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:34-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 253,
'caption': '''Allow user-level Native Messaging hosts (installed without admin permissions)''',
'tags': [],
'desc': '''Enables user-level installation of Native Messaging hosts.
If this setting is enabled then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows usage of Native Messaging hosts installed on user level.
If this setting is disabled then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will only use Native Messaging hosts installed on system level.
If this setting is left not set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will allow usage of user-level Native Messaging hosts.''',
},
{
'name': 'Disable3DAPIs',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 55,
'caption': '''Disable support for 3D graphics APIs''',
'tags': [],
'desc': '''Enabling this setting prevents web pages from accessing the graphics processing unit (GPU). Specifically, web pages can not access the WebGL API and plugins can not use the Pepper 3D API.
Disabling this setting or leaving it not set potentially allows web pages to use the WebGL API and plugins to use the Pepper 3D API. The default settings of the browser may still require command line arguments to be passed in order to use these APIs.
If HardwareAccelerationModeEnabled is set to false, Disable3DAPIs is ignored and it is equivalent to Disable3DAPIs being set to true.''',
},
{
'name': 'PolicyRefreshRate',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 3600000,
'id': 56,
'caption': '''Refresh rate for user policy''',
'tags': [],
'desc': '''Specifies the period in milliseconds at which the device management service is queried for user policy information.
Setting this policy overrides the default value of 3 hours. Valid values for this policy are in the range from 1800000 (30 minutes) to 86400000 (1 day). Any values not in this range will be clamped to the respective boundary. If the platform supports policy notifications, the refresh delay will be set to 24 hours because it is expected that policy notifications will force a refresh automatically whenever policy changes.
Leaving this policy not set will make <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> use the default value of 3 hours.
Note that if the platform supports policy notifications, the refresh delay will be set to 24 hours (ignoring all defaults and the value of this policy) because it is expected that policy notifications will force a refresh automatically whenever policy changes, making more frequent refreshes unnecessary.''',
},
{
'name': 'MaxInvalidationFetchDelay',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome.*:30-', 'chrome_os:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 10000,
'id': 228,
'caption': '''Maximum fetch delay after a policy invalidation''',
'tags': [],
'desc': '''Specifies the maximum delay in milliseconds between receiving a policy invalidation and fetching the new policy from the device management service.
Setting this policy overrides the default value of 5000 milliseconds. Valid values for this policy are in the range from 1000 (1 second) to 300000 (5 minutes). Any values not in this range will be clamped to the respective boundary.
Leaving this policy not set will make <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> use the default value of 5000 milliseconds.''',
},
{
'name': 'ChromeFrameRendererSettings',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'RenderInHost',
'value': 0,
'caption': '''Use the host browser by default''',
},
{
'name': 'RenderInChromeFrame',
'value': 1,
'caption': '''Use <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> by default''',
},
],
'supported_on': ['chrome_frame:8-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': 1,
'id': 57,
'caption': '''Default HTML renderer for <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>''',
'tags': [],
'desc': '''Allows you to configure the default HTML renderer when <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> is installed.
The default setting used when this policy is left not set is to allow the host browser do the rendering, but you can optionally override this and have <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> render HTML pages by default.''',
},
{
'name': 'RenderInChromeFrameList',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_frame:8-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': ['https://www.example.com', 'https://www.example.edu'],
'id': 58,
'caption': '''Always render the following URL patterns in <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>''',
'tags': [],
'desc': '''Customize the list of URL patterns that should always be rendered by <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>.
If this policy is not set the default renderer will be used for all sites as specified by the 'ChromeFrameRendererSettings' policy.
For example patterns see https://www.chromium.org/developers/how-tos/chrome-frame-getting-started.''',
},
{
'name': 'RenderInHostList',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_frame:8-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': ['https://www.example.com', 'https://www.example.edu'],
'id': 59,
'caption': '''Always render the following URL patterns in the host browser''',
'tags': [],
'desc': '''Customize the list of URL patterns that should always be rendered by the host browser.
If this policy is not set the default renderer will be used for all sites as specified by the 'ChromeFrameRendererSettings' policy.
For example patterns see https://www.chromium.org/developers/how-tos/chrome-frame-getting-started.''',
},
{
'name': 'AdditionalLaunchParameters',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_frame:19-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': '--enable-media-stream --enable-media-source',
'id': 141,
'caption': '''Additional command line parameters for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''Allows you to specify additional parameters that are used when <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> launches <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is not set the default command line will be used.''',
},
{
'name': 'SkipMetadataCheck',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_frame:31-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': False,
'id': 238,
'caption': '''Skip the meta tag check in <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>''',
'tags': [],
'desc': '''Normally pages with X-UA-Compatible set to chrome=1 will be rendered in <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> regardless of the 'ChromeFrameRendererSettings' policy.
If you enable this setting, pages will not be scanned for meta tags.
If you disable this setting, pages will be scanned for meta tags.
If this policy is not set, pages will be scanned for meta tags.'''
},
{
'name': 'ChromeFrameContentTypes',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_frame:8-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': ['text/xml', 'application/xml'],
'id': 60,
'caption': '''Allow <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> to handle the listed content types''',
'tags': [],
'desc': '''If this policy is set, the specified content types are handled by <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>.
If this policy is not set, the default renderer is used for all sites. (The <ph name="CHROME_FRAME_RENDERER_SETTINGS_POLICY_NAME">ChromeFrameRendererSettings</ph> policy may be used to configure the default renderer.)''',
},
{
'name': 'ChromeOsLockOnIdleSuspend',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:9-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 61,
'caption': '''Enable lock when the device become idle or suspended''',
'tags': [],
'desc': '''Enable lock when <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices become idle or suspended.
If you enable this setting, users will be asked for a password to unlock the device from sleep.
If you disable this setting, users will not be asked for a password to unlock the device from sleep.
If you enable or disable this setting, users cannot change or override it.
If the policy is left not set the user can choose whether they want to be asked for password to unlock the device or not.''',
},
{
'name': 'ChromeOsMultiProfileUserBehavior',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'unrestricted',
'primary-only',
'not-allowed',
],
},
'items': [
{
'name': 'MultiProfileUserBehaviorUnrestricted',
'value': 'unrestricted',
'caption': '''Allow enterprise user to be both primary and secondary (Default behavior for non-managed users)''',
},
{
'name': 'MultiProfileUserBehaviorMustBePrimary',
'value': 'primary-only',
'caption': '''Allow enterprise user to be primary multiprofile user only (Default behavior for enterprise-managed users)''',
},
{
'name': 'MultiProfileUserBehaviorNotAllowed',
'value': 'not-allowed',
'caption': '''Do not allow enterprise user to be part of multiprofile (primary or secondary)''',
},
],
'supported_on': ['chrome_os:31-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'unrestricted',
'default_for_enterprise_users': 'primary-only',
'id': 244,
'caption': '''Control the user behavior in a multiprofile session''',
'tags': [],
'desc': '''Control the user behavior in a multiprofile session on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices.
If this policy is set to 'MultiProfileUserBehaviorUnrestricted', the user can be either primary or secondary user in a multiprofile session.
If this policy is set to 'MultiProfileUserBehaviorMustBePrimary', the user can only be the primary user in a multiprofile session.
If this policy is set to 'MultiProfileUserBehaviorNotAllowed', the user cannot be part of a multiprofile session.
If you set this setting, users cannot change or override it.
If the setting is changed while the user is signed into a multiprofile session, all users in the session will be checked against their corresponding settings. The session will be closed if any one of the users is no longer allowed to be in the session.
If the policy is left not set, the default value 'MultiProfileUserBehaviorMustBePrimary' applies for enterprise-managed users and 'MultiProfileUserBehaviorUnrestricted' will be used for non-managed users.''',
'arc_support': 'When multiple users are logged in, only the primary user can use Android apps.',
},
{
'name': 'SecondaryGoogleAccountSigninAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:65-'],
'features': {
# The case where a user is already signed into an unmanaged account from the content area cannot be handled right now and hence this is not dynamic.
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 406,
'caption': '''Allow Multiple Sign-in Within the Browser''',
'tags': [],
'desc': '''This setting allows users to switch between Google accounts within the content area of their browser window after they sign into their <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> device.
If this policy is set to false, signing in to a different account from non-Incognito browser content area will not be allowed.
If this policy is unset or set to true, the default behavior will be used: signing in to a different account from the browser content area will be allowed, except for child accounts where it will be blocked for non-Incognito content area.
In case signing in to a different account shouldn't be allowed via the Incognito mode, consider blocking that mode using the IncognitoModeAvailability policy.
Note that users will be able to access Google services in an unauthenticated state by blocking their cookies.''',
},
{
'name': 'InstantEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:11-28', 'chrome_os:11-28'],
'deprecated': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 62,
'caption': '''Enable Instant''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s Instant feature and prevents users from changing this setting.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Instant is enabled.
If you disable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Instant is disabled.
If you enable or disable this setting, users cannot change or override this setting.
If this setting is left not set the user can decide to use this function or not.
This setting has been removed from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 29 and higher versions.''',
},
{
'name': 'TranslateEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:12-',
'chrome_os:12-',
'android:30-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 80,
'caption': '''Enable Translate''',
'tags': [],
'desc': '''Enables the integrated Google Translate service on <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will offer translation functionality to the user by showing an integrated translate toolbar (when appropriate) and a translate option on the right-click context menu.
If you disable this setting, all built-in translate features will be disabled.
If you enable or disable this setting, users cannot change or override this setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this setting is left not set the user can decide to use this function or not.''',
},
{
'name': 'AllowOutdatedPlugins',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:12-', 'chrome_os:12-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 81,
'caption': '''Allow running plugins that are outdated''',
'tags': ['system-security'],
'desc': '''If you enable this setting, outdated plugins are used as normal plugins.
If you disable this setting, outdated plugins will not be used and users will not be asked for permission to run them.
If this setting is not set, users will be asked for permission to run outdated plugins.''',
},
{
'name': 'AlwaysAuthorizePlugins',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:13-64', 'chrome_os:13-64'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 86,
'caption': '''Always runs plugins that require authorization (deprecated)''',
'tags': ['system-security'],
'desc': '''If you enable this setting, plugins that are not outdated always run.
If this setting is disabled or not set, users will be asked for permission to run plugins that require authorization. These are plugins that can compromise security.''',
},
{
'name': 'RunAllFlashInAllowMode',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:63-', 'chrome_os:63-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 391,
'caption': '''Extend Flash content setting to all content''',
'tags': ['system-security'],
'desc': '''If you enable this setting, all Flash content embedded on websites that have been set to allow Flash in content settings -- either by the user or by enterprise policy -- will be run, including content from other origins or small content.
To control which websites are allowed to run Flash, see the "DefaultPluginsSetting", "PluginsAllowedForUrls", and "PluginsBlockedForUrls" policies.
If this setting is disabled or not set, Flash content from other origins or small content might be blocked.''',
},
{
'name': 'BookmarkBarEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:12-', 'chrome_os:12-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 82,
'caption': '''Enable Bookmark Bar''',
'tags': [],
'desc': '''If you enable this setting, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will show a bookmark bar.
If you disable this setting, users will never see the bookmark bar.
If you enable or disable this setting, users cannot change or override it in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this setting is left not set the user can decide to use this function or not.''',
},
{
'name': 'EditBookmarksEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:12-', 'chrome_os:12-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 83,
'caption': '''Enable or disable bookmark editing''',
'tags': [],
'desc': '''If you enable this setting, bookmarks can be added, removed or modified. This is the default also when this policy is not set.
If you disable this setting, bookmarks can not be added, removed or modified. Existing bookmarks are still available.''',
},
{
'name': 'ShowAppsShortcutInBookmarkBar',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:37-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 267,
'caption': '''Show the apps shortcut in the bookmark bar''',
'tags': [],
'desc': '''Enables or disables the apps shortcut in the bookmark bar.
If this policy is not set then the user can choose to show or hide the apps shortcut from the bookmark bar context menu.
If this policy is configured then the user can't change it, and the apps shortcut is always shown or never shown.''',
},
{
'name': 'AllowFileSelectionDialogs',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:12-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 84,
'caption': '''Allow invocation of file selection dialogs''',
'tags': [],
'desc': '''Allows access to local files on the machine by allowing <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to display file selection dialogs.
If you enable this setting, users can open file selection dialogs as normal.
If you disable this setting, whenever the user performs an action which would provoke a file selection dialog (like importing bookmarks, uploading files, saving links, etc.) a message is displayed instead and the user is assumed to have clicked Cancel on the file selection dialog.
If this setting is not set, users can open file selection dialogs as normal.''',
},
{
'name': 'SecurityKeyPermitAttestation',
'tags': ['website-sharing'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:65-', 'chrome_os:65-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://example.com'],
'id': 402,
'caption': '''URLs/domains automatically permitted direct Security Key attestation''',
'desc': '''Specifies URLs and domains for which no prompt will be shown when attestation certificates from Security Keys are requested. Additionally, a signal will be sent to the Security Key indicating that individual attestation may be used. Without this, users will be prompted in Chrome 65+ when sites request attestation of Security Keys.
URLs (like https://example.com/some/path) will only match as U2F appIDs. Domains (like example.com) only match as webauthn RP IDs. Thus, to cover both U2F and webauthn APIs for a given site, both the appID URL and domain would need to be listed.''',
},
{
'name': 'GCFUserDataDir',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_frame:12-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': '${user_home}/Chrome Frame',
'id': 87,
'caption': '''Set <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> user data directory''',
'tags': [],
'desc': '''Configures the directory that <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> will use for storing user data.
If you set this policy, <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> will use the provided directory.
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.
If this setting is left not set the default profile directory will be used.''',
'label': '''Set user data directory''',
},
{
'name': 'DevicePolicyRefreshRate',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:11-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 3600000,
'id': 90,
'caption': '''Refresh rate for Device Policy''',
'tags': [],
'desc': '''Specifies the period in milliseconds at which the device management service is queried for device policy information.
Setting this policy overrides the default value of 3 hours. Valid values for this policy are in the range from 1800000 (30 minutes) to 86400000 (1 day). Any values not in this range will be clamped to the respective boundary.
Leaving this policy not set will make <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> use the default value of 3 hours.
Note that if the platform supports policy notifications, the refresh delay will be set to 24 hours (ignoring all defaults and the value of this policy) because it is expected that policy notifications will force a refresh automatically whenever policy changes, making more frequent refreshes unnecessary.''',
},
{
'name': 'ImportBookmarks',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 97,
'caption': '''Import bookmarks from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces bookmarks to be imported from the current default browser if enabled. If enabled, this policy also affects the import dialog.
If disabled, no bookmarks are imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import bookmarks from default browser on first run''',
},
{
'name': 'ImportHistory',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 98,
'caption': '''Import browsing history from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces the browsing history to be imported from the current default browser if enabled. If enabled, this policy also affects the import dialog.
If disabled, no browsing history is imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import browsing history from default browser on first run''',
},
{
'name': 'ImportHomepage',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 99,
'caption': '''Import of homepage from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces the home page to be imported from the current default browser if enabled.
If disabled, the home page is not imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import of homepage from default browser on first run''',
},
{
'name': 'ImportSearchEngine',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 100,
'caption': '''Import search engines from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces search engines to be imported from the current default browser if enabled. If enabled, this policy also affects the import dialog.
If disabled, the default search engine is not imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import search engines from default browser on first run''',
},
{
'name': 'ImportSavedPasswords',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 101,
'caption': '''Import saved passwords from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces the saved passwords to be imported from the previous default browser if enabled. If enabled, this policy also affects the import dialog.
If disabled, the saved passwords are not imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import saved passwords from default browser on first run''',
},
{
'name': 'ImportAutofillFormData',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:39-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 277,
'caption': '''Import autofill form data from default browser on first run''',
'tags': ['local-data-access'],
'desc': '''This policy forces the autofill form data to be imported from the previous default browser if enabled. If enabled, this policy also affects the import dialog.
If disabled, the autofill form data is not imported.
If it is not set, the user may be asked whether to import, or importing may happen automatically.''',
'label': '''Import autofill form data from default browser on first run''',
},
{
'name': 'MaxConnectionsPerProxy',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome.*:14-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 32,
'id': 92,
'caption': '''Maximal number of concurrent connections to the proxy server''',
'tags': [],
'desc': '''Specifies the maximal number of simultaneous connections to the proxy server.
Some proxy servers can not handle high number of concurrent connections per client and this can be solved by setting this policy to a lower value.
The value of this policy should be lower than 100 and higher than 6 and the default value is 32.
Some web apps are known to consume many connections with hanging GETs, so lowering below 32 may lead to browser networking hangs if too many such web apps are open. Lower below the default at your own risk.
If this policy is left not set the default value will be used which is 32.''',
},
{
'name': 'HideWebStorePromo',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:15-21', 'chrome_os:15-21'],
'deprecated': True,
'features': {
'dynamic_refresh': False,
},
'example_value': False,
'id': 96,
'caption': '''Prevent app promotions from appearing on the new tab page''',
'tags': [],
'desc': '''When set to True, promotions for Chrome Web Store apps will not appear on the new tab page.
Setting this option to False or leaving it not set will make the promotions for Chrome Web Store apps appear on the new tab page''',
},
{
'name': 'URLBlacklist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:15-',
'chrome_os:15-',
'android:30-',
'webview_android:47-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['example.com', 'https://ssl.server.com', 'hosting.com/bad_path', 'https://server:8080/path', '.exact.hostname.com', 'file://*', 'custom_scheme:*', '*'],
'id': 103,
'caption': '''Block access to a list of URLs''',
'tags': ['filtering'],
'desc': '''This policy prevents the user from loading web pages from blacklisted URLs. The blacklist provides a list of URL patterns that specify which URLs will be blacklisted.
A URL pattern has to be formatted according to https://www.chromium.org/administrators/url-blacklist-filter-format.
Exceptions can be defined in the URL whitelist policy. These policies are limited to 1000 entries; subsequent entries will be ignored.
Note that it is not recommended to block internal 'chrome://*' URLs since this may lead to unexpected errors.
If this policy is not set no URL will be blacklisted in the browser.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'URLWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:15-',
'chrome_os:15-',
'android:30-',
'webview_android:47-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['example.com', 'https://ssl.server.com', 'hosting.com/good_path', 'https://server:8080/path', '.exact.hostname.com'],
'id': 104,
'caption': '''Allow access to a list of URLs''',
'tags': [],
'desc': '''Allows access to the listed URLs, as exceptions to the URL blacklist.
See the description of the URL blacklist policy for the format of entries of this list.
This policy can be used to open exceptions to restrictive blacklists. For example, '*' can be blacklisted to block all requests, and this policy can be used to allow access to a limited list of URLs. It can be used to open exceptions to certain schemes, subdomains of other domains, ports, or specific paths.
The most specific filter will determine if a URL is blocked or allowed. The whitelist takes precedence over the blacklist.
This policy is limited to 1000 entries; subsequent entries will be ignored.
If this policy is not set there will be no exceptions to the blacklist from the 'URLBlacklist' policy.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'OpenNetworkConfiguration',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:16-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '{ "NetworkConfigurations": [ { "GUID": "{4b224dfd-6849-7a63-5e394343244ae9c9}", "Name": "my WiFi", "Type": "WiFi", "WiFi": { "SSID": "my WiFi", "HiddenSSID": false, "Security": "None", "AutoConnect": true } } ] }',
'id': 107,
'caption': '''User-level network configuration''',
'tags': ['full-admin-access'],
'desc': '''Allows pushing network configuration to be applied per-user to a <ph name="PRODUCT_OS_NAME">$2<ex>Chromium OS</ex></ph> device. The network configuration is a JSON-formatted string as defined by the Open Network Configuration format described at <ph name="ONC_SPEC_URL">https://sites.google.com/a/chromium.org/dev/chromium-os/chromiumos-design-docs/open-network-configuration</ph>''',
'arc_support': 'Android apps can use the network configurations and CA certificates set via this policy, but do not have access to some configuration options.',
},
{
'name': 'DeviceOpenNetworkConfiguration',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:16-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': '{ "NetworkConfigurations": [ { "GUID": "{4b224dfd-6849-7a63-5e394343244ae9c9}", "Name": "my WiFi", "Type": "WiFi", "WiFi": { "SSID": "my WiFi", "HiddenSSID": false, "Security": "None", "AutoConnect": true } } ] }',
'id': 108,
'caption': '''Device-level network configuration''',
'tags': ['full-admin-access'],
'desc': '''Allows pushing network configuration to be applied for all users of a <ph name="PRODUCT_OS_NAME">$2<ex>Chromium OS</ex></ph> device. The network configuration is a JSON-formatted string as defined by the Open Network Configuration format described at <ph name="ONC_SPEC_URL">https://sites.google.com/a/chromium.org/dev/chromium-os/chromiumos-design-docs/open-network-configuration</ph>''',
'arc_support': 'Android apps can use the network configurations and CA certificates set via this policy, but do not have access to some configuration options.',
},
{
'name': 'DeviceKerberosEncryptionTypes',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'All',
'value': 0,
'caption': '''All (insecure)''',
},
{
'name': 'Strong',
'value': 1,
'caption': '''Strong''',
},
{
'name': 'Legacy',
'value': 2,
'caption': '''Legacy (insecure)''',
},
],
'supported_on': ['chrome_os:66-'],
'supported_chrome_os_management': ['active_directory'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 1,
'id': 415,
'caption': '''Allowed Kerberos encryption types''',
'tags': ['system-security'],
'desc': '''Sets encryption types that are allowed when requesting Kerberos tickets from an <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> server.
If the policy is set to 'All', both the AES encryption types 'aes256-cts-hmac-sha1-96' and 'aes128-cts-hmac-sha1-96' as well as the RC4 encryption type 'rc4-hmac' are allowed. AES encryption takes preference if the server supports both types. Note that RC4 is insecure and the server should be reconfigured if possible to support AES encryption.
If the policy is set to 'Strong' or if it is unset, only the AES encryption types are allowed.
If the policy is set to 'Legacy', only the RC4 encryption type is allowed. This option is insecure and should only be needed in very specific circumstances.
See also https://wiki.samba.org/index.php/Samba_4.6_Features_added/changed#Kerberos_client_encryption_types.''',
},
{
'name': 'DeviceUserPolicyLoopbackProcessingMode',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Default',
'value': 0,
'caption': '''Default''',
},
{
'name': 'Merge',
'value': 1,
'caption': '''Merge''',
},
{
'name': 'Replace',
'value': 2,
'caption': '''Replace''',
},
],
'supported_on': ['chrome_os:66-'],
'supported_chrome_os_management': ['active_directory'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 416,
'caption': '''User policy loopback processing mode''',
'tags': [],
'desc': '''Specifies whether and how user policy from computer GPO is processed.
If the policy is set to 'Default' or if it is unset, user policy is read only from user GPOs (computer GPOs are ignored).
If the policy is set to 'Merge', user policy in user GPOs is merged with user policy in computer GPOs (computer GPOs take preference).
If the policy is set to 'Replace', user policy in user GPOs is replaced by user policy in computer GPOs (user GPOs are ignored).''',
},
{
'name': 'DeviceMachinePasswordChangeRate',
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 },
'supported_on': ['chrome_os:66-'],
'supported_chrome_os_management': ['active_directory'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 425,
'caption': '''Machine password change rate''',
'tags': ['system-security'],
'desc': '''Specifies the rate (in days) at which a client changes their machine account password. The password is randomly generated by the client and not visible to the user.
Just like user passwords, machine passwords should be changed regularly. Disabling this policy or setting a high number of days can have a negative impact on security since it gives potential attackers more time to find the machine account password and use it.
If the policy is unset, the machine account password is changed every 30 days.
If the policy is set to 0, machine account password change is disabled.
Note that passwords might get older than the specified number of days if the client has been offline for a longer period of time.''',
},
{
'name': 'CloudPrintSubmitEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:17-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 109,
'caption': '''Enable submission of documents to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph>''',
'tags': [],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to submit documents to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> for printing. NOTE: This only affects <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> support in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. It does not prevent users from submitting print jobs on web sites.
If this setting is enabled or not configured, users can print to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> from the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> print dialog.
If this setting is disabled, users cannot print to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> from the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> print dialog''',
},
{
'name': 'EnterpriseWebStoreURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:17-28', 'chrome_os:17-28'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': 'https://company-intranet/chromeapps',
'id': 112,
'caption': '''Enterprise web store URL (deprecated)''',
'tags': [],
'desc': '''This setting has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 29. The recommended way to set up organization-hosted extension/app collections is to include the site hosting the CRX packages in ExtensionInstallSources and put direct download links to the packages on a web page. A launcher for that web page can be created using the ExtensionInstallForcelist policy.''',
},
{
'name': 'EnterpriseWebStoreName',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:17-28', 'chrome_os:17-28'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': 'WidgCo Chrome Apps',
'id': 113,
'caption': '''Enterprise web store name (deprecated)''',
'tags': [],
'desc': '''This setting has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 29. The recommended way to set up organization-hosted extension/app collections is to include the site hosting the CRX packages in ExtensionInstallSources and put direct download links to the packages on a web page. A launcher for that web page can be created using the ExtensionInstallForcelist policy.''',
},
{
'name': 'EnableOriginBoundCerts',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:17-35'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'future': True,
'example_value': True,
'id': 114,
'caption': '''Enable TLS domain-bound certificates extension (deprecated)''',
'tags': [],
'desc': '''This policy has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 36.
Specifies whether the TLS domain-bound certificates extension should be enabled.
This setting is used to enable the TLS domain-bound certificates extension for testing. This experimental setting will be removed in the future.''',
},
{
'name': 'EnableMemoryInfo',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:17-34', 'chrome_os:18-34'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'future': True,
'example_value': False,
'id': 115,
'caption': '''Enable reporting memory info (JS heap size) to page (deprecated)''',
'tags': [],
'desc': '''This policy has been retired as of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 35.
Memory info is anyway reported to page, regardless of the option value, but the sizes reported are
quantized and the rate of updates is limited for security reasons. To obtain real-time precise data,
please use tools like Telemetry.''',
},
{
'name': 'DisablePrintPreview',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:18-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 117,
'caption': '''Disable Print Preview''',
'tags': [],
'desc': '''Show the system print dialog instead of print preview.
When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will open the system print dialog instead of the built-in print preview when a user requests a page to be printed.
If this policy is not set or is set to false, print commands trigger the print preview screen.''',
},
{
'name': 'DefaultPrinterSelection',
'type': 'string',
'schema': { 'type': 'string' },
'validation_schema': {
'type': 'object',
'properties': {
'kind': {
'description': 'Whether to limit the search of the matching printer to a specific set of printers.',
'type': 'string',
'enum': [ 'local', 'cloud' ]
},
'idPattern': {
'description': 'Regular expression to match printer id.',
'type': 'string'
},
'namePattern': {
'description': 'Regular expression to match printer display name.',
'type': 'string'
}
}
},
'supported_on': ['chrome.*:48-', 'chrome_os:48-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '{ "kind": "cloud", "idPattern": ".*public", "namePattern": ".*Color" }',
'id': 308,
'caption': '''Default printer selection rules''',
'tags': [],
'desc': '''Overrides <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> default printer selection rules.
This policy determines the rules for selecting the default printer in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> which happens the first time the print function is used with a profile.
When this policy is set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will attempt to find a printer matching all of the specified attributes, and select it as default printer. The first printer found matching the policy is selected, in case of non-unique match any matching printer can be selected, depending on the order printers are discovered.
If this policy is not set or matching printer is not found within the timeout, the printer defaults to built-in PDF printer or no printer selected, when PDF printer is not available.
The value is parsed as JSON object, conforming to the following schema:
{
"type": "object",
"properties": {
"kind": {
"description": "Whether to limit the search of the matching printer to a specific set of printers.",
"type": "string",
"enum": [ "local", "cloud" ]
},
"idPattern": {
"description": "Regular expression to match printer id.",
"type": "string"
},
"namePattern": {
"description": "Regular expression to match printer display name.",
"type": "string"
}
}
}
Printers connected to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> are considered <ph name="PRINTER_TYPE_CLOUD">"cloud"</ph>, the rest of the printers are classified as <ph name="PRINTER_TYPE_LOCAL">"local"</ph>.
Omitting a field means all values match, for example, not specifying connectivity will cause Print Preview to initiate the discovery of all kinds of printers, local and cloud.
Regular expression patterns must follow the JavaScript RegExp syntax and matches are case sensistive.''',
'arc_support': 'This policy has no effect on Android apps.',
},
{
'name': 'DisableSSLRecordSplitting',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:18-46', 'chrome_os:18-46'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 118,
'caption': '''Disable TLS False Start''',
'tags': [],
'desc': '''Specifies whether the <ph name="TLS_FALSE_START">TLS False Start</ph> optimization should be disabled. For historical reasons, this policy is named DisableSSLRecordSplitting.
If the policy is not set, or is set to false, then <ph name="TLS_FALSE_START">TLS False Start</ph> will be enabled. If it is set to true, <ph name="TLS_FALSE_START">TLS False Start</ph> will be disabled.''',
},
{
'name': 'EnableOnlineRevocationChecks',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:19-', 'chrome_os:19-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 129,
'caption': '''Whether online OCSP/CRL checks are performed''',
'tags': ['website-sharing'],
'desc': '''In light of the fact that soft-fail, online revocation checks provide no effective security benefit, they are disabled by default in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 19 and later. By setting this policy to true, the previous behavior is restored and online OCSP/CRL checks will be performed.
If the policy is not set, or is set to false, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not perform online revocation checks in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 19 and later.''',
},
{
'name': 'RequireOnlineRevocationChecksForLocalAnchors',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:30-', 'chrome.linux:30-', 'chrome.win:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 235,
'caption': '''Whether online OCSP/CRL checks are required for local trust anchors''',
'tags': [],
'desc': '''When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will always perform revocation checking for server certificates that successfully validate and are signed by locally-installed CA certificates.
If <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is unable to obtain revocation status information, such certificates will be treated as revoked ('hard-fail').
If this policy is not set, or it is set to false, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the existing online revocation checking settings.''',
},
{
'name': 'EnableSha1ForLocalAnchors',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:54-', 'chrome_os:54-', 'android:54-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 340,
'caption': '''Whether SHA-1 signed certificates issued by local trust anchors are allowed''',
'tags': ['system-security'],
'desc': '''When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows SHA-1 signed certificates as long as they successfully validate and chain to a locally-installed CA certificates.
Note that this policy depends on the operating system certificate verification stack allowing SHA-1 signatures. If an OS update changes the OS handling of SHA-1 certificates, this policy may no longer have effect. Further, this policy is intended as a temporary workaround to give enterprises more time to move away from SHA-1. This policy will be removed on or around January 1st 2019.
If this policy is not set, or it is set to false, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> follows the publicly announced SHA-1 deprecation schedule.''',
},
{
'name': 'EnableCommonNameFallbackForLocalAnchors',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:58-65', 'chrome_os:58-65', 'android:58-65'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': False,
'id': 366,
'caption': '''Whether to allow certificates issued by local trust anchors that are missing the subjectAlternativeName extension''',
'tags': ['system-security'],
'desc': '''When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use the commonName of a server certificate to match a hostname if the certificate is missing a subjectAlternativeName extension, as long as it successfully validates and chains to a locally-installed CA certificates.
Note that this is not recommended, as this may allow bypassing the nameConstraints extension that restricts the hostnames that a given certificate can be authorized for.
If this policy is not set, or is set to false, server certificates that lack a subjectAlternativeName extension containing either a DNS name or IP address will not be trusted.''',
},
{
'name': 'EnableSymantecLegacyInfrastructure',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:66-', 'chrome_os:66-', 'android:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 413,
'caption': '''Whether to enable trust in Symantec Corporation's Legacy PKI Infrastructure''',
'tags': ['system-security'],
'desc': '''When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows certificates issued by Symantec Corporation's Legacy PKI operations to be trusted if they otherwise successfully validate and chain to a recognized CA certificate.
Note that this policy depends on the operating system still recognizing certificates from Symantec's legacy infrastructure. If an OS update changes the OS handling of such certificates, this policy no longer has effect. Further, this policy is intended as a temporary workaround to give enterprises more time to transition away from legacy Symantec certificates. This policy will be removed on or around January 1st 2019.
If this policy is not set, or it is set to false, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> follows the publicly announced deprecation schedule.
See https://g.co/chrome/symantecpkicerts for more details on this deprecation.''',
},
{
'name': 'ForceEphemeralProfiles',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:32-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': True,
'id': 245,
'caption': '''Ephemeral profile''',
'tags': [],
'desc': '''If set to enabled this policy forces the profile to be switched to ephemeral mode. If this policy is specified as an OS policy (e.g. GPO on Windows) it will apply to every profile on the system; if the policy is set as a Cloud policy it will apply only to a profile signed in with a managed account.
In this mode the profile data is persisted on disk only for the length of the user session. Features like browser history, extensions and their data, web data like cookies and web databases are not preserved after the browser is closed. However this does not prevent the user from downloading any data to disk manually, save pages or print them.
If the user has enabled sync all this data is preserved in their sync profile just like with regular profiles. Incognito mode is also available if not explicitly disabled by policy.
If the policy is set to disabled or left not set signing in leads to regular profiles.'''
},
{
'name': 'SAMLOfflineSigninTimeLimit',
'type': 'int',
'schema': { 'type': 'integer', 'minimum': -1 },
'supported_on': ['chrome_os:34-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 32,
'id': 254,
'caption': '''Limit the time for which a user authenticated via SAML can log in offline''',
'tags': [],
'desc': '''During login, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can authenticate against a server (online) or using a cached password (offline).
When this policy is set to a value of -1, the user can authenticate offline indefinitely. When this policy is set to any other value, it specifies the length of time since the last online authentication after which the user must use online authentication again.
Leaving this policy not set will make <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> use a default time limit of 14 days after which the user must use online authentication again.
This policy affects only users who authenticated using SAML.
The policy value should be specified in seconds.''',
},
{
'name': 'AutoCleanUpStrategy',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [ 'remove-lru', 'remove-lru-if-dormant' ],
},
'items': [
{
'name': 'RemoveLRU',
'value': 'remove-lru',
'caption': '''Least recently used users are removed until there is enough free space''',
},
{
'name': 'RemoveLRUIfDormant',
'value': 'remove-lru-if-dormant',
'caption': '''Least recently used users who have not logged in within last 3 months are removed until there is enough free space''',
},
],
'supported_on': ['chrome_os:32-35'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'deprecated': True,
'example_value': 'remove-lru',
'id': 246,
'caption': '''Select the strategy used to free up disk space during automatic clean-up (deprecated)''',
'tags': [],
'desc': '''This policy is deprecated. <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will always use the 'RemoveLRU' clean-up strategy.
Controls the automatic clean-up behavior on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices. Automatic clean-up is triggered when the amount of free disk space reaches a critical level to recover some disk space.
If this policy is set to 'RemoveLRU', the automatic clean-up will keep removing users from the device in least-recently-logged-in order until there is enough free space.
If this policy is set to 'RemoveLRUIfDormant', the automatic clean-up will keep removing users who have not logged in for at least 3 months in least-recently-logged-in order until there is enough free space.
If this policy is not set, automatic clean-up uses the default built-in strategy. Currently, it is the 'RemoveLRUIfDormant' strategy.'''
},
{
'name': 'ReportDeviceVersionInfo',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:18-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 119,
'caption': '''Report OS and firmware version''',
'tags': ['admin-sharing'],
'desc': '''Report OS and firmware version of enrolled devices.
If this setting is not set or set to True, enrolled devices will report the OS and firmware version periodically. If this setting is set to False, version info will not be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceActivityTimes',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:18-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 120,
'caption': '''Report device activity times''',
'tags': ['admin-sharing'],
'desc': '''Report device activity times.
If this setting is not set or set to True, enrolled devices will report time periods when a user is active on the device. If this setting is set to False, device activity times will not be recorded or reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceBootMode',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:18-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 121,
'caption': '''Report device boot mode''',
'tags': ['admin-sharing'],
'desc': '''Report the state of the device's dev switch at boot.
If the policy is set to false, the state of the dev switch will not be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceLocation',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:20-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'future': True,
'example_value': False,
'id': 143,
'caption': '''Report device location''',
'tags': ['admin-sharing'],
'desc': '''Report the geographic location of the device.
If the policy is not set, or set to false, the location will not be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceNetworkInterfaces',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 224,
'caption': '''Report device network interfaces''',
'tags': ['admin-sharing'],
'desc': '''Report list of network interfaces with their types and hardware addresses to the server.
If the policy is set to false, the interface list will not be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceUsers',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:32-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 248,
'caption': '''Report device users''',
'tags': ['admin-sharing'],
'desc': '''Report list of device users that have recently logged in.
If the policy is set to false, the users will not be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceHardwareStatus',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:42-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 290,
'caption': '''Report hardware status''',
'tags': ['admin-sharing'],
'desc': '''Report hardware statistics such as CPU/RAM usage.
If the policy is set to false, the statistics will not be reported.
If set to true or left unset, statistics will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceSessionStatus',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:42-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 291,
'caption': '''Report information about active kiosk sessions''',
'tags': ['admin-sharing'],
'desc': '''Report information about the active kiosk session, such as
application ID and version.
If the policy is set to false, the kiosk session information will not be
reported. If set to true or left unset, kiosk session information will be
reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportUploadFrequency',
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 60000 },
'supported_on': ['chrome_os:42-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 10800000,
'id': 292,
'caption': '''Frequency of device status report uploads''',
'tags': ['admin-sharing'],
'desc': '''How frequently device status uploads are sent, in milliseconds.
If this policy is unset, the default frequency is 3 hours. The minimum
allowed frequency is 60 seconds.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportArcStatusEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:55-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 349,
'caption': '''Report information about status of Android''',
'tags': ['admin-sharing'],
'desc': '''Information about the status of Android is sent back to the
server.
If the policy is set to false or left unset, no status information is reported.
If set to true, status information is reported.
This policy only applies if Android apps are enabled.''',
},
{
'name': 'HeartbeatEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:43-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 293,
'caption': '''Send network packets to the management server to monitor online status''',
'tags': ['admin-sharing'],
'desc': '''Send network packets to the management server to monitor online status, to allow
the server to detect if the device is offline.
If this policy is set to true, monitoring network packets (so-called <ph name="HEARTBEATS_TERM">heartbeats</ph>) will be sent.
If set to false or unset, no packets will be sent.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'HeartbeatFrequency',
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 30000 },
'supported_on': ['chrome_os:43-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 180000,
'id': 294,
'caption': '''Frequency of monitoring network packets''',
'tags': [],
'desc': '''How frequently monitoring network packets are sent, in milliseconds.
If this policy is unset, the default interval is 3 minutes. The minimum
interval is 30 seconds and the maximum interval is 24 hours - values
outside of this range will be clamped to this range.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'LogUploadEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:46-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 306,
'caption': '''Send system logs to the management server''',
'tags': [],
'desc': '''Send system logs to the management server, to allow
admins to monitor system logs.
If this policy is set to true, system logs will be sent. If set
to false or unset, then no system logs will be sent.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'DeviceUserWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:12-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ 'madmax@managedchrome.com' ],
'id': 122,
'caption': '''Login user white list''',
'tags': [],
'desc': '''Defines the list of users that are allowed to login to the device. Entries are of the form <ph name="USER_WHITELIST_ENTRY_FORMAT">user@domain</ph>, such as <ph name="USER_WHITELIST_ENTRY_EXAMPLE">madmax@managedchrome.com</ph>. To allow arbitrary users on a domain, use entries of the form <ph name="USER_WHITELIST_ENTRY_WILDCARD">*@domain</ph>.
If this policy is not configured, there are no restrictions on which users are allowed to sign in. Note that creating new users still requires the <ph name="DEVICE_ALLOW_NEW_USERS_POLICY_NAME">DeviceAllowNewUsers</ph> policy to be configured appropriately.''',
'arc_support': 'This policy controls who may start a <ph name="PRODUCT_OS_NAME">$2<ex>Chromium OS</ex></ph> session. It does not prevent users from signing in to additional Google accounts within Android. If you want to prevent this, configure the Android-specific <ph name="ACCOUNT_TYPES_WITH_MANAGEMENT_DISABLED_CLOUDDPC_POLICY_NAME">accountTypesWithManagementDisabled</ph> policy as part of <ph name="ARC_POLICY_POLICY_NAME">ArcPolicy</ph>.',
},
{
'name': 'DeviceAllowNewUsers',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:12-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 123,
'caption': '''Allow creation of new user accounts''',
'tags': [],
'desc': '''Controls whether <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> allows new user accounts to be created. If this policy is set to false, users that do not have an account already will not be able to login.
If this policy is set to true or not configured, new user accounts will be allowed to be created provided that <ph name="DEVICE_USER_WHITELIST_POLICY_NAME">DeviceUserWhitelist</ph> does not prevent the user from logging in.''',
'arc_support': 'This policy controls whether new users can be added to <ph name="PRODUCT_OS_NAME">$2<ex>Chromium OS</ex></ph>. It does not prevent users from signing in to additional Google accounts within Android. If you want to prevent this, configure the Android-specific <ph name="ACCOUNT_TYPES_WITH_MANAGEMENT_DISABLED_CLOUDDPC_POLICY_NAME">accountTypesWithManagementDisabled</ph> policy as part of <ph name="ARC_POLICY_POLICY_NAME">ArcPolicy</ph>.',
},
{
'name': 'DeviceGuestModeEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:12-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 124,
'caption': '''Enable guest mode''',
'tags': [],
'desc': '''If this policy is set to true or not configured, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will enable guest logins. Guest logins are anonymous user sessions and do not require a password.
If this policy is set to false, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will not allow guest sessions to be started.''',
},
{
'name': 'DeviceShowUserNamesOnSignin',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:12-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 125,
'caption': '''Show usernames on login screen''',
'tags': [],
'desc': '''If this policy is set to true or not configured, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will show existing users on the login screen and allow to pick one.
If this policy is set to false, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will not show existing users on the login screen. The normal sign-in screen (prompting for the user email and password or phone) or the SAML interstital screen (if enabled via the <ph name="LOGIN_AUTHENTICATION_BEHAVIOR_POLICY_NAME">LoginAuthenticationBehavior</ph> policy) will be shown, unless a Public Session is configured. When a Public Session is configured, only the Public Session accounts will be shown, allowing to pick one of them.
Note that this policy does not affect whether the device keeps or discards the local user data.''',
},
{
'name': 'DeviceDataRoamingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:12-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 126,
'caption': '''Enable data roaming''',
'tags': [],
'desc': '''Determines whether data roaming should be enabled for the device. If set to true, data roaming is allowed. If left unconfigured or set to false, data roaming will be not available.''',
},
{
'name': 'DeviceMetricsReportingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:14-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 127,
'caption': '''Enable metrics reporting''',
'tags': ['admin-sharing'],
'desc': '''Controls whether usage metrics and diagnostic data, including crash reports, are reported back to Google.
If set to true, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will report usage metrics and diagnostic data.
If set to false, metrics and diagnostic data reporting will be disabled.
If not configured, metrics and diagnostic data reporting will be disabled on unmanaged devices and enabled on managed devices.''',
'arc_support': 'This policy also controls Android usage and diagnostic data collection.',
},
{
'name': 'ChromeOsReleaseChannel',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [ 'stable-channel', 'beta-channel', 'dev-channel' ],
},
'items': [
{
'name': 'StableChannel',
'value': 'stable-channel',
'caption': '''Stable channel''',
},
{
'name': 'BetaChannel',
'value': 'beta-channel',
'caption': '''Beta channel''',
},
{
'name': 'DevChannel',
'value': 'dev-channel',
'caption': '''Dev channel (may be unstable)''',
},
],
'supported_on': ['chrome_os:11-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 'stable-channel',
'id': 91,
'caption': '''Release channel''',
'tags': [],
'desc': '''Specifies the release channel that this device should be locked to.''',
},
{
'name': 'ChromeOsReleaseChannelDelegated',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 134,
'caption': '''Whether the release channel should be configurable by the user''',
'tags': [],
'desc': '''If this policy is set to True and the ChromeOsReleaseChannel policy is not specified then users of the enrolling domain will be allowed to change the release channel of the device. If this policy is set to false the device will be locked in whatever channel it was last set.
The user selected channel will be overridden by the ChromeOsReleaseChannel policy, but if the policy channel is more stable than the one that was installed on the device, then the channel will only switch after the version of the more stable channel reaches a higher version number than the one installed on the device.''',
},
{
'name': 'DeviceEphemeralUsersEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 128,
'caption': '''Wipe user data on sign-out''',
'tags': [],
'desc': '''Determines whether <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> keeps local account data after logout. If set to true, no persistent accounts are kept by <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> and all data from the user session will be discarded after logout. If this policy is set to false or not configured, the device may keep (encrypted) local user data.''',
},
{
'name': 'DeviceStartUpUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ 'https://google.com', 'chrome-extension://aaaaaaaaaaaaaaaaaaaaaaaa/' ],
'id': 137,
'caption': '''Load specified urls on demo login''',
'tags': [],
'desc': '''This policy is active in retail mode only.
Determines the set of URLs to be loaded when the demo session is started. This policy will override any other mechanisms for setting the initial URL and thus can only be applied to a session not associated with a particular user.''',
},
{
'name': 'DeviceIdleLogoutTimeout',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 60000,
'id': 130,
'caption': '''Timeout until idle user log-out is executed''',
'tags': [],
'desc': '''This policy is active in retail mode only.
When the value of this policy is set and is not 0 then the currently logged in demo user will be logged out automatically after an inactivity time of the specified duration has elapsed.
The policy value should be specified in milliseconds.''',
},
{
'name': 'DeviceIdleLogoutWarningDuration',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 15000,
'id': 131,
'caption': '''Duration of the idle log-out warning message''',
'tags': [],
'desc': '''This policy is active in retail mode only.
When DeviceIdleLogoutTimeout is specified this policy defines the duration of the warning box with a count down timer that is shown to the user before the logout is executed.
The policy value should be specified in milliseconds.''',
},
{
'name': 'DeviceLoginScreenSaverId',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 'fhblcfnmnbehmifidkddcenilbpddlfk',
'id': 132,
'caption': '''Screen saver to be used on the sign-in screen in retail mode''',
'tags': [],
'desc': '''This policy is active in retail mode only.
Determines the id of the extension to be used as a screen saver on the sign-in screen. The extension must be part of the AppPack that is configured for this domain through the DeviceAppPack policy.''',
},
{
'name': 'DeviceLoginScreenSaverTimeout',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 120000,
'id': 133,
'caption': '''Duration of inactivity before the screen saver is shown on the sign-in screen in retail mode''',
'tags': [],
'desc': '''This policy is active in retail mode only.
Determines the duration before the screen saver is shown on the sign-in screen for devices in retail mode.
The policy value should be specified in milliseconds.''',
},
{
'name': 'DeviceAppPack',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:19-40'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ { "extension-id": "khgabmflimjjbclkmljlpmgaleanedem", "update-url": "https://clients2.google.com/service/update2/crx" } ],
'id': 135,
'caption': '''List of AppPack extensions''',
'tags': [],
'desc': '''This policy is active in retail mode only.
Lists extensions that are automatically installed for the Demo user, for devices in retail mode. These extensions are saved in the device and can be installed while offline, after the installation.
Each list entry contains a dictionary that must include the extension ID in the 'extension-id' field, and its update URL in the 'update-url' field.''',
},
{
'name': 'DeviceAutoUpdateDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 136,
'caption': '''Disable Auto Update''',
'tags': ['system-security'],
'desc': '''Disables automatic updates when set to True.
<ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices automatically check for updates when this setting is not configured or set to False.
Warning: It is recommended to keep auto-updates enabled so that users receive software updates and critical security fixes. Turning off auto-updates might leave users at risk.''',
},
{
'name': 'DeviceAutoUpdateP2PEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:31-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 242,
'caption': '''Auto update p2p enabled''',
'tags': [],
'desc': '''Specifies whether p2p is to be used for OS update payloads. If set to True, devices will share and attempt to consume update payloads on the LAN, potentially reducing Internet bandwidth usage and congestion. If the update payload is not available on the LAN, the device will fall back to downloading from an update server. If set to False or not configured, p2p will not be used.''',
},
{
'name': 'DeviceRollbackAllowedMilestones',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0,
'maximum': 4,
},
'supported_on': ['chrome_os:67-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 4,
'id': 426,
'caption': '''Number of milestones rollback is allowed''',
'tags': ['system-security'],
'desc': '''Specifies the minimum number of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> milestones rollback should be allowed starting from the stable version at any time.
Default is 0 for consumer, 4 (approx. half a year) for enterprise enrolled devices.
Setting this policy prevents rollback protection to apply for at least this number of milestones.
Setting this policy to a lower value has a permanent effect: the device MAY not be able to roll back to earlier versions even after the policy is reset to a larger value.
Actual rollback possibilities may also depend on the board and critical vulnerability patches.''',
},
{
'name': 'DeviceRollbackToTargetVersion',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'RollbackDisabled',
'value': 1,
'caption': '''Do not roll back to target version if OS version is newer than target. Updates are also disabled.''',
},
{
'name': 'RollbackWithFullPowerwash',
'value': 2,
'caption': '''Roll back and stay on target version if OS version is newer than target. Do a full powerwash during the process.''',
},
],
'supported_on': ['chrome_os:67-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 1,
'id': 427,
'caption': '''Rollback to target version''',
'tags': ['system-security'],
'desc': '''Specifies whether the device should roll back to the version set by <ph name="DEVICE_TARGET_VERSION_PREFIX_POLICY_NAME">DeviceTargetVersionPrefix</ph> if it's already running a later version.
Default is RollbackDisabled.''',
},
{
'name': 'DeviceTargetVersionPrefix',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:19-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': '1412.',
'id': 142,
'caption': '''Target Auto Update Version''',
'tags': ['system-security'],
'desc': '''Sets a target version for Auto Updates.
Specifies the prefix of a target version <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> should update to. If the device is running a version that's before the specified prefix, it will update to the latest version with the given prefix. If the device is already on a later version, effects depend on the value of <ph name="DEVICE_ROLLBACK_TO_TARGET_VERSION_POLICY_NAME">DeviceRollbackToTargetVersion</ph>. The prefix format works component-wise as is demonstrated in the following example:
"" (or not configured): update to latest version available.
"1412.": update to any minor version of 1412 (e.g. 1412.24.34 or 1412.60.2)
"1412.2.": update to any minor version of 1412.2 (e.g. 1412.2.34 or 1412.2.2)
"1412.24.34": update to this specific version only
Warning: It is not recommended to configure version restrictions as they may prevent users from receiving software updates and critical security fixes. Restricting updates to a specific version prefix might leave users at risk.''',
},
{
'name': 'DeviceUpdateScatterFactor',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:20-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 7200,
'id': 145,
'caption': '''Auto update scatter factor''',
'tags': ['system-security'],
'desc': '''Specifies the number of seconds up to which a device may randomly delay its download of an update from the time the update was first pushed out to the server. The device may wait a portion of this time in terms of wall-clock-time and the remaining portion in terms of the number of update checks. In any case, the scatter is upper bounded to a constant amount of time so that a device does not ever get stuck waiting to download an update forever.''',
},
{
'name': 'DeviceUpdateAllowedConnectionTypes',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:21-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ 'ethernet' ],
'id': 146,
'caption': '''Connection types allowed for updates''',
'tags': [],
'desc': ''' The types of connections that are allowed to use for OS updates. OS updates potentially put heavy strain on the connection due to their size and may incur additional cost. Therefore, they are by default not enabled for connection types that are considered expensive, which include WiMax, Bluetooth and Cellular at the moment.
The recognized connection type identifiers are "ethernet", "wifi", "wimax", "bluetooth" and "cellular".''',
},
{
'name': 'DeviceUpdateHttpDownloadsEnabled',
'type': 'main',
'schema': {
'type': 'boolean',
},
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 243,
'caption': '''Allow autoupdate downloads via HTTP''',
'tags': [],
'desc': '''Auto-update payloads on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can be downloaded via HTTP instead of HTTPS. This allows transparent HTTP caching of HTTP downloads.
If this policy is set to true, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will attempt to download auto-update payloads via HTTP. If the policy is set to false or not set, HTTPS will be used for downloading auto-update payloads.''',
},
{
'name': 'DeviceLocalAccounts',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:25-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ "demo@example.com" ],
'id': 163,
'caption': '''Device-local accounts''',
'tags': [],
'desc': '''Specifies the list of device-local accounts to be shown on the login screen.
Every list entry specifies an identifier, which is used internally to tell the different device-local accounts apart.''',
},
{
'name': 'DeviceLocalAccountAutoLoginId',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:26-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': "public@example.com",
'id': 194,
'caption': '''Public session for auto-login''',
'tags': [],
'desc': '''A public session to auto-login after a delay.
If this policy is set, the specified session will be automatically logged in after a period of time has elapsed at the login screen without user interaction. The public session must already be configured (see |DeviceLocalAccounts|).
If this policy is unset, there will be no auto-login.''',
},
{
'name': 'DeviceLocalAccountAutoLoginDelay',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:26-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 180000,
'id': 195,
'caption': '''Public session auto-login timer''',
'tags': [],
'desc': '''The public session auto-login delay.
If the |DeviceLocalAccountAutoLoginId| policy is unset, this policy has no effect. Otherwise:
If this policy is set, it determines the amount of time without user activity that should elapse before automatically logging into the public session specified by the |DeviceLocalAccountAutoLoginId| policy.
If this policy is unset, 0 milliseconds will be used as the timeout.
This policy is specified in milliseconds.'''
},
{
'name': 'DeviceLocalAccountAutoLoginBailoutEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:28-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 202,
'caption': '''Enable bailout keyboard shortcut for auto-login''',
'tags': [],
'desc': '''Enable bailout keyboard shortcut for auto-login.
If this policy is unset or set to True and a device-local account is configured for zero-delay auto-login, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will honor the keyboard shortcut Ctrl+Alt+S for bypassing auto-login and showing the login screen.
If this policy is set to False, zero-delay auto-login (if configured) cannot be bypassed.'''
},
{
'name': 'DeviceLocalAccountPromptForNetworkWhenOffline',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:33-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 250,
'caption': '''Enable network configuration prompt when offline''',
'tags': [],
'desc': '''Enable network configuration prompt when offline.
If this policy is unset or set to True and a device-local account is configured for zero-delay auto-login and the device does not have access to the Internet, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will show a network configuration prompt.
If this policy is set to False, an error message will be displayed instead of the network configuration prompt.'''
},
{
'name': 'DeviceBlockDevmode',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:37-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 266,
'caption': '''Block developer mode''',
'tags': [],
'desc': '''Block developer mode.
If this policy is set to True, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will prevent the device from booting into developer mode. The system will refuse to boot and show an error screen when the developer switch is turned on.
If this policy is unset or set to False, developer mode will remain available for the device.''',
'arc_support': 'This policy controls <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> developer mode only. If you want to prevent access to Android Developer Options, you need to set the <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME">DeveloperToolsDisabled</ph> policy.',
},
{
'name': 'BackgroundModeEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:19-', 'chrome.linux:19-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 138,
'caption': '''Continue running background apps when <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is closed''',
'tags': ['system-security'],
'desc': '''Determines whether a <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> process is started on OS login and keeps running when the last browser window is closed, allowing background apps and the current browsing session to remain active, including any session cookies. The background process displays an icon in the system tray and can always be closed from there.
If this policy is set to True, background mode is enabled and cannot be controlled by the user in the browser settings.
If this policy is set to False, background mode is disabled and cannot be controlled by the user in the browser settings.
If this policy is left unset, background mode is initially disabled and can be controlled by the user in the browser settings.''',
},
{
'name': 'DriveDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 139,
'caption': '''Disable Drive in the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> Files app''',
'tags': [],
'desc': '''Disables Google Drive syncing in the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> Files app when set to True. In that case, no data is uploaded to Google Drive.
If not set or set to False, then users will be able to transfer files to Google Drive.''',
'arc_support': 'This policy does not prevent the user from using the Android Google Drive app. If you want to prevent access to Google Drive, you should disallow installation of the Android Google Drive app as well.',
},
{
'name': 'DriveDisabledOverCellular',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 140,
'caption': '''Disable Google Drive over cellular connections in the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> Files app''',
'tags': [],
'desc': '''Disables Google Drive syncing in the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> Files app when using a cellular connection when set to True. In that case, data is only synced to Google Drive when connected via WiFi or Ethernet.
If not set or set to False, then users will be able to transfer files to Google Drive via cellular connections.''',
'arc_support': 'This policy has no effect on the Android Google Drive app. If you want to prevent use of Google Drive over cellular connections, you should disallow installation of the Android Google Drive app.',
},
{
'name': 'PinnedLauncherApps',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:20-' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['pjkljhegncpnkpknbcohdijeoejaedia', 'com.google.android.gm'],
'id': 144,
'caption': '''List of pinned apps to show in the launcher''',
'tags': [],
'desc': '''Lists the application identifiers <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shows as pinned apps in the launcher bar.
If this policy is configured, the set of applications is fixed and can't be changed by the user.
If this policy is left unset, the user may change the list of pinned apps in the launcher.''',
'arc_support': 'This policy can also be used to pin Android apps.',
},
{
'name': 'RestrictSigninToPattern',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:21-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '.*@example.com',
'id': 147,
'caption': '''Restrict which users are allowed to sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''Contains a regular expression which is used to determine which users can sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
An appropriate error is displayed if a user tries to log in with a username that does not match this pattern.
If this policy is left not set or blank, then any user can sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'name': 'DisableSafeBrowsingProceedAnyway',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:22-', 'chrome_os:22-', 'android:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 150,
'caption': '''Disable proceeding from the Safe Browsing warning page''',
'tags': [],
'desc': '''The Safe Browsing service shows a warning page when users navigate to sites that are flagged as potentially malicious. Enabling this setting prevents users from proceeding anyway from the warning page to the malicious site.
If this setting is disabled or not configured then users can choose to proceed to the flagged site after being shown the warning.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
},
{
'name': 'SafeBrowsingExtendedReportingOptInAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:44-', 'chrome_os:44-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 299,
'caption': '''Allow users to opt in to Safe Browsing extended reporting''',
'tags': [],
'deprecated': True,
'desc': '''This setting is deprecated, use SafeBrowsingExtendedReportingEnabled instead. Enabling or disabling SafeBrowsingExtendedReportingEnabled is equivalent to setting SafeBrowsingExtendedReportingOptInAllowed to False.
Setting this policy to false stops users from choosing to send some system information and page content to Google servers. If this setting is true or not configured, then users will be allowed to send some system information and page content to Safe Browsing to help detect dangerous apps and sites.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
},
{
'name': 'SpellCheckServiceEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:22-', 'chrome_os:22-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 151,
'caption': '''Enable or disable spell checking web service''',
'tags': [],
'desc': '''<ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can use a Google web service to help resolve spelling errors. If this setting is enabled, then this service is always used. If this setting is disabled, then this service is never used.
Spell checking can still be performed using a downloaded dictionary; this policy only controls the usage of the online service.
If this setting is not configured then users can choose whether the spell checking service should be used or not.''',
},
{
'name': 'ExternalStorageDisabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:22-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 152,
'caption': '''Disable mounting of external storage''',
'tags': [],
'desc': '''When this policy is set to true, external storage will not be available in the file browser.
This policy affects all types of storage media. For example: USB flash drives, external hard drives, SD and other memory cards, optical storage etc. Internal storage is not affected, therefore files saved in the Download folder can still be accessed. Google Drive is also not affected by this policy.
If this setting is disabled or not configured then users can use all supported types of external storage on their device.''',
},
{
'name': 'ExternalStorageReadOnly',
'id': 343,
'type': 'main',
'schema': { 'type': 'boolean' },
'tags': [],
'supported_on': ['chrome_os:54-'],
'caption': '''Treat external storage devices as read-only''',
'desc': '''When this policy is set to true, users cannot write anything to external storage devices.
If this setting is set to false or not configured, then users can create and modify files of external storage devices which are physically writable.
The ExternalStorageDisabled policy takes precedence over this policy - if ExternalStorageDisabled is set to true, then all access to external storage is disabled and this policy is consequently ignored.
Dynamic refresh of this policy is supported in M56 and later.''',
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True
},
{
'name': 'AudioOutputAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:23-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 159,
'caption': '''Allow playing audio''',
'tags': [],
'desc': '''When this policy is set to false, audio output will not be available on the device while the user is logged in.
This policy affects all types of audio output and not only the built-in speakers. Audio accessibility features are also inhibited by this policy. Do not enable this policy if a screen reader is required for the user.
If this setting is set to true or not configured then users can use all supported audio outputs on their device.''',
},
{
'name': 'AudioCaptureAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:25-', 'chrome_os:23-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 160,
'caption': '''Allow or deny audio capture''',
'tags': [],
'desc': '''If enabled or not configured (default), the user will be prompted for
audio capture access except for URLs configured in the
AudioCaptureAllowedUrls list which will be granted access without prompting.
When this policy is disabled, the user will never be prompted and audio
capture only be available to URLs configured in AudioCaptureAllowedUrls.
This policy affects all types of audio inputs and not only the built-in microphone.''',
'arc_support': 'For Android apps, this policy affects the microphone only. When this policy is set to true, the microphone is muted for all Android apps, with no exceptions.',
},
{
'name': 'AudioCaptureAllowedUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:29-', 'chrome_os:29-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com/', 'https://[*.]example.edu/'],
'id': 208,
'caption': '''URLs that will be granted access to audio capture devices without prompt''',
'tags': ['website-sharing'],
'desc': '''Patterns in this list will be matched against the security
origin of the requesting URL. If a match is found, access to audio
capture devices will be granted without prompt.
NOTE: Until version 45, this policy was only supported in Kiosk mode.''',
},
{
'name': 'VideoCaptureAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:25-', 'chrome_os:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 167,
'caption': '''Allow or deny video capture''',
'tags': [],
'desc': '''If enabled or not configured (default), the user will be prompted for
video capture access except for URLs configured in the
VideoCaptureAllowedUrls list which will be granted access without prompting.
When this policy is disabled, the user will never be prompted and video
capture only be available to URLs configured in VideoCaptureAllowedUrls.
This policy affects all types of video inputs and not only the built-in camera.''',
'arc_support': 'For Android apps, this policy affects the built-in camera only. When this policy is set to true, the camera is disabled for all Android apps, with no exceptions.',
},
{
'name': 'VideoCaptureAllowedUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:29-', 'chrome_os:29-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com/', 'https://[*.]example.edu/'],
'id': 209,
'caption': '''URLs that will be granted access to video capture devices without prompt''',
'tags': ['website-sharing'],
'desc': '''Patterns in this list will be matched against the security
origin of the requesting URL. If a match is found, access to audio
capture devices will be granted without prompt.
NOTE: Until version 45, this policy was only supported in Kiosk mode.''',
},
{
'name': 'DisableScreenshots',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:22-', 'chrome.*:22-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 153,
'caption': '''Disable taking screenshots''',
'tags': [],
'desc': '''If enabled, screenshots cannot be taken using keyboard shortcuts or extension APIs.
If disabled or not specified, taking screenshots is allowed.'''
},
{
'name': 'SystemTimezone',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:22-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 'America/Los_Angeles',
'id': 158,
'caption': '''Timezone''',
'tags': [],
'desc': '''Specifies the timezone to be used for the device. Users can override the specified timezone for the current session. However, on logout it is set back to the specified timezone. If an invalid value is provided, the policy is still activated using "GMT" instead. If an empty string is provided, the policy is ignored.
If this policy is not used, the currently active timezone will remain in use however users can change the timezone and the change is persistent. Thus a change by one user affects the login-screen and all other users.
New devices start out with the timezone set to "US/Pacific".
The format of the value follows the names of timezones in the "IANA Time Zone Database" (see "https://en.wikipedia.org/wiki/Tz_database"). In particular, most timezones can be referred to by "continent/large_city" or "ocean/large_city".
Setting this policy completely disables automatic timezone resolve by device location. It also overrides SystemTimezoneAutomaticDetection policy.''',
},
{
'name': 'SystemUse24HourClock',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:30-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 236,
'caption': '''Use 24 hour clock by default''',
'tags': [],
'desc': '''Specifies the clock format be used for the device.
This policy configures the clock format to use on the login screen and as a default for user sessions. Users can still override the clock format for their account.
If the policy is set to true, the device will use a 24 hour clock format. If the policy is set to false, the device will use 12 hour clock format.
If this policy is not set, the device will default to a 24 hour clock format.''',
},
{
'name': 'TouchVirtualKeyboardEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:37-' ],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': False,
'id': 269,
'caption': '''Enable virtual keyboard''',
'tags': [],
'desc': '''This policy configures enabling the virtual keyboard as an input device on ChromeOS. Users cannot override this policy.
If the policy is set to true, the on-screen virtual keyboard will always be enabled.
If set to false, the on-screen virtual keyboard will always be disabled.
If you set this policy, users cannot change or override it. However, users will still be able to enable/disable an accessibility on-screen keyboard which takes precedence over the virtual keyboard controlled by this policy. See the |VirtualKeyboardEnabled| policy for controlling the accessibility on-screen keyboard.
If this policy is left unset, the on-screen keyboard is disabled initially but can be enabled by the user anytime. Heuristic rules may also be used to decide when to display the keyboard.''',
},
{
'name': 'ShowLogoutButtonInTray',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 164,
'caption': '''Add a logout button to the system tray''',
'tags': [],
'desc': '''If enabled, a big, red logout button is shown in the system tray while a session is active and the screen is not locked.
If disabled or not specified, no big, red logout button is shown in the system tray.''',
},
{
'name': 'BuiltInDnsClientEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 165,
'caption': '''Use built-in DNS client''',
'tags': [],
'desc': '''Controls whether the built-in DNS client is used in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is set to true, the built-in DNS client will be used, if available.
If this policy is set to false, the built-in DNS client will never be used.
If this policy is left not set, the users will be able to change whether the built-in DNS client is used by editing chrome://flags or specifying a command-line flag.''',
},
{
'name': 'ShelfAutoHideBehavior',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'Always',
'Never'
],
},
'items': [
{
'name': 'AlwaysAutoHideShelf',
'value': 'Always',
'caption': '''Always auto-hide the shelf''',
},
{
'name': 'NeverAutoHideShelf',
'value': 'Never',
'caption': '''Never auto-hide the shelf''',
},
],
'supported_on': ['chrome_os:25-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'Always',
'id': 166,
'caption': '''Control shelf auto-hiding''',
'tags': [],
'desc': '''Control auto-hiding of the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shelf.
If this policy is set to 'AlwaysAutoHideShelf', the shelf will always auto-hide.
If this policy is set to 'NeverAutoHideShelf', the shelf never auto-hide.
If you set this policy, users cannot change or override it.
If the policy is left not set, users can choose whether the shelf should auto-hide.''',
},
{
'name': 'UserDisplayName',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'Policy User',
'id': 169,
'caption': '''Set the display name for device-local accounts''',
'tags': [],
'desc': '''Controls the account name <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shows on the login screen for the corresponding device-local account.
If this policy is set, the login screen will use the specified string in the picture-based login chooser for the corresponding device-local account.
If the policy is left not set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will use the device-local account's email account ID as the display name on the login screen.
This policy is ignored for regular user accounts.''',
},
{
'name': 'SessionLengthLimit',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:25-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 3600000,
'id': 170,
'caption': '''Limit the length of a user session''',
'tags': [],
'desc': '''When this policy is set, it specifies the length of time after which a user is automatically logged out, terminating the session. The user is informed about the remaining time by a countdown timer shown in the system tray.
When this policy is not set, the session length is not limited.
If you set this policy, users cannot change or override it.
The policy value should be specified in milliseconds. Values are clamped to a range of 30 seconds to 24 hours.''',
},
{
'name': 'FullscreenAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:31-', 'chrome.linux:31-', 'chrome_os:31-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 240,
'caption': '''Allow fullscreen mode''',
'tags': [],
'desc': '''This policy controls the availability of fullscreen mode in which all <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> UI is hidden and only web content is visible.
If this policy is set to true or not not configured, the user, apps and extensions with appropriate permissions can enter fullscreen mode.
If this policy is set to false, neither the user nor any apps or extensions can enter fullscreen mode.
On all platforms except <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, kiosk mode is unavailable when fullscreen mode is disabled.''',
'arc_support': 'This policy has no effect on the Android apps. They will be able to enter fullscreen mode even if this policy is set to <ph name="FALSE">False</ph>.',
},
{
'name': 'ScreenDimDelayAC',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 420000,
'id': 172,
'caption': '''Screen dim delay when running on AC power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is dimmed when running on AC power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> dims the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not dim the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the screen off delay (if set) and the idle delay.''',
},
{
'name': 'ScreenOffDelayAC',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 480000,
'id': 173,
'caption': '''Screen off delay when running on AC power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is turned off when running on AC power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> turns off the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not turn off the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the idle delay.''',
},
{
'name': 'ScreenLockDelayAC',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 600000,
'id': 174,
'caption': '''Screen lock delay when running on AC power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is locked when running on AC power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> locks the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not lock the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The recommended way to lock the screen on idle is to enable screen locking on suspend and have <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> suspend after the idle delay. This policy should only be used when screen locking should occur a significant amount of time sooner than suspend or when suspend on idle is not desired at all.
The policy value should be specified in milliseconds. Values are clamped to be less than the idle delay.''',
},
{
'name': 'IdleWarningDelayAC',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:27-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 545000,
'id': 197,
'caption': '''Idle warning delay when running on AC power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which a warning dialog is shown when running on AC power.
When this policy is set, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shows a warning dialog telling the user that the idle action is about to be taken.
When this policy is unset, no warning dialog is shown.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the idle delay.''',
},
{
'name': 'IdleDelayAC',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 1800000,
'id': 175,
'caption': '''Idle delay when running on AC power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the idle action is taken when running on AC power.
When this policy is set, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> takes the idle action, which can be configured separately.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds.''',
},
{
'name': 'ScreenDimDelayBattery',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 300000,
'id': 176,
'caption': '''Screen dim delay when running on battery power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is dimmed when running on battery power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> dims the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not dim the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the screen off delay (if set) and the idle delay.''',
},
{
'name': 'ScreenOffDelayBattery',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 360000,
'id': 177,
'caption': '''Screen off delay when running on battery power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is turned off when running on battery power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> turns off the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not turn off the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the idle delay.''',
},
{
'name': 'ScreenLockDelayBattery',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 600000,
'id': 178,
'caption': '''Screen lock delay when running on battery power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is locked when running on battery power.
When this policy is set to a value greater than zero, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> locks the screen.
When this policy is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not lock the screen when the user becomes idle.
When this policy is unset, a default length of time is used.
The recommended way to lock the screen on idle is to enable screen locking on suspend and have <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> suspend after the idle delay. This policy should only be used when screen locking should occur a significant amount of time sooner than suspend or when suspend on idle is not desired at all.
The policy value should be specified in milliseconds. Values are clamped to be less than the idle delay.''',
},
{
'name': 'IdleWarningDelayBattery',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:27-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 545000,
'id': 198,
'caption': '''Idle warning delay when running on battery power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which a warning dialog is shown when running on battery power.
When this policy is set, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shows a warning dialog telling the user that the idle action is about to be taken.
When this policy is unset, no warning dialog is shown.
The policy value should be specified in milliseconds. Values are clamped to be less than or equal the idle delay.''',
},
{
'name': 'IdleDelayBattery',
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 600000,
'id': 179,
'caption': '''Idle delay when running on battery power''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the idle action is taken when running on battery power.
When this policy is set, it specifies the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> takes the idle action, which can be configured separately.
When this policy is unset, a default length of time is used.
The policy value should be specified in milliseconds.''',
},
{
'name': 'IdleAction',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'IdleActionSuspend',
'value': 0,
'caption': '''Suspend''',
},
{
'name': 'IdleActionLogout',
'value': 1,
'caption': '''Log the user out''',
},
{
'name': 'IdleActionShutdown',
'value': 2,
'caption': '''Shut down''',
},
{
'name': 'IdleActionDoNothing',
'value': 3,
'caption': '''Do nothing''',
},
],
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 0,
'id': 180,
'caption': '''Action to take when the idle delay is reached''',
'tags': [],
'desc': '''Note that this policy is deprecated and will be removed in the future.
This policy provides a fallback value for the more-specific <ph name="IDLE_ACTION_AC_POLICY_NAME">IdleActionAC</ph> and <ph name="IDLE_ACTION_BATTERY_POLICY_NAME">IdleActionBattery</ph> policies. If this policy is set, its value gets used if the respective more-specific policy is not set.
When this policy is unset, behavior of the more-specific policies remains unaffected.''',
},
{
'name': 'IdleActionAC',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'IdleActionSuspend',
'value': 0,
'caption': '''Suspend''',
},
{
'name': 'IdleActionLogout',
'value': 1,
'caption': '''Log the user out''',
},
{
'name': 'IdleActionShutdown',
'value': 2,
'caption': '''Shut down''',
},
{
'name': 'IdleActionDoNothing',
'value': 3,
'caption': '''Do nothing''',
},
],
'supported_on': ['chrome_os:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 0,
'id': 226,
'caption': '''Action to take when the idle delay is reached while running on AC power''',
'tags': [],
'desc': '''When this policy is set, it specifies the action that <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> takes when the user remains idle for the length of time given by the idle delay, which can be configured separately.
When this policy is unset, the default action is taken, which is suspend.
If the action is suspend, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can separately be configured to either lock or not lock the screen before suspending.''',
},
{
'name': 'IdleActionBattery',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'IdleActionSuspend',
'value': 0,
'caption': '''Suspend''',
},
{
'name': 'IdleActionLogout',
'value': 1,
'caption': '''Log the user out''',
},
{
'name': 'IdleActionShutdown',
'value': 2,
'caption': '''Shut down''',
},
{
'name': 'IdleActionDoNothing',
'value': 3,
'caption': '''Do nothing''',
},
],
'supported_on': ['chrome_os:30-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 0,
'id': 222,
'caption': '''Action to take when the idle delay is reached while running on battery power''',
'tags': [],
'desc': '''When this policy is set, it specifies the action that <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> takes when the user remains idle for the length of time given by the idle delay, which can be configured separately.
When this policy is unset, the default action is taken, which is suspend.
If the action is suspend, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can separately be configured to either lock or not lock the screen before suspending.''',
},
{
'name': 'LidCloseAction',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'LidCloseActionSuspend',
'value': 0,
'caption': '''Suspend''',
},
{
'name': 'LidCloseActionLogout',
'value': 1,
'caption': '''Log the user out''',
},
{
'name': 'LidCloseActionShutdown',
'value': 2,
'caption': '''Shut down''',
},
{
'name': 'LidCloseActionDoNothing',
'value': 3,
'caption': '''Do nothing''',
},
],
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 0,
'id': 181,
'caption': '''Action to take when the user closes the lid''',
'tags': [],
'desc': '''When this policy is set, it specifies the action that <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> takes when the user closes the device's lid.
When this policy is unset, the default action is taken, which is suspend.
If the action is suspend, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can separately be configured to either lock or not lock the screen before suspending.''',
},
{
'name': 'PowerManagementUsesAudioActivity',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 182,
'caption': '''Specify whether audio activity affects power management''',
'tags': [],
'desc': '''If this policy is set to True or is unset, the user is not considered to be idle while audio is playing. This prevents the idle timeout from being reached and the idle action from being taken. However, screen dimming, screen off and screen lock will be performed after the configured timeouts, irrespective of audio activity.
If this policy is set to False, audio activity does not prevent the user from being considered idle.''',
},
{
'name': 'PowerManagementUsesVideoActivity',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 183,
'caption': '''Specify whether video activity affects power management''',
'tags': [],
'desc': '''If this policy is set to True or is unset, the user is not considered to be idle while video is playing. This prevents the idle delay, screen dim delay, screen off delay and screen lock delay from being reached and the corresponding actions from being taken.
If this policy is set to False, video activity does not prevent the user from being considered idle.''',
'arc_support': 'Video playing in Android apps is not taken into consideration, even if this policy is set to <ph name="TRUE">True</ph>.',
},
{
'name': 'PresentationIdleDelayScale',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:26-28'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 200,
'id': 184,
'caption': '''Percentage by which to scale the idle delay in presentation mode (deprecated)''',
'tags': [],
'desc': '''This policy has been retired as of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 29. Please use the PresentationScreenDimDelayScale policy instead.''',
},
{
'name': 'PresentationScreenDimDelayScale',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:29-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 200,
'id': 220,
'caption': '''Percentage by which to scale the screen dim delay in presentation mode''',
'tags': [],
'desc': '''Specifies the percentage by which the screen dim delay is scaled when the device is in presentation mode.
If this policy is set, it specifies the percentage by which the screen dim delay is scaled when the device is in presentation mode. When the screen dim delay is scaled, the screen off, screen lock and idle delays get adjusted to maintain the same distances from the screen dim delay as originally configured.
If this policy is unset, a default scale factor is used.
The scale factor must be 100% or more. Values that would make the screen dim delay in presentation mode shorter than the regular screen dim delay are not allowed.''',
},
{
'name': 'AllowScreenWakeLocks',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 203,
'caption': '''Allow screen wake locks''',
'tags': [],
'desc': '''Specifies whether screen wake locks are allowed. Screen wake locks can be requested by extensions via the power management extension API.
If this policy is set to true or left not set, screen wake locks will be honored for power management.
If this policy is set to false, screen wake lock requests will get ignored.''',
},
{
'name': 'UserActivityScreenDimDelayScale',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:29-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 200,
'id': 210,
'caption': '''Percentage by which to scale the screen dim delay if the user becomes active after dimming''',
'tags': [],
'desc': '''Specifies the percentage by which the screen dim delay is scaled when user activity is observed while the screen is dimmed or soon after the screen has been turned off.
If this policy is set, it specifies the percentage by which the screen dim delay is scaled when user activity is observed while the screen is dimmed or soon after the screen has been turned off. When the dim delay is scaled, the screen off, screen lock and idle delays get adjusted to maintain the same distances from the screen dim delay as originally configured.
If this policy is unset, a default scale factor is used.
The scale factor must be 100% or more.''',
},
{
'name': 'WaitForInitialUserActivity',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:32-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 247,
'caption': '''Wait for initial user activity''',
'tags': [],
'desc': '''Specifies whether power management delays and the session length limit should only start running after the first user activity has been observed in a session.
If this policy is set to True, power management delays and the session length limit do not start running until after the first user activity has been observed in a session.
If this policy is set to False or left unset, power management delays and the session length limit start running immediately on session start.''',
},
{
'name': 'PowerManagementIdleSettings',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'AC': {
'description': 'Delays and actions to take when the device is idle and running on AC power',
'type': 'object',
'id': 'PowerManagementDelays',
'properties': {
'Delays': {
'type': 'object',
'properties': {
'ScreenDim': {
'description': 'The length of time without user input after which the screen is dimmed, in milliseconds',
'type': 'integer',
'minimum': 0
},
'ScreenOff': {
'description': 'The length of time without user input after which the screen is turned off, in milliseconds',
'type': 'integer',
'minimum': 0
},
'IdleWarning': {
'description': 'The length of time without user input after which a warning dialog is shown, in milliseconds',
'type': 'integer',
'minimum': 0
},
'Idle': {
'description': 'The length of time without user input after which the idle action is taken, in milliseconds',
'type': 'integer',
'minimum': 0
}
}
},
'IdleAction': {
'description': 'Action to take when the idle delay is reached',
'type': 'string',
'enum': [ 'Suspend', 'Logout', 'Shutdown', 'DoNothing' ]
}
}
},
'Battery': {
'description': 'Delays and actions to take when the device is idle and running on battery',
'$ref': 'PowerManagementDelays'
}
}
},
'supported_on': ['chrome_os:35-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'AC': {
'IdleAction': 'DoNothing'
},
'Battery': {
'IdleAction': 'DoNothing'
}
},
'id': 258,
'caption': '''Power management settings when the user becomes idle''',
'tags': [],
'desc': '''This policy controls multiple settings for the power management strategy when the user becomes idle.
There are four types of action:
* The screen will be dimmed if the user remains idle for the time specified by |ScreenDim|.
* The screen will be turned off if the user remains idle for the time specified by |ScreenOff|.
* A warning dialog will be shown if the user remains idle for the time specified by |IdleWarning|, telling the user that the idle action is about to be taken.
* The action specified by |IdleAction| will be taken if the user remains idle for the time specified by |Idle|.
For each of above actions, the delay should be specified in milliseconds, and needs to be set to a value greater than zero to trigger the corresponding action. In case the delay is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will not take the corresponding action.
For each of the above delays, when the length of time is unset, a default value will be used.
Note that |ScreenDim| values will be clamped to be less than or equal to |ScreenOff|, |ScreenOff| and |IdleWarning| will be clamped to be less than or equal to |Idle|.
|IdleAction| can be one of four possible actions:
* |Suspend|
* |Logout|
* |Shutdown|
* |DoNothing|
When the |IdleAction| is unset, the default action is taken, which is suspend.
There are also separate settings for AC power and battery.
'''
},
{
'name': 'ScreenLockDelays',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'AC': {
'description': 'The length of time without user input after which the screen is locked when running on AC power, in milliseconds',
'type': 'integer',
'minimum': 0
},
'Battery': {
'description': 'The length of time without user input after which the screen is locked when running on battery, in milliseconds',
'type': 'integer',
'minimum': 0
}
}
},
'supported_on': ['chrome_os:35-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'AC': 600000,
'Battery': 300000
},
'id': 259,
'caption': '''Screen lock delays''',
'tags': [],
'desc': '''Specifies the length of time without user input after which the screen is locked when running on AC power or battery.
When the length of time is set to a value greater than zero, it represents the length of time that the user must remain idle before <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> locks the screen.
When the length of time is set to zero, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> does not lock the screen when the user becomes idle.
When the length of time is unset, a default length of time is used.
The recommended way to lock the screen on idle is to enable screen locking on suspend and have <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> suspend after the idle delay. This policy should only be used when screen locking should occur a significant amount of time sooner than suspend or when suspend on idle is not desired at all.
The policy value should be specified in milliseconds. Values are clamped to be less than the idle delay.''',
},
{
'name': 'DeviceLoginScreenPowerManagement',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'AC': {
'description': 'Power management settings applicable only when running on AC power',
'type': 'object',
'id': 'DeviceLoginScreenPowerSettings',
'properties': {
'Delays': {
'type': 'object',
'properties': {
'ScreenDim': {
'description': 'The length of time without user input after which the screen is dimmed, in milliseconds',
'type': 'integer',
'minimum': 0
},
'ScreenOff': {
'description': 'The length of time without user input after which the screen is turned off, in milliseconds',
'type': 'integer',
'minimum': 0
},
'Idle': {
'description': 'The length of time without user input after which the idle action is taken, in milliseconds',
'type': 'integer',
'minimum': 0
}
}
},
'IdleAction': {
'description': 'Action to take when the idle delay is reached',
'type': 'string',
'enum': [ 'Suspend', 'Shutdown', 'DoNothing' ]
}
}
},
'Battery': {
'description': 'Power management settings applicable only when running on battery power',
'$ref': 'DeviceLoginScreenPowerSettings'
},
'LidCloseAction': {
'description': 'Action to take when the lid is closed',
'type': 'string',
'enum': [ 'Suspend', 'Shutdown', 'DoNothing' ]
},
'UserActivityScreenDimDelayScale': {
'description': 'Percentage by which the screen dim delay is scaled when user activity is observed while the screen is dimmed or soon after the screen has been turned off',
'type': 'integer',
'minimum': 100
}
}
},
'supported_on': ['chrome_os:30-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': {
'AC': {
'IdleAction': 'DoNothing'
},
'Battery': {
'IdleAction': 'DoNothing'
}
},
'id': 225,
'caption': '''Power management on the login screen''',
'tags': [],
'desc': '''Configure power management on the login screen in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
This policy lets you configure how <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> behaves when there is no user activity for some amount of time while the login screen is being shown. The policy controls multiple settings. For their individual semantics and value ranges, see the corresponding policies that control power management within a session. The only deviations from these policies are:
* The actions to take on idle or lid close cannot be to end the session.
* The default action taken on idle when running on AC power is to shut down.
If a setting is left unspecified, a default value is used.
If this policy is unset, defaults are used for all settings.''',
},
{
'name': 'DeviceAllowRedeemChromeOsRegistrationOffers',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:26-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 185,
'caption': '''Allow users to redeem offers through Chrome OS Registration''',
'tags': [],
'desc': '''IT admins for enterprise devices can use this flag to control whether to allow users to redeem offers through Chrome OS Registration.
If this policy is set to true or left not set, users will be able to redeem offers through Chrome OS Registration.
If this policy is set to false, user will not be able to redeem offers.''',
},
{
'name': 'TermsOfServiceURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:26-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'https://www.example.com/terms_of_service.txt',
'id': 186,
'caption': '''Set the Terms of Service for a device-local account''',
'tags': [],
'desc': '''Sets the Terms of Service that the user must accept before starting a device-local account session.
If this policy is set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will download the Terms of Service and present them to the user whenever a device-local account session is starting. The user will only be allowed into the session after accepting the Terms of Service.
If this policy is not set, no Terms of Service are shown.
The policy should be set to a URL from which <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can download the Terms of Service. The Terms of Service must be plain text, served as MIME type text/plain. No markup is allowed.''',
},
{
'name': 'ShowAccessibilityOptionsInSystemTrayMenu',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:27-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 188,
'caption': '''Show accessibility options in system tray menu''',
'tags': [],
'desc': '''If this policy is set to true, Accessibility options always appear in system tray menu.
If this policy is set to false, Accessibility options never appear in system tray menu.
If you set this policy, users cannot change or override it.
If this policy is left unset, Accessibility options will not appear in the system tray menu, but the user can cause the Accessibility options to appear via the Settings page.'''
},
{
'name': 'LargeCursorEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 211,
'caption': '''Enable large cursor''',
'tags': [],
'desc': '''Enable the large cursor accessibility feature.
If this policy is set to true, the large cursor will always be enabled.
If this policy is set to false, the large cursor will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the large cursor is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'SpokenFeedbackEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 212,
'caption': '''Enable spoken feedback''',
'tags': [],
'desc': '''Enable the spoken feedback accessibility feature.
If this policy is set to true, spoken feedback will always be enabled.
If this policy is set to false, spoken feedback will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, spoken feedback is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'HighContrastEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 213,
'caption': '''Enable high contrast mode''',
'tags': [],
'desc': '''Enable the high contrast mode accessibility feature.
If this policy is set to true, high contrast mode will always be enabled.
If this policy is set to false, high contrast mode will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, high contrast mode is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'VirtualKeyboardEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:34-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 255,
'caption': '''Enable on-screen keyboard''',
'tags': [],
'desc': '''Enable the on-screen keyboard accessibility feature.
If this policy is set to true, the on-screen keyboard will always be enabled.
If this policy is set to false, the on-screen keyboard will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the on-screen keyboard is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'KeyboardDefaultToFunctionKeys',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:35-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 260,
'caption': '''Media keys default to function keys''',
'tags': [],
'desc': '''Changes the default behaviour of the top row keys to function keys.
If this policy is set to true, the keyboard's top row of keys will produce function key commands per default. The search key has to be pressed to revert their behavior back to media keys.
If this policy is set to false or left unset, the keyboard will produce media key commands per default and function key commands when the search key is held.'''
},
{
'name': 'ScreenMagnifierType',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Screen magnifier disabled''',
},
{
'name': 'Full-screen',
'value': 1,
'caption': '''Full-screen magnifier enabled''',
},
],
'supported_on': ['chrome_os:29-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 214,
'caption': '''Set screen magnifier type''',
'tags': [],
'desc': '''If this policy is set, it controls the type of screen magnifier that is enabled. Setting the policy to "None" disables the screen magnifier.
If you set this policy, users cannot change or override it.
If this policy is left unset, the screen magnifier is disabled initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenDefaultLargeCursorEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 215,
'caption': '''Set default state of the large cursor on the login screen''',
'tags': [],
'desc': '''Set the default state of the large cursor accessibility feature on the login screen.
If this policy is set to true, the large cursor will be enabled when the login screen is shown.
If this policy is set to false, the large cursor will be disabled when the login screen is shown.
If you set this policy, users can temporarily override it by enabling or disabling the large cursor. However, the user's choice is not persistent and the default is restored whenever the login screen is shown anew or the user remains idle on the login screen for a minute.
If this policy is left unset, the large cursor is disabled when the login screen is first shown. Users can enable or disable the large cursor anytime and its status on the login screen is persisted between users.''',
},
{
'name': 'DeviceLoginScreenDefaultSpokenFeedbackEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 216,
'caption': '''Set the default state of spoken feedback on the login screen''',
'tags': [],
'desc': '''Set the default state of the spoken feedback accessibility feature on the login screen.
If this policy is set to true, spoken feedback will be enabled when the login screen is shown.
If this policy is set to false, spoken feedback will be disabled when the login screen is shown.
If you set this policy, users can temporarily override it by enabling or disabling spoken feedback. However, the user's choice is not persistent and the default is restored whenever the login screen is shown anew or the user remains idle on the login screen for a minute.
If this policy is left unset, spoken feedback is disabled when the login screen is first shown. Users can enable or disable spoken feedback anytime and its status on the login screen is persisted between users.''',
},
{
'name': 'DeviceLoginScreenDefaultHighContrastEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 217,
'caption': '''Set the default state of high contrast mode on the login screen''',
'tags': [],
'desc': '''Set the default state of the high contrast mode accessibility feature on the login screen.
If this policy is set to true, high contrast mode will be enabled when the login screen is shown.
If this policy is set to false, high contrast mode will be disabled when the login screen is shown.
If you set this policy, users can temporarily override it by enabling or disabling high contrast mode. However, the user's choice is not persistent and the default is restored whenever the login screen is shown anew or the user remains idle on the login screen for a minute.
If this policy is left unset, high contrast mode is disabled when the login screen is first shown. Users can enable or disable high contrast mode anytime and its status on the login screen is persisted between users.''',
},
{
'name': 'DeviceLoginScreenDefaultVirtualKeyboardEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:34-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 256,
'caption': '''Set default state of the on-screen keyboard on the login screen''',
'tags': [],
'desc': '''Set the default state of the on-screen keyboard accessibility feature on the login screen.
If this policy is set to true, the on-screen keyboard will be enabled when the login screen is shown.
If this policy is set to false, the on-screen keyboard will be disabled when the login screen is shown.
If you set this policy, users can temporarily override it by enabling or disabling the on-screen keyboard. However, the user's choice is not persistent and the default is restored whenever the login screen is shown anew or the user remains idle on the login screen for a minute.
If this policy is left unset, the on-screen keyboard is disabled when the login screen is first shown. Users can enable or disable the on-screen keyboard anytime and its status on the login screen is persisted between users.''',
},
{
'name': 'DeviceLoginScreenDefaultScreenMagnifierType',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Screen magnifier disabled''',
},
{
'name': 'Full-screen',
'value': 1,
'caption': '''Full-screen magnifier enabled''',
},
],
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 1,
'id': 218,
'caption': '''Set the default screen magnifier type enabled on the login screen''',
'tags': [],
'desc': '''Set the default type of screen magnifier that is enabled on the login screen.
If this policy is set, it controls the type of screen magnifier that is enabled when the login screen is shown. Setting the policy to "None" disables the screen magnifier.
If you set this policy, users can temporarily override it by enabling or disabling the screen magnifier. However, the user's choice is not persistent and the default is restored whenever the login screen is shown anew or the user remains idle on the login screen for a minute.
If this policy is left unset, the screen magnifier is disabled when the login screen is first shown. Users can enable or disable the screen magnifier anytime and its status on the login screen is persisted between users.''',
},
{
'name': 'HideWebStoreIcon',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:26-', 'chrome_os:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 189,
'caption': '''Hide the web store from the New Tab Page and app launcher''',
'tags': [],
'desc': '''Hide the Chrome Web Store app and footer link from the New Tab Page and <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> app launcher.
When this policy is set to true, the icons are hidden.
When this policy is set to false or is not configured, the icons are visible.''',
},
{
'name': 'DeviceStartUpFlags',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:27-65'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'deprecated': True,
'example_value': [ "enable-managed-mode", "my-cool-flag" ],
'id': 191,
'caption': '''System wide flags to be applied on <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> start-up''',
'tags': [],
'desc': '''This policy is deprecated and removed in M66, because it was used only for internal testing and it is a security liability.
Specifies the flags that should be applied to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> when it starts. The specified flags are applied on the login screen only. Flags set via this policy do not propagate into user sessions.''',
},
{
'name': 'UptimeLimit',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:29-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 86400,
'id': 192,
'caption': '''Limit device uptime by automatically rebooting''',
'tags': [],
'desc': '''Limit the device uptime by scheduling automatic reboots.
When this policy is set, it specifies the length of device uptime after which an automatic reboot is scheduled.
When this policy is not set, the device uptime is not limited.
If you set this policy, users cannot change or override it.
An automatic reboot is scheduled at the selected time but may be delayed on the device by up to 24 hours if a user is currently using the device.
Note: Currently, automatic reboots are only enabled while the login screen is being shown or a kiosk app session is in progress. This will change in the future and the policy will always apply, regardless of whether a session of any particular type is in progress or not.
The policy value should be specified in seconds. Values are clamped to be at least 3600 (one hour).''',
},
{
'name': 'RebootAfterUpdate',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 193,
'caption': '''Automatically reboot after update''',
'tags': [],
'desc': '''Schedule an automatic reboot after a <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> update has been applied.
When this policy is set to true, an automatic reboot is scheduled when a <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> update has been applied and a reboot is required to complete the update process. The reboot is scheduled immediately but may be delayed on the device by up to 24 hours if a user is currently using the device.
When this policy is set to false, no automatic reboot is scheduled after applying a <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> update. The update process is completed when the user next reboots the device.
If you set this policy, users cannot change or override it.
Note: Currently, automatic reboots are only enabled while the login screen is being shown or a kiosk app session is in progress. This will change in the future and the policy will always apply, regardless of whether a session of any particular type is in progress or not.''',
},
{
'name': 'VariationsRestrictParameter',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:27-', 'android:34-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'restricted',
'id': 196,
'future': True,
'caption': '''Set the restriction on the fetching of the Variations seed''',
'tags': [],
'desc': '''Add a parameter to the fetching of the Variations seed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If specified, will add a query parameter called 'restrict' to the URL used to fetch the Variations seed. The value of the parameter will be the value specified in this policy.
If not specified, will not modify the Variations seed URL.''',
},
{
'name': 'DeviceVariationsRestrictParameter',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:28-'],
'features': {
'dynamic_refresh': False,
},
'device_only': True,
'example_value': 'restricted',
'id': 199,
'future': True,
'caption': '''Set the restriction on the fetching of the Variations seed''',
'tags': [],
'desc': '''Add a parameter to the fetching of the Variations seed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
If specified, will add a query parameter called 'restrict' to the URL used to fetch the Variations seed. The value of the parameter will be the value specified in this policy.
If not specified, will not modify the Variations seed URL.''',
},
{
'name': 'AttestationEnabledForDevice',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:28-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
},
'device_only': True,
'example_value': True,
'id': 207,
'caption': '''Enable remote attestation for the device''',
'tags': [],
'desc': '''If true, remote attestation is allowed for the device and a certificate will automatically be generated and uploaded to the Device Management Server.
If it is set to false, or if it is not set, no certificate will be generated and calls to the enterprise.platformKeys extension API will fail.''',
},
{
'name': 'AttestationEnabledForUser',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 200,
'caption': '''Enable remote attestation for the user''',
'tags': [],
'desc': '''If true, the user can use the hardware on Chrome devices to remote attest its identity to the privacy CA via the <ph name="ENTERPRISE_PLATFORM_KEYS_API">Enterprise Platform Keys API</ph> using <ph name="CHALLENGE_USER_KEY_FUNCTION">chrome.enterprise.platformKeys.challengeUserKey()</ph>.
If it is set to false, or if it is not set, calls to the API will fail with an error code.''',
},
{
'name': 'AttestationExtensionWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['ghdilpkmfbfdnomkmaiogjhjnggaggoi'],
'id': 201,
'caption': '''Extensions allowed to to use the remote attestation API''',
'tags': [],
'desc': '''This policy specifies the allowed extensions to use the <ph name="ENTERPRISE_PLATFORM_KEYS_API">Enterprise Platform Keys API</ph> function <ph name="CHALLENGE_USER_KEY_FUNCTION">chrome.enterprise.platformKeys.challengeUserKey()</ph> for remote attestation. Extensions must be added to this list to use the API.
If an extension is not in the list, or the list is not set, the call to the API will fail with an error code.''',
},
{
'name': 'AttestationForContentProtectionEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:31-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
},
'device_only': True,
'example_value': True,
'id': 239,
'caption': '''Enable the use of remote attestation for content protection for the device''',
'tags': [],
'desc': '''Chrome OS devices can use remote attestation (Verified Access) to get a certificate issued by the Chrome OS CA that asserts the device is eligible to play protected content. This process involves sending hardware endorsement information to the Chrome OS CA which uniquely identifies the device.
If this setting is false, the device will not use remote attestation for content protection and the device may be unable to play protected content.
If this setting is true, or if it is not set, remote attestation may be used for content protection.''',
},
{
'name': 'SuppressChromeFrameTurndownPrompt',
'caption': '''Suppress the <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph> turndown prompt''',
'tags': [],
'desc': '''Suppresses the turndown prompt that appears when a site is rendered by <ph name="PRODUCT_FRAME_NAME">$3<ex>Google Chrome Frame</ex></ph>.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_frame:29-32'],
'features': {
'dynamic_refresh': False,
},
'example_value': True,
'id': 221,
},
{
'name': 'ContentPackDefaultFilteringBehavior',
'future': True,
'deprecated': True,
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Allow',
'value': 0,
'caption': '''Allow access to sites outside of content packs''',
},
{
'name': 'Warn',
'value': 1,
'caption': '''Warn when visiting sites outside of content packs''',
},
{
'name': 'Block',
'value': 2,
'caption': '''Block access to sites outside of content packs''',
},
],
'supported_on': ['chrome.*:28-', 'chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': 2,
'id': 204,
'caption': '''Default behavior for sites not in any content pack''',
'tags': [],
'desc': '''This policy is for internal use by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> itself.''',
},
{
'name': 'ContentPackManualBehaviorHosts',
'future': True,
'deprecated': True,
'type': 'dict',
'schema': {
'type': 'object',
'additionalProperties': {
'type': 'boolean'
}
},
'supported_on': ['chrome.*:28-', 'chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': {
'www.example.com': True,
'moose.org': False
},
'id': 205,
'caption': '''Managed user manual exception hosts''',
'tags': [],
'desc': '''A dictionary mapping hostnames to a boolean flag specifying whether access to the host should be allowed (true) or blocked (false).
This policy is for internal use by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> itself.''',
},
{
'name': 'ContentPackManualBehaviorURLs',
'future': True,
'deprecated': True,
'type': 'dict',
'schema': {
'type': 'object',
'additionalProperties': {
'type': 'boolean'
}
},
'supported_on': ['chrome.*:28-', 'chrome_os:28-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': {
'https://www.example.com': True,
'https://moose.org': False
},
'id': 206,
'caption': '''Managed user manual exception URLs''',
'tags': [],
'desc': '''A dictionary mapping URLs to a boolean flag specifying whether access to the host should be allowed (true) or blocked (false).
This policy is for internal use by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> itself.''',
},
{
'name': 'SupervisedUsersEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:29-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': True,
'default_for_managed_devices_doc_only': False,
'id': 219,
'caption': '''Enable supervised users''',
'tags': [],
'desc': '''If set to true, supervised users can be created and used.
If set to false or not configured, supervised-user creation and login will be disabled. All existing supervised users will be hidden.
NOTE: The default behavior for consumer and enterprise devices differs: on consumer devices supervised users are enabled by default, but on enterprise devices they are disabled by default.'''
},
{
'name': 'SupervisedUserCreationEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:29-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 223,
'caption': '''Enable creation of supervised users''',
'tags': [],
'desc': '''If set to false, supervised-user creation by this user will be disabled. Any existing supervised users will still be available.
If set to true or not configured, supervised users can be created and managed by this user.'''
},
{
# SupervisedUserContentProviderEnabled is never accessed through the policy framework, but is
# instead directly accessed as an Android App Restriction (see SupervisedUserContentProvider.java).
# It, however, needs to be here both because this is the source of the list of Chrome's App
# Restrictions on Android, and to avoid possible future naming conflicts with policies.
'name': 'SupervisedUserContentProviderEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:49-'],
'features': {
'dynamic_refresh': True,
'per_profile' : True,
},
'example_value': True,
'id': 312,
'caption': '''Enable the supervised user content provider''',
'tags': [],
'desc': '''If true and the user is a supervised user then other Android apps can query the user's web restrictions through a content provider.
If false or unset then the content provider returns no information.'''
},
{
'name': 'ManagedBookmarks',
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'id': 'BookmarkType',
'properties': {
'name': { 'type': 'string' },
'url': { 'type': 'string' },
'toplevel_name': { 'type': 'string' },
'children': {
'type': 'array',
'items': { '$ref': 'BookmarkType' },
},
},
},
},
'supported_on': [
'android:30-',
'chrome.*:37-',
'chrome_os:37-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [
{
"toplevel_name": "My managed bookmarks folder"
}, {
"name": "Google",
"url": "google.com"
}, {
"name": "Youtube",
"url": "youtube.com"
}, {
"name": "Chrome links",
"children": [
{
"name": "Chromium",
"url": "chromium.org"
},
{
"name": "Chromium Developers",
"url": "dev.chromium.org"
}
]
}
],
'id': 227,
'caption': '''Managed Bookmarks''',
'tags': [],
'desc': '''Configures a list of managed bookmarks.
The policy consists of a list of bookmarks whereas each bookmark is a dictionary containing the keys "<ph name="NAME">name</ph>" and "<ph name="URL_LABEL">url</ph>" which hold the bookmark's name and its target. A subfolder may be configured by defining a bookmark without an "<ph name="URL_LABEL">url</ph>" key but with an additional "<ph name="CHILDREN">children</ph>" key which itself contains a list of bookmarks as defined above (some of which may be folders again). <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> amends incomplete URLs as if they were submitted via the Omnibox, for example "<ph name="GOOGLE_COM">google.com</ph>" becomes "<ph name="HTTPS_GOOGLE_COM">https://google.com/</ph>".
These bookmarks are placed in a folder that can't be modified by the user (but the user can choose to hide it from the bookmark bar). By default the folder name is "Managed bookmarks" but it can be customized by adding to the list of bookmarks a dictionary containing the key "<ph name="TOPLEVEL_NAME">toplevel_name</ph>" with the desired folder name as the value.
Managed bookmarks are not synced to the user account and can't be modified by extensions.''',
},
{
'name': 'DataCompressionProxyEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:31-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 241,
'caption': '''Enable the data compression proxy feature''',
'tags': [],
'desc': '''Enable or disable the data compression proxy and prevents users from changing this setting.
If you enable or disable this setting, users cannot change or override this setting.
If this policy is left not set, the data compression proxy feature will be available for the user to choose whether to use it or not.''',
},
{
'name': 'UserAvatarImage',
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { "type": "string" },
'hash': { "type": "string" }
},
},
'supported_on': ['chrome_os:34-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': { "url": "https://example.com/avatar.jpg", "hash": "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef" },
'max_size': 524288,
'id': 249,
'caption': '''User avatar image''',
'tags': [],
'desc': '''This policy allows you to configure the avatar image representing the user on the login screen. The policy is set by specifying the URL from which <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can download the avatar image and a cryptographic hash used to verify the integrity of the download. The image must be in JPEG format, its size must not exceed 512kB. The URL must be accessible without any authentication.
The avatar image is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
The policy should be specified as a string that expresses the URL and hash in JSON format, conforming to the following schema:
{
"type": "object",
"properties": {
"url": {
"description": "The URL from which the avatar image can be downloaded.",
"type": "string"
},
"hash": {
"description": "The SHA-256 hash of the avatar image.",
"type": "string"
}
}
}
If this policy is set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will download and use the avatar image.
If you set this policy, users cannot change or override it.
If the policy is left not set, the user can choose the avatar image representing them on the login screen.''',
},
{
'name': 'WallpaperImage',
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { "type": "string" },
'hash': { "type": "string" }
},
},
'supported_on': ['chrome_os:35-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': { "url": "https://example.com/wallpaper.jpg", "hash": "baddecafbaddecafbaddecafbaddecafbaddecafbaddecafbaddecafbaddecaf" },
'max_size': 16777216,
'id': 262,
'caption': '''Wallpaper image''',
'tags': [],
'desc': '''This policy allows you to configure the wallpaper image that is shown on the desktop and on the login screen background for the user. The policy is set by specifying the URL from which <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can download the wallpaper image and a cryptographic hash used to verify the integrity of the download. The image must be in JPEG format, its file size must not exceed 16MB. The URL must be accessible without any authentication.
The wallpaper image is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
The policy should be specified as a string that expresses the URL and hash in JSON format, conforming to the following schema:
{
"type": "object",
"properties": {
"url": {
"description": "The URL from which the wallpaper image can be downloaded.",
"type": "string"
},
"hash": {
"description": "The SHA-256 hash of the wallpaper image.",
"type": "string"
}
}
}
If this policy is set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will download and use the wallpaper image.
If you set this policy, users cannot change or override it.
If the policy is left not set, the user can choose an image to be shown on the desktop and on the login screen background.''',
},
{
'name': 'EnableDeprecatedWebPlatformFeatures',
'type': 'string-enum-list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [
'ExampleDeprecatedFeature_EffectiveUntil20080902'
],
},
},
'items': [
{
'name': 'ExampleDeprecatedFeature',
'value': 'ExampleDeprecatedFeature_EffectiveUntil20080902',
'caption': '''Enable ExampleDeprecatedFeature API through 2008/09/02''',
}
],
'supported_on': ['chrome.*:37-', 'chrome_os:37-', 'android:37-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['ExampleDeprecatedFeature_EffectiveUntil20080902'],
'id': 270,
'caption': '''Enable deprecated web platform features for a limited time''',
'tags': ['system-security'],
'desc': '''Specify a list of deprecated web platform features to re-enable temporarily.
This policy gives administrators the ability to re-enable deprecated web platform features for a limited time. Features are identified by a string tag and the features corresponding to the tags included in the list specified by this policy will get re-enabled.
If this policy is left not set, or the list is empty or does not match one of the supported string tags, all deprecated web platform features will remain disabled.
While the policy itself is supported on the above platforms, the feature it is enabling may be available on fewer platforms. Not all deprecated Web Platform features can be re-enabled. Only the ones explicitly listed below can be for a limited period of time, which is different per feature. The general format of the string tag will be [DeprecatedFeatureName]_EffectiveUntil[yyyymmdd]. As reference, you can find the intent behind the Web Platform feature changes at https://bit.ly/blinkintents.
''',
},
{
'name': 'DeviceTransferSAMLCookies',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:38-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 271,
'caption': '''Transfer SAML IdP cookies during login''',
'tags': [],
'desc': '''Specifies whether authentication cookies set by a SAML IdP during login should be transferred to the user's profile.
When a user authenticates via a SAML IdP during login, cookies set by the IdP are written to a temporary profile at first. These cookies can be transferred to the user's profile to carry forward the authentication state.
When this policy is set to true, cookies set by the IdP are transferred to the user's profile every time they authenticate against the SAML IdP during login.
When this policy is set to false or unset, cookies set by the IdP are transferred to the user's profile during their first login on a device only.
This policy affects users whose domain matches the device's enrollment domain only. For all other users, cookies set by the IdP are transferred to the user's profile during their first login on the device only.''',
'arc_support': 'Cookies transferred to the user\'s profile are not accessible to Android apps.',
},
{
'name': 'EasyUnlockAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:38-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 272,
'caption': '''Allow Smart Lock to be used''',
'tags': [],
'desc': '''If you enable this setting, users will be allowed to use Smart Lock if the requirements for the feature are satisfied.
If you disable this setting, users will not be allowed to use Smart Lock.
If this policy is left not set, the default is not allowed for enterprise-managed users and allowed for non-managed users.''',
},
{
'name': 'SessionLocales',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:38-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['de', 'fr'],
'id': 274,
'caption': '''Set the recommended locales for a public session''',
'tags': [],
'desc': '''Sets one or more recommended locales for a public session, allowing users to easily choose one of these locales.
The user can choose a locale and a keyboard layout before starting a public session. By default, all locales supported by <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> are listed in alphabetic order. You can use this policy to move a set of recommended locales to the top of the list.
If this policy is not set, the current UI locale will be pre-selected.
If this policy is set, the recommended locales will be moved to the top of the list and will be visually separated from all other locales. The recommended locales will be listed in the order in which they appear in the policy. The first recommended locale will be pre-selected.
If there is more than one recommended locale, it is assumed that users will want to select among these locales. Locale and keyboard layout selection will be prominently offered when starting a public session. Otherwise, it is assumed that most users will want to use the pre-selected locale. Locale and keyboard layout selection will be less prominently offered when starting a public session.
When this policy is set and automatic login is enabled (see the |DeviceLocalAccountAutoLoginId| and |DeviceLocalAccountAutoLoginDelay| policies), the automatically started public session will use the first recommended locale and the most popular keyboard layout matching this locale.
The pre-selected keyboard layout will always be the most popular layout matching the pre-selected locale.
This policy can only be set as recommended. You can use this policy to move a set of recommended locales to the top but users are always allowed to choose any locale supported by <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> for their session.
''',
},
{
'name': 'BrowserGuestModeEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:38-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 275,
'caption': '''Enable guest mode in browser''',
'tags': [],
'desc': '''If this policy is set to true or not configured, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will enable guest logins. Guest logins are <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> profiles where all windows are in incognito mode.
If this policy is set to false, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not allow guest profiles to be started.''',
},
{
'name': 'BrowserAddPersonEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:39-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 276,
'caption': '''Enable add person in user manager''',
'tags': [],
'desc': '''If this policy is set to true or not configured, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will allow Add Person from the user manager.
If this policy is set to false, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not allow creation of new profiles from the user manager.''',
},
{
'name': 'ForceBrowserSignin',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:64-', 'chrome.mac:66-', 'android:65-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 346,
'caption': '''Enable force sign in for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''If this policy is set to true, user has to sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> with their profile before using the browser. And the default value of BrowserGuestModeEnabled will be set to false. Note that existing unsigned profiles will be locked and inaccessible after enabling this policy. For more information, see help center article.
If this policy is set to false or not configured, user can use the browser without sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'name': 'SSLVersionMin',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'tls1',
'tls1.1',
'tls1.2',
],
},
'items': [
{
'name': 'TLSv1',
'value': 'tls1',
'caption': 'TLS 1.0',
},
{
'name': 'TLSv1.1',
'value': 'tls1.1',
'caption': 'TLS 1.1',
},
{
'name': 'TLSv1.2',
'value': 'tls1.2',
'caption': 'TLS 1.2',
},
],
'supported_on': [
'chrome.*:66-',
'chrome_os:66-',
'android:66-',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'tls1',
'id': 279,
'caption': '''Minimum SSL version enabled''',
'tags': [],
'desc': '''If this policy is not configured then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses a default minimum version which is TLS 1.0.
Otherwise it may be set to one of the following values: "tls1", "tls1.1" or "tls1.2". When set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not use SSL/TLS versions less than the specified version. An unrecognized value will be ignored.''',
},
{
'name': 'SSLVersionFallbackMin',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'tls1.1',
'tls1.2',
],
},
'items': [
{
'name': 'TLSv1.1',
'value': 'tls1.1',
'caption': 'TLS 1.1',
},
{
'name': 'TLSv1.2',
'value': 'tls1.2',
'caption': 'TLS 1.2',
},
],
'supported_on': [
'chrome.*:50-52',
'chrome_os:50-52',
'android:50-52',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': 'tls1.1',
'id': 280,
'caption': '''Minimum TLS version to fallback to''',
'tags': ['system-security'],
'desc': '''Warning: The TLS version fallback will be removed from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> after version 52 (around September 2016) and this policy will stop working then.
When a TLS handshake fails, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> would previously retry the connection with a lesser version of TLS in order to work around bugs in HTTPS servers. This setting configures the version at which this fallback process will stop. If a server performs version negotiation correctly (i.e. without breaking the connection) then this setting doesn't apply. Regardless, the resulting connection must still comply with SSLVersionMin.
If this policy is not configured or if it is set to "tls1.2" then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> no longer performs this fallback. Note this does not disable support for older TLS versions, only whether <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will work around buggy servers which cannot negotiate versions correctly.
Otherwise, if compatibility with a buggy server must be maintained, this policy may be set to "tls1.1". This is a stopgap measure and the server should be rapidly fixed.''',
},
{
'name': 'SSLVersionMax',
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'tls1.2',
'tls1.3',
],
},
'items': [
{
'name': 'TLSv1.2',
'value': 'tls1.2',
'caption': 'TLS 1.2',
},
{
'name': 'TLSv1.3',
'value': 'tls1.3',
'caption': 'TLS 1.3',
},
],
'supported_on': [
'chrome.*:58-',
'chrome_os:58-',
'android:58-',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'tls1.2',
'id': 361,
'caption': '''Maximum SSL version enabled''',
'tags': ['system-security'],
'desc': '''Warning: The max TLS version policy will be entirely removed from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> around version 72 (around January 2019).
If this policy is not configured then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the default maximum version.
Otherwise it may be set to one of the following values: "tls1.2" or "tls1.3". When set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not use SSL/TLS versions greater than the specified version. An unrecognized value will be ignored.''',
},
{
'name': 'CertificateTransparencyEnforcementDisabledForUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:53-',
'chrome_os:53-',
'android:53-',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['example.com', '.example.com'],
'id': 335,
'caption': '''Disable Certificate Transparency enforcement for a list of URLs''',
'tags': ['system-security'],
'desc': '''Disables enforcing Certificate Transparency requirements to the listed URLs.
This policy allows certificates for the hostnames in the specified URLs to not be disclosed via Certificate Transparency. This allows certificates that would otherwise be untrusted, because they were not properly publicly disclosed, to continue to be used, but makes it harder to detect misissued certificates for those hosts.
A URL pattern is formatted according to https://www.chromium.org/administrators/url-blacklist-filter-format. However, because certificates are valid for a given hostname independent of the scheme, port, or path, only the hostname portion of the URL is considered. Wildcard hosts are not supported.
If this policy is not set, any certificate that is required to be disclosed via Certificate Transparency will be treated as untrusted if it is not disclosed according to the Certificate Transparency policy.''',
},
{
'name': 'CertificateTransparencyEnforcementDisabledForCas',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:67-',
'chrome_os:67-',
'android:67-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['sha256/AAAAAAAAAAAAAAAAAAAAAA==', 'sha256//////////////////////w=='],
'id': 435,
'caption': '''Disable Certificate Transparency enforcement for a list of subjectPublicKeyInfo hashes''',
'tags': ['system-security'],
'desc': '''Disables enforcing Certificate Transparency requirements for a list of subjectPublicKeyInfo hashes.
This policy allows disabling Certificate Transparency disclosure requirements for certificate chains that contain certificates with one of the specified subjectPublicKeyInfo hashes. This allows certificates that would otherwise be untrusted, because they were not properly publicly disclosed, to continue to be used for Enterprise hosts.
In order for Certificate Transparency enforcement to be disabled when this policy is set, one of the following conditions must be met:
1. The hash is of the server certificate's subjectPublicKeyInfo.
2. The hash is of a subjectPublicKeyInfo that appears in a CA certificate in the certificate chain, that CA certificate is constrained via the X.509v3 nameConstraints extension, one or more directoryName nameConstraints are present in the permittedSubtrees, and the directoryName contains an organizationName attribute.
3. The hash is of a subjectPublicKeyInfo that appears in a CA certificate in the certificate chain, the CA certificate has one or more organizationName attributes in the certificate Subject, and the server's certificate contains the same number of organizationName attributes, in the same order, and with byte-for-byte identical values.
A subjectPublicKeyInfo hash is specified by concatenating the hash algorithm name, the "/" character, and the Base64 encoding of that hash algorithm applied to the DER-encoded subjectPublicKeyInfo of the specified certificate. This Base64 encoding is the same format as an SPKI Fingerprint, as defined in RFC 7469, Section 2.4. Unrecognized hash algorithms are ignored. The only supported hash algorithm at this time is "sha256".
If this policy is not set, any certificate that is required to be disclosed via Certificate Transparency will be treated as untrusted if it is not disclosed according to the Certificate Transparency policy.''',
},
{
'name': 'CertificateTransparencyEnforcementDisabledForLegacyCas',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:67-',
'chrome_os:67-',
'android:67-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['sha256/AAAAAAAAAAAAAAAAAAAAAA==', 'sha256//////////////////////w=='],
'id': 436,
'caption': '''Disable Certificate Transparency enforcement for a list of Legacy Certificate Authorities''',
'tags': ['system-security'],
'desc': '''Disables enforcing Certificate Transparency requirements for a list of Legacy Certificate Authorities.
This policy allows disabling Certificate Transparency disclosure requirements for certificate chains that contain certificates with one of the specified subjectPublicKeyInfo hashes. This allows certificates that would otherwise be untrusted, because they were not properly publicly disclosed, to continue to be used for Enterprise hosts.
In order for Certificate Transparency enforcement to be disabled when this policy is set, the hash must be of a subjectPublicKeyInfo appearing in a CA certificate that is recognized as a Legacy Certificate Authority (CA). A Legacy CA is a CA that has been publicly trusted by default one or more operating systems supported by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, but is not trusted by the Android Open Source Project or <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
A subjectPublicKeyInfo hash is specified by concatenating the hash algorithm name, the "/" character, and the Base64 encoding of that hash algorithm applied to the DER-encoded subjectPublicKeyInfo of the specified certificate. This Base64 encoding is the same format as an SPKI Fingerprint, as defined in RFC 7469, Section 2.4. Unrecognized hash algorithms are ignored. The only supported hash algorithm at this time is "sha256".
If this policy is not set, any certificate that is required to be disclosed via Certificate Transparency will be treated as untrusted if it is not disclosed according to the Certificate Transparency policy.''',
},
{
'name': 'RC4Enabled',
'type': 'main',
'schema': {
'type': 'boolean',
},
'supported_on': [
'chrome.*:48-52',
'chrome_os:48-52',
'android:48-52',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': False,
'id': 310,
'caption': '''Whether RC4 cipher suites in TLS are enabled''',
'tags': ['system-security'],
'desc': '''Warning: RC4 will be completely removed from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> after version 52 (around September 2016) and this policy will stop working then.
If the policy is not set, or is set to false, then RC4 cipher suites in TLS will not be enabled. Otherwise it may be set to true to retain compatibility with an outdated server. This is a stopgap measure and the server should be reconfigured.''',
},
{
'name': 'DHEEnabled',
'type': 'main',
'schema': {
'type': 'boolean',
},
'supported_on': [
'chrome.*:53-57',
'chrome_os:53-57',
'android:53-57',
],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': False,
'id': 334,
'caption': '''Whether DHE cipher suites in TLS are enabled''',
'tags': ['system-security'],
'desc': '''Warning: DHE will be completely removed from <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> after version 57 (around March 2017) and this policy will stop working then.
If the policy is not set, or is set to false, then DHE cipher suites in TLS will not be enabled. Otherwise it may be set to true to enable DHE cipher suites and retain compatibility with an outdated server. This is a stopgap measure and the server should be reconfigured.
Servers are encouraged to migrated to ECDHE cipher suites. If these are unavailable, ensure a cipher suite using RSA key exchange is enabled.''',
},
{
'name': 'ContextualSearchEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'android:40-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 281,
'caption': '''Enable Tap to Search''',
'tags': [],
'desc': '''Enables the availability of Tap to Search in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s content view.
If you enable this setting, Tap to Search will be available to the user and they can choose to turn the feature on or off.
If you disable this setting, Tap to Search will be disabled completely.
If this policy is left not set, it is equivalent to being enabled, see description above.''',
},
{
'name': 'DeviceRebootOnShutdown',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:41-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 284,
'caption': '''Automatic reboot on device shutdown''',
'tags': [],
'desc': '''If this policy is set to false or not configured, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will allow the user to shut down the device.
If this policy is set to true, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will trigger a reboot when the user shuts down the device. <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> replaces all occurrences of shutdown buttons in the UI by reboot buttons. If the user shuts down the device using the power button, it will not automatically reboot, even if the policy is enabled.''',
},
{
'name': 'ExtensionCacheSize',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:43-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': 104857600,
'id': 296,
'caption': '''Set Apps and Extensions cache size (in bytes)''',
'tags': [],
'desc': '''<ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> caches Apps and Extensions for installation by multiple users of a single device to avoid re-downloading them for each user.
If this policy is not configured or the value is lower than 1 MB, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will use the default cache size.''',
'arc_support': 'The cache is not used for Android apps. If multiple users install the same Android app, it will be downloaded anew for each user.',
},
{
'name': 'DeviceLoginScreenDomainAutoComplete',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [ 'chrome_os:44-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 'students.school.edu',
'id': 297,
'caption': '''Enable domain name autocomplete during user sign in''',
'tags': [],
'desc': '''If this policy is set to a blank string or not configured, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will not show an autocomplete option during user sign-in flow.
If this policy is set to a string representing a domain name, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will show an autocomplete option during user sign-in allowing the user to type in only their user name without the domain name extension. The user will be able to overwrite this domain name extension.''',
},
{
'name': 'ForceMaximizeOnFirstRun',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:43-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': True,
'id': 298,
'caption': '''Maximize the first browser window on first run''',
'tags': [],
'desc': '''If this policy is set to true, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will unconditionally maximize the first window shown on first run.
If this policy is set to false or not configured, the decision whether to maximize the first window shown will be based on the screen size.''',
},
{
'name': 'SSLErrorOverrideAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:44-', 'chrome_os:44-', 'android:44-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 300,
'caption': '''Allow proceeding from the SSL warning page''',
'tags': [],
'desc': '''Chrome shows a warning page when users navigate to sites that have SSL errors. By default or when this policy is set to true, users are allowed to click through these warning pages.
Setting this policy to false disallows users to click through any warning page.''',
},
{
'name': 'QuicAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:43-', 'chrome_os:43-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 301,
'caption': '''Allow QUIC protocol''',
'tags': [],
'desc': '''If this policy is set to true or not set usage of QUIC protocol in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is allowed.
If this policy is set to false usage of QUIC protocol is disallowed.''',
},
{
'name': 'KeyPermissions',
'type': 'dict',
'schema': {
'type': 'object',
'additionalProperties': {
'type': 'object',
'properties': {
'allowCorporateKeyUsage': {
'description': '''If set to true, this extension can use all keys that are designated for corporate usage to sign arbitrary data. If set to false, it cannot access any such keys and the user cannot grant such permission either.''',
'type': 'boolean',
},
},
},
},
'supported_on': ['chrome_os:45-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
'extension1': {
'allowCorporateKeyUsage': True
},
'extension2': {
'allowCorporateKeyUsage': False
}
},
'id': 302,
'caption': 'Key Permissions',
'tags': [],
'desc': '''Grants access to corporate keys to extensions.
Keys are designated for corporate usage if they're generated using the chrome.enterprise.platformKeys API on a managed account. Keys imported or generated in another way are not designated for corporate usage.
Access to keys designated for corporate usage is solely controlled by this policy. The user can neither grant nor withdraw access to corporate keys to or from extensions.
By default an extension cannot use a key designated for corporate usage, which is equivalent to setting allowCorporateKeyUsage to false for that extension.
Only if allowCorporateKeyUsage is set to true for an extension, it can use any platform key marked for corporate usage to sign arbitrary data. This permission should only be granted if the extension is trusted to secure access to the key against attackers.''',
'arc_support': 'Android apps cannot get access to corporate keys. This policy has no effect on them.',
},
{
'name': 'WelcomePageOnOSUpgradeEnabled',
'supported_on': ['chrome.win:45-'],
'type': 'main',
'schema': { 'type': 'boolean' },
'id': 303,
'caption': 'Enable showing the welcome page on the first browser launch following OS upgrade',
'tags': [],
'desc': '''If this policy is set to true or not configured, the browser will re-show the welcome page on the first launch following an OS upgrade.
If this policy is set to false, the browser will not re-show the welcome page on the first launch following an OS upgrade.''',
'features': {
'dynamic_refresh': False,
'per_profile': False
},
'example_value': False
},
{
'name': 'HardwareAccelerationModeEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:46-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 304,
'caption': '''Use hardware acceleration when available''',
'tags': [],
'desc': '''If this policy is set to true or left unset, hardware acceleration will be enabled unless a certain GPU feature is blacklisted.
If this policy is set to false, hardware acceleration will be disabled.''',
},
{
'name': 'UnifiedDesktopEnabledByDefault',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:47-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 307,
'caption': '''Make Unified Desktop available and turn on by default''',
'tags': [],
'desc': '''If this policy is set to true, Unified Desktop is allowed and
enabled by default, which allows applications to span multiple displays.
The user may disable Unified Desktop for individual displays by unchecking
it in the display settings.
If this policy is set to false or unset, Unified Desktop will be
disabled. In this case, the user cannot enable the feature.''',
},
{
'name': 'DisplayRotationDefault',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'ROTATE_0',
'value': 0,
'caption': '''Rotate screen by 0 degrees''',
},
{
'name': 'ROTATE_90',
'value': 1,
'caption': '''Rotate screen clockwise by 90 degrees''',
},
{
'name': 'ROTATE_180',
'value': 2,
'caption': '''Rotate screen by 180 degrees''',
},
{
'name': 'ROTATE_270',
'value': 3,
'caption': '''Rotate screen clockwise by 270 degrees''',
},
],
'supported_on': ['chrome_os:48-'],
'device_only': True,
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'id': 311,
'caption': '''Set default display rotation, reapplied on every reboot''',
'tags': [],
'desc': '''If this policy is set, each display is rotated to the
specified orientation on every reboot, and the first time it is connected
after the policy value has changed. Users may change the display
rotation via the settings page after logging in, but their
setting will be overridden by the policy value at the next reboot.
This policy applies to both the primary and all secondary displays.
If the policy is not set, the default value is 0 degrees and the user is
free to change it. In this case, the default value is not reapplied at
restart.''',
},
{
'name': 'ArcEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:50-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 317,
'default_for_enterprise_users': False,
'caption': '''Enable ARC''',
'tags': [],
'desc':
'''When this policy is set to true, ARC will be enabled for the user
(subject to additional policy settings checks - ARC will still be
unavailable if either ephemeral mode or multiple sign-in is enabled
in the current user session).
If this setting is disabled or not configured then enterprise users are
unable to use ARC.''',
},
{
'name': 'ArcPolicy',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:50-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '{"applications":[{"packageName":"com.google.android.gm","installType":"FORCE_INSTALLED"},{"packageName":"com.google.android.apps.docs","installType":"PRELOAD"}]}',
'id': 318,
'caption': '''Configure ARC''',
'tags': [],
'desc':
'''Specifies a set of policies that will be handed over to the ARC runtime. The value must be valid JSON.
This policy can be used to configure which Android apps are automatically installed on the device:
{
"type": "object",
"properties": {
"applications": {
"type": "array",
"items": {
"type": "object",
"properties": {
"packageName": {
"description": "Android app identifier, e.g. \"com.google.android.gm\" for Gmail",
"type": "string"
},
"installType": {
"description": "Specifies how an app is installed. OPTIONAL: The app is not installed automatically, but the user can install it. This is the default if this policy is not specified. PRELOAD: The app is installed automatically, but the user can uninstall it. FORCE_INSTALLED: The app is installed automatically and the user cannot uninstall it. BLOCKED: The app is blocked and cannot be installed. If the app was installed under a previous policy it will be uninstalled.",
"type": "string",
"enum": [
"OPTIONAL",
"PRELOAD",
"FORCE_INSTALLED",
"BLOCKED"
]
},
"defaultPermissionPolicy": {
"description": "Policy for granting permission requests to apps. PERMISSION_POLICY_UNSPECIFIED: Policy not specified. If no policy is specified for a permission at any level, then the `PROMPT` behavior is used by default. PROMPT: Prompt the user to grant a permission. GRANT: Automatically grant a permission. DENY: Automatically deny a permission.",
"type": "string",
"enum": [
"PERMISSION_POLICY_UNSPECIFIED",
"PROMPT",
"GRANT",
"DENY"
]
},
"managedConfiguration": {
"description": "App-specific JSON configuration object with a set of key-value pairs, e.g. '\"managedConfiguration\": { \"key1\": value1, \"key2\": value2 }'. The keys are defined in the app manifest.",
"type": "object"
}
}
}
}
}
}
To pin apps to the launcher, see PinnedLauncherApps.'''
},
{
'name': 'AllowKioskAppControlChromeVersion',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:51-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 319,
'caption': '''Allow the auto launched with zero delay kiosk app to control <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version''',
'tags': ['system-security'],
'desc': '''Whether to allow the auto launched with zero delay kiosk app to control <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version.
This policy controls whether to allow the auto launched with zero delay kiosk app to control <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version by declaring a required_platform_version in its manifest and use it as the auto update target version prefix.
If the policy is set to true, the value of required_platform_version manifest key of the auto launched with zero delay kiosk app is used as auto update target version prefix.
If the policy is not configured or set to false, the required_platform_version manifest key is ignored and auto update proceeds as normal.
Warning: It is not recommended to delegate control of the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version to a kiosk app as it may prevent the device from receiving software updates and critical security fixes. Delegating control of the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version might leave users at risk.''',
'arc_support': 'If the kiosk app is an Android app, it will have no control over the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version, even if this policy is set to <ph name="TRUE">True</ph>.',
},
{
'name': 'LoginAuthenticationBehavior',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'GAIA',
'value': 0,
'caption': '''Authentication via the default GAIA flow''',
},
{
'name': 'SAML_INTERSTITIAL',
'value': 1,
'caption': '''Redirect to SAML IdP after user confirmation''',
},
],
'supported_on': ['chrome_os:51-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 321,
'caption': '''Configure the login authentication behavior''',
'tags': [],
'desc': '''When this policy is set, the login authentication flow will be in one of the following ways depending on the value of the setting:
If set to GAIA, login will be done via the normal GAIA authentication flow.
If set to SAML_INTERSTITIAL, login will show an interstitial screen offering the user to go forward with authentication via the SAML IdP of the device's enrollment domain, or go back to the normal GAIA login flow.'''
},
{
'name': 'UsbDetachableWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'id': 'UsbDeviceId',
'properties': {
'vendor_id': { 'type': 'integer' },
'product_id': { 'type': 'integer' },
},
},
},
'supported_on': ['chrome_os:51-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': [
{
'vendor_id' : 1027,
'product_id' : 24577,
},
{
'vendor_id' : 16700,
'product_id' : 8453,
}
],
'id': 322,
'caption': '''Whitelist of USB detachable devices''',
'tags': ['system-security'],
'desc': '''Defines the list of USB devices that are allowed to be detached from their kernel driver in order to be used through the chrome.usb API directly inside a web application. Entries are pairs of USB Vendor Identifier and Product Identifier to identify a specific hardware.
If this policy is not configured, the list of a detachable USB devices is empty.''',
},
{
'name': 'DeviceAllowBluetooth',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:52-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': True,
'id': 323,
'caption': '''Allow bluetooth on device''',
'tags': [],
'desc': '''If this policy is set to false, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will disable Bluetooth and the user cannot enable it back.
If this policy is set to true or left unset, the user will be able to enable or disable Bluetooth as they wish.
If this policy is set, the user cannot change or override it.
After enabling Bluetooth, the user must log out and log back in for the changes to take effect (no need for this when disabling Bluetooth).''',
},
{
'name': 'SuppressUnsupportedOSWarning',
'caption': '''Suppress the unsupported OS warning''',
'desc': '''Suppresses the warning that appears when <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running on a computer or operating system that is no longer supported.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:49-','chrome_os:49-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'tags': ['system-security'],
'id': 324,
},
{
'name': 'DeviceQuirksDownloadEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:51-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 325,
'caption': '''Enable queries to Quirks Server for hardware profiles''',
'tags': [],
'desc':
'''The Quirks Server provides hardware-specific configuration files, like
ICC display profiles to adjust monitor calibration.
When this policy is set to false, the device will not attempt to
contact the Quirks Server to download configuration files.
If this policy is true or not configured then <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will automatically contact the Quirks Server and download configuration files, if available, and store them on the device. Such files might, for example, be used to improve display quality of attached monitors.''',
},
{
'name': 'SystemTimezoneAutomaticDetection',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3, 4 ],
},
'items': [
{
'name': 'TimezoneAutomaticDetectionUsersDecide',
'value': 0,
'caption': '''Let users decide''',
},
{
'name': 'TimezoneAutomaticDetectionDisabled',
'value': 1,
'caption': '''Never auto-detect timezone''',
},
{
'name': 'TimezoneAutomaticDetectionIPOnly',
'value': 2,
'caption': '''Always use coarse timezone detection''',
},
{
'name': 'TimezoneAutomaticDetectionSendWiFiAccessPoints',
'value': 3,
'caption': '''Always send WiFi access-points to server while resolving timezone''',
},
{
'name': 'TimezoneAutomaticDetectionSendAllLocationInfo',
'value': 4,
'caption': '''Always send any available location signals to the server while resolving timezone''',
},
],
'supported_on': ['chrome_os:53-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 326,
'caption': '''Configure the automatic timezone detection method''',
'tags': ['google-sharing'],
'desc': '''When this policy is set, automatic timezone detection flow will be in one of the following ways depending on the value of the setting:
If set to TimezoneAutomaticDetectionUsersDecide, users would be able to control automatic timezone detection using normal controls in chrome://settings.
If set to TimezoneAutomaticDetectionDisabled, automatic timezone controls in chrome://settings will be disabled. Automatic timezone detection will be always off.
If set to TimezoneAutomaticDetectionIPOnly, timezone controls in chrome://settings will be disabled. Automatic timezone detection will be always on. Timezone detection will use IP-only method to resolve location.
If set to TimezoneAutomaticDetectionSendWiFiAccessPoints, timezone controls in chrome://settings will be disabled. Automatic timezone detection will be always on. The list of visible WiFi access-points will be always sent to Geolocation API server for fine-grained timezone detection.
If set to TimezoneAutomaticDetectionSendAllLocationInfo, timezone controls in chrome://settings will be disabled. Automatic timezone detection will be always on. Location information (such as WiFi access-points, reachable Cell Towers, GPS) will be sent to a server for fine-grained timezone detection.
If this policy is not set, it will behave as if TimezoneAutomaticDetectionUsersDecide is set.
If SystemTimezone policy is set, it overrides this policy. In this case automatic timezone detection is completely disabled.''',
},
{
'name': 'TaskManagerEndProcessEnabled',
'caption': '''Enable ending processes in Task Manager''',
'desc': '''If set to false, the 'End process' button is disabled in the Task Manager.
If set to true or not configured, the user can end processes in the Task Manager.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:52-','chrome_os:52-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'tags': [],
'id': 327,
},
{
'name': 'NetworkThrottlingEnabled',
'device_only': True,
'caption': '''Enable throttling network bandwidth''',
'desc': '''Allows enabling or disabling network throttling.
This applies to all users, and to all interfaces on the device. Once set,
the throttling persists until the policy is changed to disable it.
If set to false, there is no throttling.
If set to true, the system is throttled to achieve the provided upload and download rates (in kbits/s).''',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'enabled': {
'description': 'A boolean flag indicating if throttling is enabled.',
'type': 'boolean'
},
'upload_rate_kbits': {
'description': 'Desired upload rate in kbits/s.',
'type': 'integer'
},
'download_rate_kbits': {
'description': 'Desired download rate in kbits/s.',
'type': 'integer'
}
},
'required': ['enabled', 'upload_rate_kbits', 'download_rate_kbits']
},
'supported_on': ['chrome_os:56-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': [{'enabled': 'true', 'upload_rate_kbits': '5600', 'download_rate_kbits': '5600'}],
'tags': [],
'id': 351,
},
{
'name': 'LoginVideoCaptureAllowedUrls',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:52-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ "https://example.com" ],
'id': 328,
'caption': '''URLs that will be granted access to video capture devices on SAML login pages''',
'tags': ['website-sharing'],
'desc': '''Patterns in this list will be matched against the security
origin of the requesting URL. If a match is found, access to video
capture devices will be granted on SAML login pages. If no match is
found, access will be automatically denied. Wildcard patterns are not
allowed.'''
},
{
'name': 'DeviceLoginScreenAppInstallList',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:60-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': ['gbchcmhmhahfdphkhkmpfmihenigjmpp;https://clients2.google.com/service/update2/crx'],
'id': 336,
'caption': '''Configure the list of installed apps on the login screen''',
'tags': ['full-admin-access'],
'desc': '''
Specifies a list of apps that are installed silently on the login screen,
without user interaction, and which cannot be uninstalled.
All permissions requested by the apps are granted
implicitly, without user interaction, including any additional
permissions requested by future versions of the app.
Note that, for security and privacy reasons, extensions are not allowed to be installed using this policy. Moreover, the devices on the Stable channel will only install the apps that belong to the whitelist bundled into <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Any items that don't conform to these conditions will be ignored.
If an app that previously had been force-installed is removed from this list, it is automatically uninstalled by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Each list item of the policy is a string that contains an extension ID and an "update" URL separated by a semicolon (<ph name="SEMICOLON">;</ph>). The extension ID is the 32-letter string found e.g. on <ph name="CHROME_EXTENSIONS_LINK">chrome://extensions</ph> when in developer mode. The "update" URL should point to an Update Manifest XML document as described at <ph name="LINK_TO_EXTENSION_DOC1">https://developer.chrome.com/extensions/autoupdate</ph>. Note that the "update" URL set in this policy is only used for the initial installation; subsequent updates of the extension employ the update URL indicated in the extension's manifest.
For example, <ph name="EXTENSION_POLICY_EXAMPLE">gbchcmhmhahfdphkhkmpfmihenigjmpp;https://clients2.google.com/service/update2/crx</ph> installs the <ph name="EXTENSION_POLICY_EXAMPLE_EXTENSION_NAME">Chrome Remote Desktop</ph> app from the standard Chrome Web Store "update" URL. For more information about hosting extensions, see: <ph name="LINK_TO_EXTENSION_DOC2">https://developer.chrome.com/extensions/hosting</ph>.''',
},
{
'name': 'AllowScreenLock',
'caption': '''Permit locking the screen''',
'desc': '''If this policy is set to false, users will not be able to lock the screen (only signing out from the user session will be possible). If this setting is set to true or not set, users who authenticated with a password can lock the screen.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:52-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'tags': [],
'id': 329,
},
{
'name': 'ArcCertificatesSyncMode',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'SyncDisabled',
'value': 0,
'caption': '''Disable usage of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> certificates to ARC-apps''',
},
{
'name': 'CopyCaCerts',
'value': 1,
'caption': '''Enable <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> CA certificates to ARC-apps'''
},
],
'supported_on': ['chrome_os:52-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 0,
'id': 330,
'caption': '''Set certificate availability for ARC-apps''',
'tags': ['system-security'],
'desc': '''If set to SyncDisabled or not configured, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> certificates are not available for ARC-apps.
If set to CopyCaCerts, all ONC-installed CA certificates with <ph name="WEB_TRUSTED_BIT">Web TrustBit</ph> are available for ARC-apps.''',
},
{
'name': 'AllowedDomainsForApps',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:51-', 'chrome_os:51-', 'android:51-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'managedchrome.com,example.com',
'id': 331,
'caption': '''Define domains allowed to access G Suite''',
'tags': ['filtering'],
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s restricted log in feature in G Suite and prevents users from changing this setting.
If you define this setting, the user will only be able to access Google
Apps using accounts from the specified domains (note that this does not
work for gmail.com/googlemail.com).
This setting will NOT prevent the user from loging in on a managed device
that requires Google authentication. The user will still be allowed to
sign in to accounts from other domains, but they will receive an error
when trying to use G Suite with those accounts.
If you leave this setting empty/not-configured, the user will be able to
access G Suite with any account.
This policy causes the X-GoogApps-Allowed-Domains header to be appended to
all HTTP and HTTPS requests to all google.com domains, as described in
https://support.google.com/a/answer/1668854.
Users cannot change or override this setting.''',
},
{
'name': 'PacHttpsUrlStrippingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [ 'chrome.*:52-', 'chrome_os:52-' ],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 332,
'default_for_enterprise_users': False,
'caption': '''Enable PAC URL stripping (for https://)''',
'tags': ['system-security'],
'desc': '''Strips privacy and security sensitive parts of https:// URLs before passing them on to PAC scripts (Proxy Auto Config) used by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> during proxy resolution.
When True, the security feature is enabled, and https:// URLs are
stripped before submitting them to a PAC script. In this manner the PAC
script is not able to view data that is ordinarily protected by an
encrypted channel (such as the URL's path and query).
When False, the security feature is disabled, and PAC scripts are
implicitly granted the ability to view all components of an https://
URL. This applies to all PAC scripts regardless of origin (including
those fetched over an insecure transport, or discovered insecurely
through WPAD).
This defaults to True (security feature enabled), except for Chrome OS
enterprise users for which this currently defaults to False.
It is recommended that this be set to True. The only reason to set it to
False is if it causes a compatibility problem with existing PAC scripts.
The desire is to remove this override in the future.''',
},
{
'name': 'EnableMediaRouter',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:52-', 'chrome_os:52-', 'android:52-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': True,
'id': 333,
'caption': '''Enable <ph name="PRODUCT_NAME">Google Cast</ph>''',
'tags': [],
'desc': '''If this policy is set to true or is not set, <ph name="PRODUCT_NAME">Google Cast</ph> will be enabled, and users will be able to launch it from the app menu, page context menus, media controls on Cast-enabled websites, and (if shown) the Cast toolbar icon.
If this policy set to false, <ph name="PRODUCT_NAME">Google Cast</ph> will be disabled.'''
},
{
'name': 'ShowCastIconInToolbar',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:58-', 'chrome_os:58-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 362,
'caption': '''Show the <ph name="PRODUCT_NAME">Google Cast</ph> toolbar icon''',
'tags': [],
'desc': '''If this policy is set to true, the Cast toolbar icon will always be shown on the toolbar or the overflow menu, and users will not be able to remove it.
If this policy is set to false or is not set, users will be able to pin or remove the icon via its contextual menu.
If the policy "EnableMediaRouter" is set to false, then this policy's value would have no effect, and the toolbar icon would not be shown.'''
},
{
'name': 'MediaRouterCastAllowAllIPs',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:67-', 'chrome_os:67-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 437,
'caption': '''Allow <ph name="PRODUCT_NAME">Google Cast</ph> to connect to Cast devices on all IP addresses.''',
'tags': [],
'desc': '''If this policy is set to true, <ph name="PRODUCT_NAME">Google Cast</ph> will connect to Cast devices on all IP addresses, not just RFC1918/RFC4913 private addresses.
If this policy is set to false, <ph name="PRODUCT_NAME">Google Cast</ph> will connect to Cast devices on RFC1918/RFC4913 private addresses only.
If this policy is not set, <ph name="PRODUCT_NAME">Google Cast</ph> will connect to Cast devices on RFC1918/RFC4913 private addresses only, unless the CastAllowAllIPs feature is enabled.
If the policy "EnableMediaRouter" is set to false, then this policy's value would have no effect.'''
},
{
'name': 'ArcBackupRestoreEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:53-67'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 337,
'caption': '''Enable Android Backup Service''',
'tags': ['google-sharing'],
'desc':
'''This policy was removed in <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> 68 and replaced by <ph name="ARC_BR_POLICY_NAME">ArcBackupRestoreServiceEnabled</ph>.''',
},
{
'name': 'ArcLocationServiceEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:57-67'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 363,
'caption': '''Enable Android Google Location Service''',
'tags': ['google-sharing'],
'desc':
'''This policy was removed in <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> 68 and replaced by <ph name="ARC_GLS_POLICY_NAME">ArcGoogleLocationServicesEnabled</ph>.''',
},
{
'name': 'NTPContentSuggestionsEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:54-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 338,
'default_for_enterprise_users': False,
'caption': '''Show content suggestions on the New Tab page''',
'tags': [],
'desc':
'''If this is set to true or not set, the New Tab page may show content suggestions based on the user's browsing history, interests, or location.
If this is set to false, automatically-generated content suggestions are not shown on the New Tab page.''',
},
{
'name': 'WebRtcUdpPortRange',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:54-', 'chrome_os:54-', 'android:54-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': '10000-11999',
'id': 339,
'caption': '''Restrict the range of local UDP ports used by WebRTC''',
'tags': [],
'desc': '''If the policy is set, the UDP port range used by WebRTC is restricted to the specified port interval (endpoints included).
If the policy is not set, or if it is set to the empty string or an invalid port range, WebRTC is allowed to use any available local UDP port.''',
},
{
'name': 'WebRestrictionsAuthority',
'id': 341,
'type': 'string',
'schema' : { 'type': 'string' },
'tags': ['filtering', 'admin-sharing'],
'supported_on': ['webview_android:54-'],
'future': True,
'caption': '''Set an external source of URL restrictions''',
'desc' : '''When this policy is set to a non-empty string the WebView will read URL restrictions from the content provider with the given authority name.''',
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'com.android.chrome.SupervisedUserProvider'
},
{
'name': 'ComponentUpdatesEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:54-', 'chrome_os:54-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 342,
'caption': '''Enable component updates in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''Enables component updates for all components in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> when not set or set to True.
If set to False, updates to components are disabled. However, some components are exempt from this policy: updates to any component that does not contain executable code, or does not significantly alter the behavior of the browser, or is critical for its security will not be disabled.
Examples of such components include the certificate revocation lists and Safe Browsing data.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
},
{
'name': 'NativePrinters',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'validation_schema': {
'type': 'array',
'items': {
'type': 'object',
'id': 'PrinterType',
'properties': {
'display_name': { 'type': 'string' },
'description': { 'type': 'string' },
'manufacturer': { 'type': 'string' },
'model': { 'type': 'string' },
'uri': { 'type': 'string' },
'uuid': { 'type': 'string' },
'ppd_resource': {
'type': 'object',
'id': 'PpdResource',
'properties': {
'effective_model': { 'type': 'string' }
}
}
}
}
},
'supported_on': [ 'chrome_os:57-' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
# example_value is split onto multiple lines here for readability, but the
# 'type': 'list' above means that each element has to fit inside a single-
# line textbox in the GPO UI - so the example string is a single line.
'example_value': [
'{ '
'"display_name": "Color Laser", '
'"description": "The printer next to the water cooler.", '
'"manufacturer": "Printer Manufacturer", '
'"model": "Color Laser 2004", '
'"uri": "ipps://print-server.intranet.example.com:443/ipp/cl2k4", '
'"uuid": "1c395fdb-5d93-4904-b246-b2c046e79d12", '
'"ppd_resource": { "effective_model": "Printer Manufacturer ColorLaser2k4" } '
'}'
],
'id': 350,
'caption': '''Native Printing''',
'tags': [],
'desc': '''Configures a list of printers.
This policy allows administrators to provide printer configurations for
their users.
<ph name="PRINTER_DISPLAY_NAME">display_name</ph> and <ph name="PRINTER_DESCRIPTION">description</ph> are free-form strings that can be customized for ease of printer selection. <ph name="PRINTER_MANUFACTURER">manufacturer</ph> and <ph name="PRINTER_MODEL">model</ph> serve to ease printer identification by end users. They represent the manufacturer and model of the printer. <ph name="PRINTER_URI">uri</ph> should be an address reachable from a client computer including the <ph name="URI_SCHEME">scheme</ph>, <ph name="URI_PORT">port</ph>, and <ph name="URI_QUEUE">queue</ph>. <ph name="PRINTER_UUID">uuid</ph> is optional. If provided, it is used to help deduplicate <ph name="ZEROCONF_DISCOVERY">zeroconf</ph> printers.
<ph name="PRINTER_EFFECTIVE_MODEL">effective_model</ph> must match one of the strings which represent a <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> supported printer. The string will be used to identify and install the appropriate PPD for the printer. More information can be found at https://support.google.com/chrome?p=noncloudprint.
Printer setup is completed upon the first use of a printer. PPDs are not downloaded until the printer is used. After that time, frequently used PPDs are cached.
This policy has no effect on whether users can configure printers on individual devices. It is intended to be supplementary to the configuration of printers by individual users.
For Active Directory managed devices this policy supports expansion of <ph name="MACHINE_NAME_VARIABLE">${machine_name[,pos[,count]]}</ph> to the Active Directory machine name or a substring of it. For example, if the machine name is <ph name="MACHINE_NAME_EXAMPLE">CHROMEBOOK</ph>, then <ph name="MACHINE_NAME_VARIABLE_EXAMPLE">${machine_name,6,4}</ph> would be replaced by the 4 characters starting after the 6th position, i.e. <ph name="MACHINE_NAME_PART_EXAMPLE">BOOK</ph>. Note that the position is zero-based.
''',
},
{
'name': 'NativePrintersBulkConfiguration',
'id': 382,
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { 'type': 'string' },
'hash': { 'type': 'string' }
},
},
'supported_on': ['chrome_os:65-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
"url": "https://example.com/printerpolicy",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeafdeadbeefdeadbeef"
},
'max_size': 5242880,
'caption': '''Enterprise printer configuration file''',
'tags': [],
'desc': '''Provides configurations for enterprise printers.
This policy allows you to provide printer configurations to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices. The format is the same as the NativePrinters dictionary, with an additional required "id" or "guid" field per printer for whitelisting or blacklisting.
The size of the file must not exceed 5MB and must be encoded in JSON. It is estimated that a file containing approximately 21,000 printers will encode as a 5MB file. The cryptographic hash is used to verify the integrity of the download.
The file is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
If this policy is set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will download the file for printer configurations and make printers available in accordance with <ph name="BULK_PRINTERS_ACCESS_MODE">NativePrintersBulkAccessMode</ph>, <ph name="BULK_PRINTERS_WHITELIST">NativePrintersBulkWhitelist</ph>, and <ph name="BULK_PRINTERS_BLACKLIST">NativePrintersBulkBlacklist</ph>.
If you set this policy, users cannot change or override it.
This policy has no effect on whether users can configure printers on individual devices. It is intended to be supplementary to the configuration of printers by individual users.
''',
},
{
'name': 'NativePrintersBulkAccessMode',
'id': 383,
'supported_on': ['chrome_os:65-'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'BlacklistRestriction',
'value': 0,
'caption': '''All printers are shown except those in the blacklist.''',
},
{
'name': 'WhitelistPrintersOnly',
'value': 1,
'caption': '''Only printers in the whitelist are shown to users''',
},
{
'name': 'AllowAll',
'value': 2,
'caption': '''Allow all printers from the configuration file.''',
},
],
'features' : {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'caption': '''Printer configuration access policy.''',
'tags': [],
'desc': '''Controls which printers from the <ph name="BULK_PRINTERS_POLICY">NativePrintersBulkConfiguration</ph> are available to users.
Designates which access policy is used for bulk printer configuration. If <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is selected, all printers are shown. If <ph name="PRINTERS_BLACKLIST">BlacklistRestriction</ph> is selected, <ph name="BULK_PRINTERS_BLACKLIST">NativePrintersBulkBlacklist</ph> is used to restrict access to the specified printers. If <ph name="PRINTERS_WHITELIST">WhitelistPrintersOnly</ph> is selected, <ph name="BULK_PRINTERS_WHITELIST">NativePrintersBulkWhitelist</ph> designates only those printers which are selectable.
If this policy is not set, <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is assumed.
''',
},
{
'name': 'NativePrintersBulkBlacklist',
'supported_on': ['chrome_os:65-'],
'id': 384,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Disabled enterprise printers''',
'tags': [],
'desc': '''Specifies the printers which a user cannot use.
This policy is only used if <ph name="PRINTERS_BLACKLIST">BlacklistRestriction</ph> is chosen for <ph name="BULK_PRINTERS_ACCESS_MODE">NativePrintersBulkAccessMode</ph>.
If this policy is used, all printers are provided to the user except for the ids listed in this policy. The ids must correspond to the "id" or "guid" fields in the file specified in <ph name="BULK_PRINTERS_POLICY">NativePrintersBulkConfiguration</ph>.
''',
},
{
'name': 'NativePrintersBulkWhitelist',
'supported_on': ['chrome_os:65-'],
'id': 385,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Enabled enterprise printers''',
'tags': [],
'desc': '''Specifies the printers which a user can use.
This policy is only used if <ph name="PRINTERS_WHITELIST">WhitelistPrintersOnly</ph> is chosen for <ph name="BULK_PRINTERS_ACCESS_MODE">NativePrintersBulkAccessMode</ph>.
If this policy is used, only the printers with ids matching the values in this policy are available to the user. The ids must correspond to the "id" or "guid" fields in the file specified in <ph name="BULK_PRINTERS_POLICY">NativePrintersBulkConfiguration</ph>.
''',
},
{
'name': 'DeviceNativePrinters',
'id': 386,
'device_only': True,
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { 'type': 'string' },
'hash': { 'type': 'string' }
},
},
'supported_on': ['chrome_os:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
"url": "https://example.com/printerpolicy",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeafdeadbeefdeadbeef"
},
'max_size': 5242880,
'caption': '''Enterprise printer configuration file for devices''',
'tags': [],
'desc': '''Provides configurations for enterprise printers bound to devices.
This policy allows you to provide printer configurations to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices. The format is the same as the NativePrinters dictionary, with an additional required "id" or "guid" field per printer for whitelisting or blacklisting.
The size of the file must not exceed 5MB and must be encoded in JSON. It is estimated that a file containing approximately 21,000 printers will encode as a 5MB file. The cryptographic hash is used to verify the integrity of the download.
The file is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
If this policy is set, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will download the file for printer configurations and make printers available in accordance with <ph name="DEVICE_PRINTERS_ACCESS_MODE">DeviceNativePrintersAccessMode</ph>, <ph name="DEVICE_PRINTERS_WHITELIST">DeviceNativePrintersWhitelist</ph>, and <ph name="DEVICE_PRINTERS_BLACKLIST">DeviceNativePrintersBlacklist</ph>.
This policy has no effect on whether users can configure printers on individual devices. It is intended to be supplementary to the configuration of printers by individual users.
This policy is additive to the <ph name="BULK_PRINTERS_POLICY">NativePrintersBulkConfiguration</ph>.
If this policy is unset, there will be no device printers and the other <ph name="DEVICE_PRINTERS_POLICY_PATTERN">DeviceNativePrinter*</ph> policies will be ignored.
''',
},
{
'name': 'DeviceNativePrintersAccessMode',
'id': 387,
'device_only': True,
'supported_on': ['chrome_os:66-'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'BlacklistRestriction',
'value': 0,
'caption': '''All printers are shown except those in the blacklist.''',
},
{
'name': 'WhitelistPrintersOnly',
'value': 1,
'caption': '''Only printers in the whitelist are shown to users''',
},
{
'name': 'AllowAll',
'value': 2,
'caption': '''Allow all printers from the configuration file.''',
},
],
'features' : {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'caption': '''Device printers configuration access policy.''',
'tags': [],
'desc': '''Controls which printers from the <ph name="DEVICE_PRINTERS_POLICY">DeviceNativePrinters</ph> are available to users.
Designates which access policy is used for bulk printer configuration. If <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is selected, all printers are shown. If <ph name="PRINTERS_BLACKLIST">BlacklistRestriction</ph> is selected, <ph name="DEVICE_PRINTERS_BLACKLIST">DeviceNativePrintersBlacklist</ph> is used to restrict access to the specified printers. If <ph name="PRINTERS_WHITELIST">WhitelistPrintersOnly</ph> is selected, <ph name="DEVICE_PRINTERS_WHITELIST">DeviceNativePrintersWhitelist</ph> designates only those printers which are selectable.
If this policy is not set, <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is assumed.
''',
},
{
'name': 'DeviceNativePrintersBlacklist',
'supported_on': ['chrome_os:66-'],
'device_only': True,
'id': 388,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'features': {
'dynamic_refresh': True,
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Disabled enterprise device printers''',
'tags': [],
'desc': '''Specifies the printers which a user cannot use.
This policy is only used if <ph name="PRINTERS_BLACKLIST">BlacklistRestriction</ph> is chosen for <ph name="DEVICE_PRINTERS_ACCESS_MODE">DeviceNativePrintersAccessMode</ph>.
If this policy is used, all printers are provided to the user except for the ids listed in this policy. The ids must correspond to the "id" or "guid" fields in the file specified in <ph name="DEVICE_PRINTERS_POLICY">DeviceNativePrinters</ph>.
''',
},
{
'name': 'DeviceNativePrintersWhitelist',
'supported_on': ['chrome_os:66-'],
'device_only': True,
'id': 389,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Enabled enterprise device printers''',
'tags': [],
'desc': '''Specifies the printers which a user can use.
This policy is only used if <ph name="PRINTERS_WHITELIST">WhitelistPrintersOnly</ph> is chosen for <ph name="DEVICE_PRINTERS_ACCESS_MODE">DeviceNativePrintersAccessMode</ph>
If this policy is used, only the printers with ids matching the values in this policy are available to the user. The ids must correspond to the "id" or "guid" fields in the file specified in <ph name="DEVICE_PRINTERS_POLICY">DeviceNativePrinters</ph>.
''',
},
{
'name': 'TPMFirmwareUpdateSettings',
'supported_on': ['chrome_os:63-'],
'device_only': True,
'id': 390,
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'allow-user-initiated-powerwash': {
'type': 'boolean',
},
'allow-user-initiated-preserve-device-state': {
'type': 'boolean',
},
},
},
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'allow-user-initiated-powerwash': True,
'allow-user-initiated-preserve-device-state': True,
},
'caption': '''Configure <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update behavior''',
'tags': [],
'desc': '''Configures availability and behavior of <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update functionality.
Individual settings can be specified in JSON properties:
<ph name="TPM_FIRMWARE_UPDATE_SETTINGS_ALLOW_USER_INITIATED_POWERWASH">allow-user-initiated-powerwash</ph>: If set to <ph name="TPM_FIRMWARE_UPDATE_SETTINGS_ALLOW_USER_INITIATED_POWERWASH_TRUE">true</ph>, users will be able to trigger the powerwash flow to install a <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update.
<ph name="TPM_FIRMWARE_UPDATE_SETTINGS_ALLOW_USER_INITIATED_PRESERVE_DEVICE_STATE">allow-user-initiated-preserve-device-state</ph>: If set to <ph name="TPM_FIRMWARE_UPDATE_SETTINGS_ALLOW_USER_INITIATED_PRESERVE_DEVICE_STATE_TRUE">true</ph>, users will be able to invoke the <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update flow that preserves device-wide state (including enterprise enrollment), but loses user data. This update flow is available starting from version 68.
If the policy is not set, <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update functionality will not be available.''',
},
{
'name': 'MinimumRequiredChromeVersion',
'supported_on': ['chrome_os:64-'],
'device_only': True,
'type': 'string',
'schema': { 'type': 'string' },
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '61.0.3163.120',
'id': 394,
'caption': '''Configure minimum allowed Chrome version for the device.''',
'tags': [],
'desc': '''Configures the requirement of the minimum allowed version of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Versions below given are treated as obsolete and device would not allow user sign in before OS is updated.
If current version becomes obsolete during user session, user will be forcefully signed out.
If this policy is not set, no restrictions are applied, and user can sign regardless of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version.
Here "Version" can be either an exact version like '61.0.3163.120' or a version prefix, like '61.0' ''',
},
{
'name': 'QuickUnlockModeWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [
'all',
'PIN'
],
},
'id': 'QuickUnlockModeWhitelist',
},
'supported_on': ['chrome_os:56-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['PIN'],
'default_for_enterprise_users': [],
'id': 352,
'caption': '''Configure allowed quick unlock modes''',
'tags': [],
'desc': '''A whitelist controlling which quick unlock modes the user can configure and use to unlock the lock screen.
This value is a list of strings; valid list entries are: "all", "PIN". Adding "all" to the list means that every quick unlock mode is available to the user, including ones implemented in the future. Otherwise, only the quick unlock modes present in the list will be available.
For example, to allow every quick unlock mode, use ["all"]. To allow only PIN unlock, use ["PIN"]. To disable all quick unlock modes, use [].
By default, no quick unlock modes are available for managed devices.''',
},
{
'name': 'QuickUnlockTimeout',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'SixHours',
'value': 0,
'caption': '''Password entry is required every six hours''',
},
{
'name': 'TweleveHours',
'value': 1,
'caption': '''Password entry is required every twelve hours''',
},
{
'name': 'Day',
'value': 2,
'caption': '''Password entry is required every day (24 hours)''',
},
{
'name': 'Week',
'value': 3,
'caption': '''Password entry is required every week (168 hours)''',
},
],
'supported_on': ['chrome_os:57-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 353,
'caption': '''Set how often user has to enter password to use quick unlock''',
'tags': [],
'desc': '''This setting controls how often the lock screen will request the password to be entered in order to continue using quick unlock. Each time the lock screen is entered, if the last password entry was more than this setting, the quick unlock will not be available on entering the lock screen. Should the user stay on the lock screen past this period of time, a password will be requested next time the user enters the wrong code, or re-enters the lock screen, whichever comes first.
If this setting is configured, users using quick unlock will be requested to enter their passwords on the lock screen depending on this setting.
If this setting is not configured, users using quick unlock will be requested to enter their password on the lock screen every day.''',
},
{
'name': 'PinUnlockMinimumLength',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:57-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 6,
'id': 354,
'caption': '''Set the minimum length of the lock screen PIN''',
'tags': [],
'desc': '''If the policy is set, the configured minimal PIN length is
enforced. (The absolute minimum PIN length is 1; values less than 1
are treated as 1.)
If the policy is not set, a minimal PIN length of 6 digits is
enforced. This is the recommended minimum.''',
},
{
'name': 'PinUnlockMaximumLength',
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:57-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 0,
'id': 355,
'caption': '''Set the maximum length of the lock screen PIN''',
'tags': [],
'desc': '''If the policy is set, the configured maximal PIN length is enforced. A value of 0 or less means no maximum length; in that case the user may set a PIN as long as they want. If this setting is less than <ph name="PIN_UNLOCK_MINIMUM_LENGTH_POLICY_NAME">PinUnlockMinimumLength</ph> but greater than 0, the maximum length is the same as the minimum length.
If the policy is not set, no maximum length is enforced.''',
},
{
'name': 'PinUnlockWeakPinsAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:57-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 356,
'caption': '''Enable users to set weak PINs for the lock screen PIN''',
'tags': [],
'desc': '''If false, users will be unable to set PINs which are weak and easy to guess.
Some example weak PINs: PINs containing only one digit (1111), PINs whose digits are increasing by 1 (1234), PINs whose digits are decreasing by 1 (4321), and PINs which are commonly used.
By default, users will get a warning, not error, if the PIN is considered weak.''',
},
{
'name': 'DeviceWallpaperImage',
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { "type": "string" },
'hash': { "type": "string" }
},
},
'supported_on': ['chrome_os:61-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': { "url": "https://example.com/device_wallpaper.jpg", "hash": "examplewallpaperexamplewallpaperexamplewallpaperexamplewallpaper" },
'max_size': 16777216,
'id': 357,
'caption': '''Device wallpaper image''',
'tags': [],
'desc': '''Configure device-level wallpaper image that is shown on the login screen if no user has yet signed in to the device. The policy is set by specifying the URL from which the Chrome OS device can download the wallpaper image and a cryptographic hash used to verify the integrity of the download. The image must be in JPEG format, its file size must not exceed 16MB. The URL must be accessible without any authentication. The wallpaper image is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
The policy should be speicified as a string that expresses the URL and hash in JSON format, e.g.,
{
"url": "https://example.com/device_wallpaper.jpg",
"hash": "examplewallpaperhash"
}
If the device wallpaper policy is set, the Chrome OS device will download and use the wallpaper image on the login screen if no user has yet signed in to the device. Once the user logs in, the user's wallpaper policy kicks in.
If the device wallpaper policy is left not set, it's the user's wallpaper policy to decide what to show if the user's wallpaper policy is set.''',
},
{
'name': 'DeviceLoginScreenLocales',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:58-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': [ "en-US" ],
'max_size': 16777216,
'id': 364,
'caption': '''Device sign-in screen locale''',
'tags': [],
'desc': '''Configures the locale which is enforced on the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> sign-in screen.
If this policy is set, the sign-in screen will always be displayed in the locale which is given by the first value of this policy (the policy is defined as a list for forward compatibility). If this policy is not set or is set to an empty list, the sign-in screen will be displayed in the locale of the last user session. If this policy is set to a value which is not a valid locale, the sign-in screen will be displayed in a fallback locale (currently, en-US).'''
},
{
'name': 'DeviceLoginScreenInputMethods',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:58-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ "xkb:us::en", "xkb:ch::ger" ],
'max_size': 16777216,
'id': 365,
'caption': '''Device sign-in screen keyboard layouts''',
'tags': [],
'desc': '''Configures which keyboard layouts are allowed on the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> sign-in screen.
If this policy is set to a list of input method identifiers, the given input methods will be available on the sign-in screen. The first given input method will be preselected. While a user pod is focused on the sign-in screen, the user's last used input method will be available in addition to the input methods given by this policy. If this policy is not set, the input methods on the sign-in screen will be derived from the locale in which the sign-in screen is displayed. Values which are not valid input method identifiers will be ignored.''',
},
{
'name': 'InstantTetheringAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:60-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 367,
'caption': '''Allow Instant Tethering to be used.''',
'tags': ['local-data-access', 'google-sharing'],
'desc': '''If this setting is enabled, users will be allowed to use Instant Tethering, which allows their Google phone to share its mobile data with their device.
If this setting is disabled, users will not be allowed to use Instant Tethering.
If this policy is left not set, the default is not allowed for enterprise-managed users and allowed for non-managed users.''',
},
{
'name': 'BrowserNetworkTimeQueriesEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:60-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 370,
'caption': '''Allow queries to a Google time service''',
'tags': [],
'desc': '''Setting this policy to false stops <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from occasionally sending queries to a Google server to retrieve an accurate timestamp. These queries will be enabled if this policy is set to True or is not set.''',
},
{
'name': 'DeviceSecondFactorAuthentication',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'Disabled',
'value': 1,
'caption': '''Second factor disabled''',
},
{
'name': 'U2F',
'value': 2,
'caption': '''U2F (Universal Second Factor)''',
},
{
'name': 'U2F_EXTENDED',
'value': 3,
'caption': '''U2F plus extensions for individual attestation''',
},
],
'supported_on': ['chrome_os:61-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': 2,
'id': 372,
'caption': '''Integrated second factor authentication mode''',
'tags': ['system-security'],
'desc': '''Specifies how the on-board secure element hardware can be used to provide a second-factor authentication if it is compatible with this feature. The machine power button is used to detect the user physical presence.
If 'Disabled' is selected, no second factor is provided.
If 'U2F' is selected, the integrated second factor will behave according the FIDO U2F specification.
If 'U2F_EXTENDED' is selected, the integrated second factor will provide the U2F functions plus some extensions for individual attestation.''',
},
{
'name': 'PrintPreviewUseSystemDefaultPrinter',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:61-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 373,
'caption': '''Use System Default Printer as Default''',
'tags': [],
'desc': '''Causes <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to use the system default printer as the default choice in Print Preview instead of the most recently used printer.
If you disable this setting or do not set a value, Print Preview will use the most recently used printer as the default destination choice.
If you enable this setting, Print Preview will use the OS system default printer as the default destination choice.''',
},
{
'name': 'DeviceEcryptfsMigrationStrategy',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Unset',
'value': 0,
'caption': '''Policy unset, disallow data migration and ARC''',
},
{
'name': 'DisallowArc',
'value': 1,
'caption': '''Disallow data migration and ARC''',
},
{
'name': 'AllowMigration',
'value': 2,
'caption': '''Allow data migration''',
},
],
'supported_on': ['chrome_os:60-60'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'deprecated': True,
'example_value': 1,
'id': 374,
'caption': '''Migration strategy for ecryptfs''',
'tags': [],
'desc': '''This policy is deprecated in M61, please use EcryptfsMigrationStrategy instead.
Specifies how a device should behave that shipped with ecryptfs and needs to transition to ext4 encryption.
If you set this policy to 'DisallowArc', Android apps will be disabled for all users on the device (including those that have ext4 encryption already) and no migration from ecryptfs to ext4 encryption will be offered to any users.
If you set this policy to 'AllowMigration', users with ecryptfs home directories will be offered to migrate these to ext4 encryption as necessary (currently when Android N becomes available on the device).
This policy does not apply to kiosk apps - these are migrated automatically. If this policy is left not set, the device will behave as if 'DisallowArc' was chosen.''',
},
{
'name': 'EcryptfsMigrationStrategy',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3, 4, 5],
},
'items': [
{
'name': 'DisallowArc',
'value': 0,
'caption': '''Disallow data migration and ARC.''',
},
{
'name': 'Migrate',
'value': 1,
'caption': '''Migrate automatically, don’t ask for user consent.''',
},
{
'name': 'Wipe',
'value': 2,
'caption': '''Wipe the user’s ecryptfs home directory and start with a fresh ext4-encrypted home directory.''',
},
{
'name': 'AskUser',
'value': 3,
'caption': '''Ask the user if they would like to migrate or skip migration and disallow ARC.''',
},
{
'name': 'MinimalMigrate',
'value': 4,
'caption': '''Similar to Wipe (value 2), but tries to preserve login tokens so the user does not have to sign in again.''',
},
{
'name': 'AskForEcryptfsArcUsers',
'value': 5,
'caption': '''If the client device model already supported ARC before migration to ext4 was necessary to run ARC and if the ArcEnabled policy is set to true, this option will behave as AskUser (value 3). In all other cases (if the device model did not support ARC before, or if ArcEnabled policy is set to false), this value is equivalent to DisallowArc (value 0).''',
}
],
'supported_on': ['chrome_os:61-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 3,
'id': 376,
'caption': '''Migration strategy for ecryptfs''',
'tags': [],
'desc': '''Specifies the action that should be taken when the user's home directory was created with ecryptfs encryption and needs to transition to ext4 encryption.
If you set this policy to 'DisallowArc', Android apps will be disabled for the user and no migration from ecryptfs to ext4 encryption will be performed. Android apps will not be prevented from running when the home directory is already ext4-encrypted.
If you set this policy to 'Migrate', ecryptfs-encrypted home directories will be automatically migrated to ext4 encryption on sign-in without asking for user consent.
If you set this policy to 'Wipe', ecryptfs-encrypted home directories will be deleted on sign-in and new ext4-encrypted home directories will be created instead. Warning: This removes the user's local data.
If you set this policy to 'AskUser', users with ecryptfs-encrypted home directories will be offered to migrate.
This policy does not apply to kiosk users. If this policy is left not set, the device will behave as if 'DisallowArc' was chosen.''',
},
{
'name': 'NoteTakingAppsLockScreenWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome_os:61-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': ['abcdefghabcdefghabcdefghabcdefgh'],
'id': 377,
'caption': '''Whitelist note-taking apps allowed on the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> lock screen''',
'tags': [],
'desc': '''Specifies list of apps that can be enabled as a note-taking app on the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> lock screen.
If the preferred note-taking app is enabled on the lock screen, the lock screen will contain UI element for launching the preferred note taking app.
When launched, the app will be able to create an app window on top of the lock screen, and create data items (notes) in the lock screen context. The app will be able to import created notes to the primary user session, when the session is unlocked. Currently, only Chrome note-taking apps are supported on the lock screen.
If the policy is set, the user will be allowed to enable an app on the lock screen only if the app's extension ID is contained in the policy list value.
As a consequence, setting this policy to an empty list will disable note-taking on the lock screen entirely.
Note that the policy containing an app ID does not necessarily mean that the user will be able to enable the app as a note-taking app on the lock screen - for example, on Chrome 61, the set of available apps is additionally restricted by the platform.
If the policy is left unset, there will be no restrictions on the set of apps the user can enable on the lock screen imposed by the policy.'''
},
{
'name': 'CastReceiverEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:62-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 378,
'default_for_enterprise_users': False,
'caption': '''Enable casting content to the device''',
'tags': [],
'desc': '''Allow content to be cast to the device using <ph name="PRODUCT_NAME">Google Cast</ph>.
If this policy is set to False, users will not be able to cast content to their device. If this policy is set to True, users are allowed to cast content. If this policy is not set, users are not allowed to cast content to enrolled Chrome OS devices, but can cast to non enrolled devices.''',
},
{
'name': 'CastReceiverName',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:62-'],
'device_only': True,
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'My Chromebook',
'id': 379,
'caption': '''Name of the <ph name="PRODUCT_NAME">Google Cast</ph> destination''',
'tags': [],
'desc': '''Determine the name advertised as a <ph name="PRODUCT_NAME">Google Cast</ph> destination.
If this policy is set to a non empty string, that string will be used as the name of the <ph name="PRODUCT_NAME">Google Cast</ph> destination. Otherwise, the destination name will be the device name. If this policy is not set, the destination name will be the device name, and the owner of the device (or a user from the domain managing the device) will be allowed to change it. The name is limited to 24 characters.'''
},
{
'name': 'DeviceOffHours',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'intervals': {
'type': 'array',
'items': {
'type': 'object',
'id': 'WeeklyTimeIntervals',
'properties': {
'start': {
'type': 'object',
'id': 'WeeklyTime',
'properties': {
'day_of_week': {
'type': 'string',
'enum': [
'MONDAY',
'TUESDAY',
'WEDNESDAY',
'THURSDAY',
'FRIDAY',
'SATURDAY',
'SUNDAY'
]
},
'time': { 'type': 'integer'}
}
},
'end': {
'$ref': 'WeeklyTime'
}
}
}
},
'timezone': { 'type': 'string' },
'ignored_policy_proto_tags': {
'type': 'array',
'items': { 'type':'integer' }
}
}
},
'supported_on': ['chrome_os:62-'],
'device_only': True,
'features': {
'dynamic_refresh': True
},
'example_value': {
'intervals':
[
{
'start': {
'day_of_week': 'MONDAY',
'time': 12840000
},
'end': {
'day_of_week': 'MONDAY',
'time': 21720000
}
},
{
'start': {
'day_of_week': 'FRIDAY',
'time': 38640000
},
'end': {
'day_of_week': 'FRIDAY',
'time': 57600000
}
}
],
'timezone': 'GMT',
'ignored_policy_proto_tags': [3, 8]
},
'id': 380,
'caption': '''Off hours intervals when the specified device policies are released''',
'tags': [],
'desc': '''If "OffHours" policy is set, then the specified device policies are ignored (use the default settings of these policies) during the defined time intervals. Device policies are re-applied by Chrome on every event when "OffHours" period starts or ends. User will be notified and forced to sign out when "OffHours" time end and device policy settings are changed (e.g. when user is logged in not with an allowed account).''',
},
{
'name': 'CloudPolicyOverridesMachinePolicy',
'type': 'main',
'schema': { 'type': 'boolean'},
'supported_on': ['chrome.*:62-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 381,
'caption': '''<ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> cloud policy overrides Machine policy.''',
'tags': [],
'future': True,
'desc': '''
If the policy is set to true, cloud policy takes precedence if it conflicts with machine policy.
If the policy is set to false or not configured, machine policy takes precedence if it conflicts with cloud policy.
For more details about policy priority, please visit: https://support.google.com/chrome?p=set_chrome_policies_for_devices
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.
'''
},
{
'name': 'PromptForDownloadLocation',
'type': 'main',
'schema': { 'type': 'boolean'},
'supported_on': ['chrome.*:64-', 'chrome_os:64-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 395,
'caption': '''Ask where to save each file before downloading''',
'tags': [],
'desc': '''
If the policy is enabled, the user will be asked where to save each file before downloading.
If the policy is disabled, downloads will start immediately, and the user will not be asked where to save the file.
If the policy is not configured, the user will be able to change this setting.
'''
},
{
'name': 'UnaffiliatedArcAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:64-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': False,
'id': 397,
'caption': '''Allow unaffiliated users to use ARC''',
'tags': [],
'desc': '''If the policy is set to false, unaffiliated users will not be allowed to use ARC.
If the policy is unset or set to true, all users are allowed to use ARC (unless ARC is disabled by other means).
Changes to the policy will only be applied while ARC is not running, e.g. while Chrome OS is starting.''',
},
{
'name': 'IsolateOrigins',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:63-', 'chrome_os:63-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'https://example.com/,https://othersite.org/',
'id': 398,
'caption': '''Enable Site Isolation for specified origins''',
'tags': ['system-security'],
'desc': '''
If the policy is enabled, each of the named origins in a
comma-separated list will run in its own process. This will also isolate
origins named by subdomains; e.g. specifying https://example.com/ will
also cause https://foo.example.com/ to be isolated as part of the
https://example.com/ site.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOrigins and SitePerProcess will be disabled. Users will still be able to enable IsolateOrigins manually.
If the policy is not configured, the user will be able to change this setting.
On <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, it is recommended to also set the <ph name="DEVICE_LOGIN_SCREEN_ISOLATE_ORIGINS_POLICY_NAME">DeviceLoginScreenIsolateOrigins</ph> device policy to the same value. If the values specified by the two policies don't match, a delay may be incurred when entering a user session while the value specified by user policy is being applied.
NOTE: This policy does not apply on Android. To enable IsolateOrigins on Android, use the IsolateOriginsAndroid policy setting.
''',
},
{
'name': 'SitePerProcess',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:63-', 'chrome_os:63-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 399,
'caption': '''Enable Site Isolation for every site''',
'tags': ['system-security'],
'desc': '''
You might want to look at the IsolateOrigins policy setting to get the best of both worlds, isolation and limited impact for users, by using IsolateOrigins with a list of the sites you want to isolate. This setting, SitePerProcess, isolates all sites.
If the policy is enabled, each site will run in its own process.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOrigins and SitePerProcess will be disabled. Users will still be able to enable SitePerProcess manually.
If the policy is not configured, the user will be able to change this setting.
On <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, it is recommended to also set the <ph name="DEVICE_LOGIN_SCREEN_SITE_PER_PROCESS_POLICY_NAME">DeviceLoginScreenSitePerProcess</ph> device policy to the same value. If the values specified by the two policies don't match, a delay may be incurred when entering a user session while the value specified by user policy is being applied.
NOTE: This policy does not apply on Android. To enable SitePerProcess on Android, use the SitePerProcessAndroid policy setting.
''',
},
{
'name': 'DeviceLoginScreenIsolateOrigins',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:66-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'https://example.com/,https://othersite.org/',
'id': 417,
'caption': '''Enable Site Isolation for specified origins''',
'tags': ['system-security'],
'desc': '''
This policy applies to the sign-in screen. Please see also the <ph name="ISOLATE_ORIGINS_POLICY_NAME">IsolateOrigins</ph> policy which applies to the user session. It is recommended to set both policies to the same value. If the values don't match, a delay may be incurred when entering a user session while the value specified by user policy is being applied.
If the policy is enabled, each of the named origins in a comma-separated list will run in its own process. This will also isolate origins named by subdomains; e.g. specifying https://example.com/ will also cause https://foo.example.com/ to be isolated as part of the https://example.com/ site.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOrigins and SitePerProcess will be disabled. Users will still be able to enable IsolateOrigins manually.
If the policy is not configured, the platform default site isolation settings will be used for the sign-in screen.
''',
},
{
'name': 'DeviceLoginScreenSitePerProcess',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:66-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 418,
'caption': '''Enable Site Isolation for every site''',
'tags': ['system-security'],
'desc': '''
This policy applies to the sign-in screen. Please see also the <ph name="SITE_PER_PROCESS_POLICY_NAME">SitePerProcess</ph> policy which applies to the user session. It is recommended to set both policies to the same value. If the values don't match, a delay may be incurred when entering a user session while the value specified by user policy is being applied.
You might want to look at the IsolateOrigins policy setting to get the best of both worlds, isolation and limited impact for users, by using IsolateOrigins with a list of the sites you want to isolate. This setting, SitePerProcess, isolates all sites.
If the policy is enabled, each site will run in its own process.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOrigins and SitePerProcess will be disabled. Users will still be able to enable SitePerProcess manually.
If the policy is not configured, the user will be able to change this setting.
''',
},
{
'name': 'IsolateOriginsAndroid',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['android:68-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 'https://example.com/,https://othersite.org/',
'id': 445,
'caption': '''Enable Site Isolation for specified origins on Android devices''',
'tags': ['system-security'],
'desc': '''
If the policy is enabled, each of the named origins in a
comma-separated list will run in its own process. This will also isolate
origins named by subdomains; e.g. specifying https://example.com/ will
also cause https://foo.example.com/ to be isolated as part of the
https://example.com/ site.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOriginsAndroid and SitePerProcessAndroid will be disabled. Users will still be able to enable IsolateOrigins manually.
If the policy is not configured, the user will be able to change this setting.
NOTE: On Android, Site Isolation is experimental. Support will improve over time, but currently it may cause performance problems.
NOTE: This policy applies only to Chrome on Android running on devices with strictly more than 1GB of RAM. To apply the policy on non-Android platforms, use IsolateOrigins.
''',
},
{
'name': 'SitePerProcessAndroid',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:68-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 446,
'caption': '''Enable Site Isolation for every site''',
'tags': ['system-security'],
'desc': '''
You might want to look at the IsolateOriginsAndroid policy setting to get the best of both worlds, isolation and limited impact for users, by using IsolateOriginsAndroid with a list of the sites you want to isolate. This setting, SitePerProcessAndroid, isolates all sites.
If the policy is enabled, each site will run in its own process.
If the policy is disabled, no explicit Site Isolation will happen and field trials of IsolateOriginsAndroid and SitePerProcessAndroid will be disabled. Users will still be able to enable SitePerProcess manually.
If the policy is not configured, the user will be able to change this setting.
NOTE: On Android, Site Isolation is experimental. Support will improve over time, but currently it may cause performance problems.
NOTE: This policy applies only to Chrome on Android running on devices with strictly more than 1GB of RAM. To apply the policy on non-Android platforms, use SitePerProcess.
''',
},
{
'name': 'WebDriverOverridesIncompatiblePolicies',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:65-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 414,
'caption': '''Allow WebDriver to Override Incompatible Policies''',
'tags': ['system-security'],
'desc': '''This policy allows users of the WebDriver feature to override
policies which can interfere with its operation.
Currently this policy disables SitePerProcess and IsolateOrigins policies.
If the policy is enabled, WebDriver will be able to override incomaptible
policies.
If the policy is disabled or not configured, WebDriver will not be allowed
to override incompatible policies.''',
},
{
'name': 'UnsafelyTreatInsecureOriginAsSecure',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'deprecated': True,
'supported_on': ['chrome.*:65-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': ['http://testserver.example.com/'],
'id': 400,
'caption': '''Origins to be treated as secure context.''',
'tags': ['system-security'],
'desc': '''Deprecated in M69. Use OverrideSecurityRestrictionsOnInsecureOrigin instead.
The policy specifies a list of origins (URLs) to be treated as secure context. The intent is to allow organizations to set up a staging server for internal web development, so that their developers can test out features requiring secure contexts without having to deploy TLS on the staging server.
Setting a list of URLs in this policy has the same effect as setting the command-line flag '--unsafely-treat-insecure-origin-as-secure' to a comma-separated list of the same URLs. If the policy is set, it will override the command-line flag.
For more information on secure contexts, see https://www.w3.org/TR/secure-contexts/
'''
},
{
'name': 'DefaultDownloadDirectory',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:64-', 'chrome_os:64-'],
'features': {
'can_be_mandatory': False,
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '/home/${user_name}/Downloads',
'id': 401,
'caption': '''Set default download directory''',
'tags': ['local-data-access'],
'desc': '''Configures the default directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use for downloading files.
If you set this policy, it will change the default directory that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> downloads files to. This policy is not mandatory, so the user will be able to change the directory.
If you do not set this policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will use its usual default directory (platform-specific).
See https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables for a list of variables that can be used.''',
},
{
'name': 'DeviceHostnameTemplate',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:64-'],
'device_only': True,
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'chromebook-${ASSET_ID}',
'id': 403,
'caption': '''Device network hostname''',
'tags': [],
'desc': '''Determine the hostname of the device used in DHCP requests.
If this policy is set to a non empty string, that string will be used as the device hostname during DHCP request.
The string can contain variables ${ASSET_ID}, ${SERIAL_NUM}, ${MAC_ADDR} that would be replaced with values on the device before using as a hostname. Resulting substitution should be a valid hostname (per RFC 1035, section 3.1).
If this policy is not set, or the value after substitution is not a valid hostname, no hostname will be set in DHCP request. '''
},
{
'name': 'AbusiveExperienceInterventionEnforce',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:65-', 'chrome_os:65-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 404,
'caption': '''Abusive Experience Intervention Enforce''',
'tags': [],
'desc': '''Allows you to set whether sites with abusive experiences should be prevented from opening new windows or tabs.
If this policy is set to True, sites with abusive experiences will be prevented from opening new windows or tabs.
However this behavior will not trigger if SafeBrowsingEnabled policy is set to False.
If this policy is set to False, sites with abusive experiences will be allowed to open new windows or tabs.
If this policy is left not set, True will be used.''',
},
{
'name': 'SpellcheckLanguage',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' }
},
# Spell checking is provided by macOS, so can't be controlled on Mac.
'supported_on': ['chrome.win:65-', 'chrome.linux:65-', 'chrome_os:65-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['fr', 'es'],
'id': 405,
'caption': '''Force enable spellcheck languages''',
'tags': [],
'desc': '''Force-enables spellcheck languages. Unrecognized languages in that list will be ignored.
If you enable this policy, spellcheck will be enabled for the languages specified, in addition to the languages for which the user has enabled spellcheck.
If you do not set this policy, or disable it, there will be no change to the user's spellcheck preferences.
If the SpellcheckEnabled policy is set to disabled, this policy will have no effect.
The currently supported languages are: af, bg, ca, cs, da, de, el, en-AU, en-CA, en-GB, en-US, es, es-419, es-AR, es-ES, es-MX, es-US, et, fa, fo, fr, he, hi, hr, hu, id, it, ko, lt, lv, nb, nl, pl, pt-BR, pt-PT, ro, ru, sh, sk, sl, sq, sr, sv, ta, tg, tr, uk, vi.'''
},
{
'name': 'ThirdPartyBlockingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:65-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 407,
'caption': '''Enable third party software injection blocking''',
'tags': [],
'desc': '''If the policy is set to false then third party software will be allowed to inject executable code into Chrome's processes. If the policy is unset or set to true then third party software will be prevented from injecting executable code into Chrome's processes.''',
},
{
'name': 'SpellcheckEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:65-', 'chrome_os:65-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 408,
'caption': '''Enable spellcheck''',
'tags': [],
'desc': '''If this policy is not set or enabled, the user is allowed to use spellcheck.
If this policy is disabled, the user is not allowed to use spellcheck. The SpellcheckLanguage policy will also be ignored when this policy is disabled.
'''
},
{
'name': 'AdsSettingForIntrusiveAdsSites',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'items': [
{
'name': 'AllowAds',
'value': 1,
'caption': '''Allow ads on all sites''',
},
{
'name': 'BlockAds',
'value': 2,
'caption': '''Do not allow ads on sites with intrusive ads''',
},
],
'supported_on': ['chrome.*:65-', 'chrome_os:65-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 409,
'caption': '''Ads setting for sites with intrusive ads''',
'tags': [],
'desc': '''Allows you to set whether ads should be blocked on sites with intrusive ads.
If this policy is set to 2, ads will be blocked on sites with intrusive ads.
However this behavior will not trigger if SafeBrowsingEnabled policy is set to False.
If this policy is set to 1, ads will not be blocked on sites with intrusive ads.
If this policy is left not set, 2 will be used.''',
},
{
'name': 'RestrictAccountsToPatterns',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' }
},
'supported_on': ['android:65-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['*@example.com', 'user@managedchrome.com'],
'id': 410,
'caption': '''Restrict accounts that are visible in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''Contains a list of patterns which are used to control the visiblity of accounts in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Each Google account on the device will be compared to patterns stored in this policy to determine the account visibility in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. The account will be visible if its name matches any pattern on the list. Otherwise, the account will be hidden.
Use the wildcard character '*' to match zero or more arbitrary characters. The escape character is '\\', so to match actual '*' or '\\' characters, put a '\\' in front of them.
If this policy is not set, all Google accounts on the device will be visible in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'name': 'PasswordProtectionWarningTrigger',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'PasswordProtectionWarningOff',
'value': 0,
'caption': '''Password protection warning is off''',
},
{
'name': 'PasswordProtectionWarningOnPasswordReuse',
'value': 1,
'caption': '''Password protection warning is triggered by password reuse''',
},
{
'name': 'PasswordProtectionWarningOnPhishingReuse',
'value': 2,
'caption': '''Password protection warning is triggered by password reuse on phishing page''',
},
],
'supported_on': ['chrome.*:69-', 'chrome_os:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 411,
'caption': '''Password protection warning trigger''',
'tags': [],
'desc': '''Allows you to control the triggering of passwore protection warning. Password protection alerts users when they reuse their protected password on potentially suspicious sites.
You can use 'PasswordProtectionLoginURLs' and 'PasswordProtectionChangePasswordURL' policies to configure which password to protect.
If this policy is set to 'PasswordProtectionWarningOff', no password protection warning will be shown.
If this policy is set to 'PasswordProtectionWarningOnPasswordReuse', password protection warning will be shown when the user reuses their protected password on a non-whitelisted site.
If this policy is set to 'PasswordProtectionWarningOnPhishingReuse', password protection warning will be shown when the user reuses their protected password on a phishing site.
If this policy is left unset, password protection service will only protect Google passwords but the user will be able to change this setting.''',
},
{
'id': 419,
'name': 'RelaunchNotification',
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome.*:66-'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'caption': '''Notify a user that a browser relaunch is recommended or required''',
'items': [
{
'name': 'Recommended',
'value': 1,
'caption': '''Show a recurring prompt to the user indicating that a relaunch is recommended''',
},
{
'name': 'Required',
'value': 2,
'caption': '''Show a recurring prompt to the user indicating that a relaunch is required''',
},
],
'example_value': 1,
'desc': '''Notify users that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> must be relaunched to apply a pending update.
This policy setting enables notifications to inform the user that a browser relaunch is recommended or required. If not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> indicates to the user that a relaunch is needed via subtle changes to its menu. If set to 'Recommended', a recurring warning will be shown to the user that a relaunch is recommended. The user can dismiss this warning to defer the relaunch. If set to 'Required', a recurring warning will be shown to the user indicating that a browser relaunch will be forced once the notification period passes. This period is seven days by default, and may be configured via the <ph name="RELAUNCH_NOTIFICATION_PERIOD_POLICY_NAME">RelaunchNotificationPeriod</ph> policy setting.
The user's session is restored following the relaunch.''',
},
{
'id': 420,
'name': 'RelaunchNotificationPeriod',
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome.*:67-', 'chrome_os:67-'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 3600000 },
'caption': '''Set the time period for update notifications''',
'label': '''Time period (milliseconds)''',
'example_value': 604800000,
'desc': '''Allows you to set the time period, in milliseconds, over which users are notified that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> must be relaunched or that a <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> device must be restarted to apply a pending update.
Over this time period, the user will be repeatedly informed of the need for an update. For <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices, a restart notification appears in the system tray when an upgrade is detected. This notification changes color once half of the notification period passes, and again once the full notification period has passed. For <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> browsers, the app menu changes to indicate that a relaunch is needed once one third of the notification period passes. This notification changes color once two thirds of the notification period passes, and again once the full notification period has passed. The additional notifications enabled by the <ph name="RELAUNCH_NOTIFICATION_POLICY_NAME">RelaunchNotification</ph> policy for browsers follow this same schedule.
If not set, the default period of 345600000 milliseconds (four days) is used for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices and 604800000 milliseconds (one week) for browsers.''',
},
{
'name': 'VirtualMachinesAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:66-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'default_for_managed_devices_doc_only': False,
'id': 421,
'caption': '''Allow devices to run virtual machines on Chrome OS''',
'tags': ['system-security'],
'desc': '''Allows you to control whether virtual machines are allowed to run on Chrome OS.
If the policy is set to True, the device is allowed to run virtual machines.
If the policy is set to False, the device will not be allowed to run virtual machines.
When this policy is changed to False, it applies to starting new virtual machines but does not shut down virtual machines which are already running.
When this policy is not set on a managed device, the device is not allowed to run virtual machines.
Unmanaged devices are allowed to run virtual machines.''',
},
{
'name': 'SafeBrowsingWhitelistDomains',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:68-', 'chrome_os:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['mydomain.com', 'myuniversity.edu'],
'id': 422,
'caption': '''Configure the list of domains on which Safe Browsing will not trigger warnings.''',
'tags': [],
'desc': '''Configure the list of domains which Safe Browsing will trust. This means:
Safe Browsing will not check for dangerous resources (e.g. phishing, malware, or unwanted software) if their URLs match these domains.
Safe Browsing's download protection service will not check downloads hosted on these domains.
Safe Browsing's password protection service will not check for password reuse if the page URL matches these domains.
If this setting is enabled, then Safe Browsing will trust these domains.
If this setting is disabled or not set, then default Safe Browsing protection is applied to all resources.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'PasswordProtectionLoginURLs',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:69-', 'chrome_os:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://mydomain.com/login.html', 'https://login.mydomain.com'],
'id': 423,
'caption': '''Configure the list of enterprise login URLs where password protection service should capture fingerprint of password.''',
'tags': [],
'desc': '''Configure the list of enterprise login URLs (HTTP and HTTPS schemes only). Fingerprint of password will be captured on these URLs and used for password reuse detection.
In order for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to correctly capture password fingerprints, please make sure your login pages follow the guidelines on https://www.chromium.org/developers/design-documents/create-amazing-password-forms.
If this setting is enabled, then password protection service will capture fingerprint of password on these URLs for password reuse detection purpose.
If this setting is disabled or not set, then password protection service will only capture password fingerprint on https://accounts.google.com.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'PasswordProtectionChangePasswordURL',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:69-', 'chrome_os:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://mydomain.com/change_password.html',
'id': 424,
'caption': '''Configure the change password URL.''',
'tags': [],
'desc': '''Configure the change password URL (HTTP and HTTPS schemes only). Password protection service will send users to this URL to change their password after seeing a warning in the browser.
In order for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to correctly capture the new password fingerprint on this change password page, please make sure your change password page follows the guidelines on https://www.chromium.org/developers/design-documents/create-amazing-password-forms.
If this setting is enabled, then password protection service will send users to this URL to change their password after seeing a warning in the browser.
If this setting is disabled or not set, then password protection service will send users to https://myaccounts.google.com to change their password.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'SafeBrowsingExtendedReportingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:66-', 'chrome_os:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 429,
'tags': ['google-sharing'],
'caption': '''Enable Safe Browsing Extended Reporting''',
'desc': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s Safe Browsing Extended Reporting and prevents users from changing this setting.
Extended Reporting sends some system information and page content to Google servers to help detect dangerous apps and sites.
If the setting is set to true, then reports will be created and sent whenever necessary (such as when a security interstitial is shown).
If the setting is set to false, reports will never be sent.
If this policy is set to true or false, the user will not be able to modify the setting.
If this policy is left unset, the user will be able to change the setting and decide whether to send reports or not.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
},
{
'name': 'MachineLevelUserCloudPolicyEnrollmentToken',
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:66-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '37185d02-e055-11e7-80c1-9a214cf093ae',
'id': 428,
'caption': '''The enrollment token of cloud policy on desktop''',
'tags': [],
'desc': '''
If this policy is set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will try to register itself and apply associated cloud policy for all profiles.
The value of this policy is an Enrollment token that can be retrieved from the Google Admin console.''',
},
{
'name': 'AutoplayAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:66-', 'chrome.linux:66-', 'chrome.mac:66-', 'chrome_os:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 430,
'caption': '''Allow media autoplay''',
'tags': [],
'desc': '''Allows you to control if videos can play automatically (without user consent) with audio content in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If the policy is set to True, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is allowed to autoplay media.
If the policy is set to False, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is not allowed to autoplay media. The AutoplayWhitelist policy can be used to override this for certain URL patterns.
By default, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is not allowed to autoplay media. The AutoplayWhitelist policy can be used to override this for certain URL patterns.
Note that if <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running and this policy changes, it will be applied only to new opened tabs. Therefore some tabs might still observe the previous behavior.
''',
},
{
'name': 'AutoplayWhitelist',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:66-', 'chrome_os:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://example.com', 'https://www.chromium.org'],
'id': 431,
'caption': '''Allow media autoplay on a whitelist of URL patterns''',
'tags': [],
'desc': '''Controls the whitelist of URL patterns that autoplay will always be enabled on.
If autoplay is enabled then videos can play automatically (without user consent) with audio content in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
A URL pattern has to be formatted according to https://www.chromium.org/administrators/url-blacklist-filter-format.
If the AutoplayAllowed policy is set to True then this policy will have no effect.
If the AutoplayAllowed policy is set to False then any URL patterns set in this policy will still be allowed to play.
Note that if <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running and this policy changes, it will be applied only to new opened tabs. Therefore some tabs might still observe the previous behavior.''',
},
{
'name': 'TabUnderAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:67-67', 'chrome_os:67-67'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'deprecated': True,
'id': 432,
'caption': '''Allow sites to simultaneously navigate and open pop-ups''',
'tags': [],
'desc': '''Deprecated in M68. Use DefaultPopupsSetting instead.
For a full explanation, see https://www.chromestatus.com/features/5675755719622656.
If this policy is enabled, sites will be allowed to simultaneously navigate and open new windows/tabs.
If this policy is disabled or not set, sites will be disallowed from simultaneously navigating and opening a new window/tab.''',
},
{
'name': 'UserNativePrintersAllowed',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:67-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 433,
'caption': '''Allow access to native CUPS printers''',
'tags': [],
'desc': '''Allows you to control if users can access non-enterprise printers
If the policy is set to True, or not set at all, users will be able to add, configure, and print using their own native printers.
If the policy is set to False, users will not be able to add and configure their own native printers. They will also not be able to print using any previously configured native printers.
''',
},
{
'name': 'DeviceSamlLoginAuthenticationType',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'Default',
'value': 0,
'caption': '''Default configuration''',
},
{
'name': 'ClientCertificate',
'value': 1,
'caption': '''Authentication based on client certificates''',
},
],
'supported_on': ['chrome_os:68-'],
'device_only': True,
'future': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 438,
'caption': '''SAML login authentication type''',
'tags': ['system-security'],
'desc': '''Configures the type of authentication for SAML logins.
When this policy is unset or set to Default (value 0), the behavior of SAML logins is determined by the browser depending on other factors. In the most basic scenario, the user authentication and the protection of the cached user data are based on passwords manually entered by users.
When this policy is set to ClientCertificate (value 1), client certificate authentication is used for newly added users which log in via SAML. No passwords are used for such users, and their cached local data is protected using corresponding cryptographic keys. For instance, this setting allows configuring smart card based user authentication (note that smart card middleware apps have to be installed via the DeviceLoginScreenAppInstallList policy).
This policy affects only users who authenticate using SAML.''',
},
{
'name': 'ChromeCleanupEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:68-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 441,
'caption': '''Enable Chrome Cleanup on Windows''',
'tags': ['system-security'],
'desc': '''If disabled, prevents Chrome Cleanup from scanning the system for unwanted software and performing cleanups. Manually triggering Chrome Cleanup from chrome://settings/cleanup is disabled.
If enabled or unset, Chrome Cleanup periodically scans the system for unwanted software and should any be found, will ask the user if they wish to remove it. Manually triggering Chrome Cleanup from chrome://settings is enabled.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'ChromeCleanupReportingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:68-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 442,
'caption': '''Control how Chrome Cleanup reports data to Google''',
'tags': ['system-security'],
'desc': '''If unset, should Chrome Cleanup detect unwanted software, it may report metadata about the scan to Google in accordance with policy set by SafeBrowsingExtendedReportingEnabled. Chrome Cleanup will then ask the user if they wish to clean up the unwanted software. The user can choose to share results of the cleanup with Google to assist with future unwanted software detection. These results contain file metadata, automatically installed extensions and registry keys as described by the Chrome Privacy Whitepaper.
If disabled, should Chrome Cleanup detect unwanted software, it will not report metadata about the scan to Google, overriding any policy set by SafeBrowsingExtendedReportingEnabled. Chrome Cleanup will ask the user if they wish to clean up the unwanted software. Results of the cleanup will not be reported to Google and the user will not have the option to do so.
If enabled, should Chrome Cleanup detect unwanted software, it may report metadata about the scan to Google in accordance with policy set by SafeBrowsingExtendedReportingEnabled. Chrome Cleanup will ask the user if they wish to clean up the unwanted software. Results of the cleanup will be reported to Google and the user will not have the option to prevent it.
This policy is not available on Windows instances that are not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'AllowedUILocales',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:68-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': True
},
'example_value': [ 'en-US' ],
'max_size': 16777216,
'id': 444,
'caption': '''Configure the allowed UI locales in a user session''',
'tags': [],
'desc': '''Configures the locales <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> may be displayed in.
If this policy is set, the user can only configure <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> to be displayed in one of the locales specified by this policy. If this policy is not set or set to an empty list, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> can be displayed in all supported UI locales. If this policy is set to a list with invalid values, all invalid values will be ignored. If a user previously configured <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> to be displayed in a locale that is not allowed by this policy, the display locale will be switched to an allowed UI locale the next time the user signs in. If the user had configured preferred locales and one of the preferred locales is allowed by this policy, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will switch to this locale. Otherwise, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will switch to the first valid value specified by this policy, or to a fallback locale (currently en-US), if this policy only contains invalid entries.'''
},
{
'name': 'AllowedInputMethods',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:69-'],
'device_only': False,
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': [ 'xkb:us::eng' ],
'max_size': 16777216,
'id': 456,
'caption': '''Configure the allowed input methods in a user session''',
'tags': [],
'desc': '''Configures which keyboard layouts are allowed for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> user sessions.
If this policy is set, the user can only select one of the input methods specified by this policy. If this policy is not set or set to an empty list, the user can select all supported input methods. If the current input method is not allowed by this policy, the input method will be switched to the hardware keyboard layout (if allowed) or the first valid entry in this list. All invalid or unsupported input methods in this list will be ignored.'''
},
{
'name': 'ArcAppInstallEventLoggingEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:67-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 447,
'caption': '''Log events for Android app installs''',
'tags': ['google-sharing'],
'desc': '''Enables reporting of key events during Android app installation to Google. Events are captured only for apps whose installation was triggered via policy.
If the policy is set to true, events will be logged.
If the policy is set to false or unset, events will not be logged.''',
},
{
'name': 'UsageTimeLimit',
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'time_window_limit': {
'type': 'object',
'properties': {
'entries': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'effective_day': {
'type': 'string',
'enum': [
'MONDAY',
'TUESDAY',
'WEDNESDAY',
'THURSDAY',
'FRIDAY',
'SATURDAY',
'SUNDAY'
]
},
'starts_at': {
'type': 'object',
'id': 'Time',
'properties': {
'hour': { 'type': 'integer' },
'minute': { 'type': 'integer'}
}
},
'ends_at': { '$ref': 'Time' },
'last_updated_millis': { 'type': 'string' }
}
}
}
}
},
'time_usage_limit': {
'type': 'object',
'properties': {
'monday': {
'type': 'object',
'id': 'TimeUsageLimitEntry',
'properties': {
'usage_quota_mins': { 'type': 'integer' },
'last_updated_millis': { 'type': 'string' }
}
},
'tuesday': { '$ref': 'TimeUsageLimitEntry' },
'wednesday': { '$ref': 'TimeUsageLimitEntry' },
'thursday': { '$ref': 'TimeUsageLimitEntry' },
'friday': { '$ref': 'TimeUsageLimitEntry' },
'saturday': { '$ref': 'TimeUsageLimitEntry' },
'sunday': { '$ref': 'TimeUsageLimitEntry' },
'reset_at': { '$ref': 'Time' }
}
},
'overrides': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'action': {
'type': 'string',
'enum': [
'LOCK',
'UNLOCK'
]
},
'created_at_millis': { 'type': 'string' },
'action_specific_data': {
'type': 'object',
'properties': {
'duration_mins': { 'type': 'integer' }
}
}
}
}
}
}
},
'supported_on': ['chrome_os:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': [{
'time_window_limit': {
'entries': [{
'effective_day': 'WEDNESDAY',
'starts_at': {
'hour': 21,
'minute': 0
},
'ends_at': {
'hour': 7,
'minute': 30
},
'last_updated_millis': '1000000'
}]
},
'time_usage_limit': {
'monday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'reset_at': {
'hour': 6,
'minute': 0
}
},
'overrides': [{
'action': 'LOCK',
'created_at_millis': '1250000'
}]
}],
'id': 448,
'caption': '''Time Limit''',
'tags': [],
'desc': '''Allows you to lock the user's session based on the client time or the usage quota of the day.
The |time_window_limit| specifies a daily window in which the user's session should be locked. We only support one rule for each day of the week, therefore the |entries| array may vary from 0-7 in size. |starts_at| and |ends_at| are the beginning and the end of the window limit, when |ends_at| is smaller than |starts_at| it means that the |time_limit_window| ends on the following day. |last_updated_millis| is the UTC timestamp for the last time this entry was updated, it is sent as a string because the timestamp wouldn't fit in an integer.
The |time_usage_limit| specifies a daily screen quota, so when the user reaches it, the user's session is locked. There is a property for each day of the week, and it should be set only if there is an active quota for that day. |usage_quota_mins| is the amount of time that the managed device can be use in a day and |reset_at| is the time when the usage quota is renewed. The default value for |reset_at| is midnight ({'hour': 0, 'minute': 0}). |last_updated_millis| is the UTC timestamp for the last time this entry was updated, it is sent as a string because the timestamp wouldn't fit in an integer.
|overrides| is provided to invalidate temporarily one or more of the previous rules.
* If neither time_window_limit nor time_usage_limit is active |LOCK| can be used to lock the device.
* |LOCK| temporarily locks a user session until the next time_window_limit or time_usage_limit starts.
* |UNLOCK| unlocks a user's session locked by time_window_limit or time_usage_limit.
|created_time_millis| is the UTC timestamp for the override creation, it is sent as a String because the timestamp wouldn't fit in an integer It is used to determine whether this override should still be applied. If the current active time limit feature (time usage limit or time window limit) started after the override was created, it should not take action. Also if the override was created before the last change of the active time_window_limit or time_usage_window it should not be applied.
Multiple overrides may be sent, the newest valid entry is the one that is going to be applied.'''
},
{
'name': 'ArcBackupRestoreServiceEnabled',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'BackupAndRestoreDisabled',
'value': 0,
'caption': '''Backup and restore disabled''',
},
{
'name': 'BackupAndRestoreUnderUserControl',
'value': 1,
'caption': '''User decides whether to enable backup and restore''',
},
],
'supported_on': ['chrome_os:68-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 1,
'id': 449,
'default_for_enterprise_users': 0,
'caption': '''Control Android backup and restore service''',
'tags': ['google-sharing'],
'desc':
'''This policy controls the availability of Android backup and restore.
When this policy is not configured or set to <ph name="BR_DISABLED">BackupAndRestoreDisabled</ph>, Android backup and restore is disabled and cannot be enabled by the user.
When this policy is set to <ph name="BR_UNDER_USER_CONTROL">BackupAndRestoreUnderUserControl</ph>, the user is asked to choose whether to use Android backup and restore. If the user enables backup and restore, Android app data is uploaded to Android backup servers and restored from them upon app re-installations for compatible apps.''',
},
{
'name': 'ArcGoogleLocationServicesEnabled',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'GoogleLocationServicesDisabled',
'value': 0,
'caption': '''Google location services disabled''',
},
{
'name': 'GoogleLocationServicesUnderUserControl',
'value': 1,
'caption': '''User decides whether to enable Google location services''',
},
],
'supported_on': ['chrome_os:68-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 1,
'id': 450,
'default_for_enterprise_users': 0,
'caption': '''Control Android Google location services''',
'tags': ['google-sharing'],
'desc':
'''This policy controls the availability of Google location services.
When this policy is not configured or set to <ph name="GLS_DISABLED">GoogleLocationServicesDisabled</ph>, Google location services are disabled and cannot be enabled by the user.
When this policy is set to <ph name="GLS_UNDER_USER_CONTROL">GoogleLocationServicesUnderUserControl</ph>, the user is asked to choose whether to use Google location services. This will allow Android apps to use the services to query the device location, and also will enable submitting of anonymous location data to Google.
Note that this policy is ignored and Google location services are always disabled when the <ph name="DEFAULT_GEOLOCATION_SETTING_POLICY_NAME">DefaultGeolocationSetting</ph> policy is set to <ph name="BLOCK_GEOLOCATION_SETTING">BlockGeolocation</ph>.''',
},
{
'name': 'EnableSyncConsent',
'type': 'main',
'schema': { 'type': 'boolean'},
'supported_on': ['chrome_os:66-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 451,
'caption': '''Enable displaying Sync Consent during sign-in''',
'tags': [],
'desc': '''This policy controls if Sync Consent can be shown to the user during first sign-in. It should be set to false if Sync Consent is never needed for the user.
If set to false, Sync Consent will not be displayed.
If set to true or unset, Sync Consent can be displayed.''',
},
{
'name': 'ContextualSuggestionsEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 452,
'caption': '''Enable contextual suggestions of related web pages''',
'tags': ['google-sharing'],
'desc':
'''If this is set to true or unset, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will suggest pages related to the current page.
These suggestions are fetched remotely from Google servers.
If this setting is set to false, suggestions will not be fetched or displayed.''',
},
{
'name': 'DeviceAutoUpdateTimeRestrictions',
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'description': 'Time interval that spans at most one week. If the start time is later than the end time, then the interval will wrap around.',
'properties': {
'start': {
'description': 'Start time of the interval, inclusive.',
'type': 'object',
'id': 'DisallowedTimeInterval',
'properties': {
'day_of_week': {
'description': 'Day of the week for the interval.',
'type': 'string',
'enum': ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
},
'minutes': {
'description': 'Minutes elapsed in the current hour.',
'type': 'integer',
'minimum': 0,
'maximum': 59
},
'hours': {
'description': 'Hours elapsed since the start of the day in (24 hour format).',
'type': 'integer',
'minimum': 0,
'maximum': 23
}
},
'required': ['day_of_week', 'minutes', 'hours']
},
'end': {
'description': 'End of the interval, exclusive.',
'$ref': 'DisallowedTimeInterval'
}
},
'required': ['start', 'end']
}
},
'supported_on': ['chrome_os:69-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': [
{
'start': {
'day_of_week': 'Monday',
'minutes': 50,
'hours': 3,
},
'end': {
'day_of_week': 'Thursday',
'minutes': 30,
'hours': 2,
}
},
{
'start': {
'day_of_week': 'Thursday',
'minutes': 30,
'hours': 3
},
'end': {
'day_of_week': 'Sunday',
'minutes': 10,
'hours': 15,
}
}
],
'id': 453,
'caption': '''Update Time Restrictions''',
'tags': [],
'desc': '''This policy controls the time frames during which the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> device is not allowed to check for updates automatically.
When this policy is set to a non-empty list of time intervals:
Devices will not be able to check for updates automatically during the specified time intervals. Devices that require a rollback or are below the minimum <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version will not be affected by this policy due to potential security issues. Furthermore, this policy will not block update checks requested by users or administrators.
When this policy is unset or contains no time intervals:
No automatic update checks will be blocked by this policy, but they may be blocked by other policies.''',
},
{
'id': 454,
'name': 'PromotionalTabsEnabled',
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome.*:69-'],
'type': 'main',
'schema': { 'type': 'boolean' },
'caption': '''Enable showing full-tab promotional content''',
'example_value': False,
'desc': '''Allows you to control the presentation of full-tab promotional and/or educational content in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If not configured or enabled (set to true), <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> may show full-tab content to users to provide product information.
If disabled (set to false), <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not show full-tab content to users to provide product information.
This setting controls the presentation of the welcome pages that help users sign into <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, choose it as their default browser, or otherwise inform them of product features.'''
},
{
'name': 'SafeSitesFilterBehavior',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'SafeSitesFilterDisabled',
'value': 0,
'caption': '''Do not filter sites for adult content''',
},
{
'name': 'SafeSitesFilterEnabled',
'value': 1,
'caption': '''Filter top level sites (but not embedded iframes) for adult content''',
},
],
'supported_on': ['chrome.*:69-', 'chrome_os:69-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 0,
'id': 455,
'caption': '''Control SafeSites adult content filtering.''',
'tags': ['filtering', 'google-sharing'],
'desc':
'''This policy controls the application of the SafeSites URL filter.
This filter uses the Google Safe Search API to classify URLs as pornographic or not.
When this policy is not configured or set to "Do not filter sites for adult content", sites will not be filtered.
When this policy is set to "Filter top level sites for adult content", sites classified as pornographic will be filtered.''',
},
{
'name': 'OverrideSecurityRestrictionsOnInsecureOrigin',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' }
},
'supported_on': ['chrome.*:69-', 'chrome_os:69-', 'android:69-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': ['http://testserver.example.com/'],
'id': 457,
'caption': '''Origins or hostname patterns to be treated as secure context.''',
'tags': ['system-security'],
'desc': '''
The policy specifies a list of origins (URLs) or hostname patterns (such as "*.example.com") to be treated as secure contexts. The intent is to allow organizations to set up a staging server for internal web development, so that their developers can test out features requiring secure contexts without having to deploy TLS on the staging server.
Setting a list of URLs in this policy has the same effect as setting the command-line flag '--unsafely-treat-insecure-origin-as-secure' to a comma-separated list of the same URLs. If the policy is set, it will override the command-line flag.
For more information on secure contexts, see https://www.w3.org/TR/secure-contexts/
'''
},
{
'name': 'DeviceUpdateStagingPercentOfFleetPerWeek',
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'integer' },
},
'supported_on': ['chrome_os:69-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [ 0, 20, 100 ],
'id': 458,
'caption': '''The staging schedule for applying a new update''',
'tags': ['system-security'],
'desc': '''This policy defines a list of percentages that will define the fraction of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices in the OU to update per week starting from the day the update is first discovered. The discovery time is later than the update published time, since it could be a while after the update publishing until the device checks for updates.
The n-th value in the list will be used as the percentage of devices that should complete updating to the next version in the n-th week after the update has been discovered. For example, if an update is discovered today, then the first value in the list defines the percentage of devices in the OU that should update to that version by a week from today. The second value defines the percentage of devices in the OU that should update to that version by 2 weeks from today, and so on.
If there is a value defined for this policy, updates will ignore the <ph name="DEVICE_UPDATE_SCATTER_FACTOR_POLICY_NAME">DeviceUpdateScatterFactor</ph> policy and follow this policy instead.
If this list is empty, there will be no staging and updates will be applied according to other device policies.
This policy does not apply for channel switches.''',
},
{
'name': 'TabLifecyclesEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:69-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 460,
'caption': '''Enables or disables tab lifecycles''',
'tags': [],
'desc': '''The tab lifecyles feature reclaims CPU and eventually memory associated with running tabs that have not been used in a long period of time, by first throttling them, then freezing them and finally discarding them.
If the policy is set to false then tab lifecycles are disabled, and all tabs will be left running normally.
If the policy is set to true or left unspecified then tab lifecycles are enabled.''',
},
{
'name': 'UrlKeyedAnonymizedDataCollectionEnabled',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:69-', 'chrome_os:69-', 'android:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 461,
'caption': '''Enable URL-keyed anonymized data collection''',
'tags': ['google-sharing'],
'desc': '''Enable URL-keyed anonymized data collection in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing this setting.
URL-keyed anonymized data collection sends URLs of pages the user visits to Google to make searches and browsing better.
If you enable this policy, URL-keyed anonymized data collection is always active.
If you disable this policy, URL-keyed anonymized data collection is never active.
If this policy is left not set, URL-keyed anonymized data collection will be enabled but the user will be able to change it.''',
},
],
'messages': {
# Messages that are not associated to any policies.
'win_supported_win7': {
'desc': '''A label specifying the oldest possible compatible version of Windows. This text will appear right next to a label containing the text 'Supported on:'.''',
'text': '''Microsoft Windows 7 or later'''
},
'mac_chrome_preferences': {
'desc': '''A text indicating in Mac OS X Workgroup Manager, that currently the preferences of Chromium are being edited''',
'text': '''<ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> preferences'''
},
'doc_data_type': {
'desc': '''Caption text of the field 'data type' in the summary chart of a policy in the generated documentation''',
'text': '''Data type:'''
},
'doc_win_reg_loc': {
'desc': '''Caption text of the field 'windows registry location' in the summary chart of a policy in the generated documentation''',
'text': '''Windows registry location for Windows clients:'''
},
'doc_chrome_os_reg_loc': {
'desc': '''Caption text of the field '<ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> registry location' in the summary chart of a policy in the generated documentation''',
'text': '''Windows registry location for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> clients:'''
},
'doc_mac_linux_pref_name': {
'desc': '''Caption text of the field 'mac/linux preference name' in the summary chart of a policy in the generated documentation''',
'text': '''Mac/Linux preference name:'''
},
'doc_android_restriction_name': {
'desc': '''Caption text of the field 'android restriction name' in the summary chart of a policy in the generated documentation''',
'text': '''Android restriction name:'''
},
'doc_android_webview_restriction_name': {
'desc': '''Caption text of the field 'android webview restriction name' in the summary chart of a policy in the generated documentation''',
'text': '''Android WebView restriction name:'''
},
'doc_supported_on': {
'desc': '''Caption text of the list of 'products, platforms and versions where this policy is supported' in the summary chart of a policy in the generated documentation''',
'text': '''Supported on:'''
},
'doc_since_version': {
'desc': '''Text in the summary chart of a policy that specifies the version number in which the policy was introduced.''',
'text': '''since version <ph name="SINCE_VERSION">$6<ex>8</ex></ph>'''
},
'doc_until_version': {
'desc': '''Text in the summary chart of a policy that specifies the version number after which the policy was dropped.''',
'text': '''until version <ph name="UNTIL_VERSION">$6<ex>10</ex></ph>'''
},
'doc_supported_features': {
'desc': '''Caption text of the list of 'policy features that this policy supports' in the summary chart of a policy in the generated documentation''',
'text': '''Supported features:'''
},
'doc_description': {
'desc': '''Caption text of the 'description text' in the summary chart of a policy in the generated documentation''',
'text': '''Description:'''
},
'doc_arc_support': {
'desc': '''Caption text of the field in the generated documentation that describes how a policy affects Android applications on Chrome OS''',
'text': '''Note for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices supporting Android apps:'''
},
'doc_example_value': {
'desc': '''Caption text of the field 'example value' in the summary chart of a policy in the generated documentation''',
'text': '''Example value:'''
},
'doc_win_example_value': {
'desc': '''Caption text of the field 'windows (windows clients)' in the summary chart of a policy in the generated documentation''',
'text': '''Windows (Windows clients):'''
},
'doc_chrome_os_example_value': {
'desc': '''Caption text of the field 'windows (Chrome OS clients)' in the summary chart of a policy in the generated documentation''',
'text': '''Windows (<ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> clients):'''
},
'doc_intro': {
'desc': '''Introduction text for the generated policy documentation''',
'text': '''Both Chromium and Google Chrome support the same set of policies. Please note that this document may include unreleased policies (i.e. their 'Supported on' entry refers to a not-yet released version of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>) which are subject to change or removal without notice and for which no guarantees of any kind are provided, including no guarantees with respect to their security and privacy properties.
These policies are strictly intended to be used to configure instances of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> internal to your organization. Use of these policies outside of your organization (for example, in a publicly distributed program) is considered malware and will likely be labeled as malware by Google and anti-virus vendors.
These settings don't need to be configured manually! Easy-to-use templates for Windows, Mac and Linux are available for download from <ph name="POLICY_TEMPLATE_DOWNLOAD_URL">https://www.chromium.org/administrators/policy-templates<ex> https://www.chromium.org/administrators/policy-templates</ex></ph>.
The recommended way to configure policy on Windows is via GPO, although provisioning policy via registry is still supported for Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.'''
},
'doc_back_to_top': {
'desc': '''Text of a link in the generated policy documentation, that takes the user to the top of the page''',
'text': '''Back to top'''
},
'doc_supported': {
'desc': '''Appears next to the name of each supported feature in the 'list of supported policy features' in the generated policy documentation''',
'text': '''Yes'''
},
'doc_not_supported': {
'desc': '''Appears next to the name of each unsupported feature in the 'list of supported policy features' in the generated policy documentation''',
'text': '''No'''
},
'doc_name_column_title': {
'desc': '''Appears at the top of the policy summary table, over the column of policy names, in the generated policy documentation''',
'text': '''Policy Name'''
},
'doc_description_column_title': {
'desc': '''Appears at the top of the policy summary table, over the column of short policy descriptions, in the generated policy documentation''',
'text': '''Description'''
},
'doc_feature_dynamic_refresh': {
'desc': '''The name of the feature that indicates for a given policy that changes to it are respected by Chromium without a browser restart''',
'text': '''Dynamic Policy Refresh'''
},
'doc_feature_can_be_recommended': {
'desc': '''The name of the feature that indicates for a given policy that it can be recommended, instead of mandatory''',
'text': '''Can Be Recommended'''
},
'doc_feature_can_be_mandatory': {
'desc': '''The name of the feature that indicates for a given policy that it can be mandatory, instead of recommended''',
'text': '''Can Be Mandatory'''
},
'doc_feature_per_profile': {
'desc': '''The name of the feature that indicates whether a policy is applicable to browser Profiles individually or whether it affects the entire browser.''',
'text': '''Per Profile'''
},
'doc_deprecated': {
'desc': '''Text appended in parentheses to the policy name to indicate that it has been deprecated''',
'text': 'deprecated',
},
'doc_recommended': {
'desc': '''Text appended in parentheses next to the policies top-level container to indicate that those policies are of the Recommended level''',
'text': 'Default Settings (users can override)',
},
'doc_complex_policies_on_windows': {
'desc': '''Text pointing the user to a help article for complex policies on Windows''',
'text': '''encoded as a JSON string, for details see <ph name="COMPLEX_POLICIES_URL">https://www.chromium.org/administrators/complex-policies-on-windows<ex>https://www.chromium.org/administrators/complex-policies-on-windows</ex></ph>''',
},
'doc_reference_link': {
'desc': '''Text pointing the user to the reference page for this policy, which may have more info (since it doesn't have a size limit)''',
'text': '''Reference: <ph name="REFERENCE_URL">$6<ex>https://www.chromium.org/administrators/policy-list-3#WallpaperImage</ex></ph>''',
},
'doc_legacy_single_line_label': {
'desc': '''A label for the legacy single-line textbox for a policy also has a more user-friendly multi-line textbox. See http://crbug/829328''',
'text': '''<ph name="POLICY_NAME">$6<ex>Wallpaper Image</ex></ph> (The single-line field is deprecated and will be removed in the future. Please start using the multi-line textbox below.)''',
},
},
'placeholders': [],
'deleted_policy_ids': [412],
'highest_id_currently_used': 461
}