blob: be7f3eb79adaf8ffd0312ee043f0f0992a557e9d [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. Using this for a list of JSON strings
# is now discouraged, because the 'dict' is better for JSON.
# 'dict' - perhaps should be named JSON. An arbitrarily complex object or
# array, nested objects/arrays, etc. The user defines the value with JSON.
# 'external' - a policy that references external data.
# NOTE: This type is currently supported on Chrome OS only.
#
# NOTE to 'dict' vs 'list' - in the past, 'list' has been used for a policy
# that is an array of objects. The user supplied a list of strings, and each
# of those strings was parsed as JSON, resulting in an array of objects.
# However, there are a couple of reasons why 'dict' is better for these sorts
# of policies. Some interfaces (eg the GPO editor) only allow each list item
# to be a single-line string, which is not great for inputting a complex JSON
# object. It also means any example values shown in the documentation will
# have a hybrid syntax, with both commas and new-lines being used to delimit
# array elements - and these examples will be harder to copy and paste.
# To conclude, prefer 'dict' to 'list' if JSON is involved.
#
# 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-translatable 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
#
# Each policy has the list of platforms where it is supported under the key
# 'supported_on' or 'future_on'. The 'supported_on' lists all released
# platforms while the 'future_on' is used to enumerate platforms where the
# feature is not yet ready for use in production environments. Any unreleased
# platforms is hidden from policy templates and documentation. The policy
# defination in the source code is generated for platforms in both lists.
#
# The format of the 'supported_on' is '<platform>:<since_version>-<until_version>'.
# It means the policy is officially released on the |platform| from
# |since_version| and is removed after |until_version|. |until_version|
# is optional.
#
# The format of the 'futured_on' list entries is '<platform>'.
# There is no version range attached to it and the policy is available in the
# Dev and Canary channel only unless it's listed in the
# EnableExperimentalPolicies policy.
#
# Currently supported platforms:
# 'chrome.win', 'chrome.win7', 'chrome.mac', 'chrome.linux', 'chrome.*'
# 'chrome_os', 'android', 'webview_android', 'ios', 'chrome_frame'
# Note that 'chrome_frame' has been deprecated.
#
# Annotations:
# Additional information is specified under keys 'features' and
# 'example_value'. These are used in the generated documentation and example
# policy configuration files. Examples must cover the entire schema, i.e. use
# every defined property at least once.
# '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.
# 'cloud_only' Set to True if the policy is forced or recommended to set from
# Admin console only. This hides the policy from policy templates and
# documentation.
# 'platform_only' Set to True if the policy can only be set from platform
# policy but do not support Admin console. This is only used as a hint for
# Admin console.
# 'internal_only' Set to True if the policy is used for internal development
# or testing purposes and will never be used by any external administrator.
#
# 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 has been deprecated, please use 'future_on' instead for
# unreleased policies.
#
# Schemas:
# All policies have a key 'schema' which describes the schema of the policy.
# This schema supports a subset of the JSON Schema standard
# (https://json-schema.org/understanding-json-schema/index.html). For more
# information see //components/policy/tools/schema_validator.py. This
# validator is also used during presubmit to validate all schemas,
# validation_schemas and the example_values. On the client-side we use
# //components/policy/core/common/schema.h to validate policy values against
# the provided schemas in this file. This validator supports the same subset
# of features supported by the python schema validator used during presubmit.
#
# 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.
#
# In order to hide sensitive policy values from the user, you can use
# 'sensitiveValue': True (default 'False') in the associated schema. Those
# values will be masked with '********' in the chrome://policy UI and policy
# exports. 'sensitiveValue' can be applied to all schema types.
#
# For some policies which have complicated schema we add either
# 'description_schema' which describes some but not necessarily all properties
# of the policy or 'url_schema' which contains the link to the expanded
# documentation.
# Note that 'description_schema' is used for documentation purposes only, but
# not for schema validation. It can be used in cases where validation is not
# desired, e.g. if the schema does not describe all properties (see
# ArcPolicy).
#
# TODO(crbug.com/960274): Add translations of the schemas.
#
# 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.
#
# Ownership:
# Each policy has an 'owners' field. This field is a list of strings which
# describe the group of people responsible for maintaining the policy and can
# help answer questions or solve issues with the policy. The entries can be
# either emails of comitters or file:// references to OWNERS files in the
# Chromium repository.
#
# 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.
#
# Atomic Policy Group:
# An atomic policy group is a group of policies that logically belong together and influence
# a certain aspect of the browser only when considered together and should be treated as a single policy
# when merging policies from multiple sources. They all have to be set in the same
# source to take effect. In case members of a policy group are set at different sources,
# only the policies from the source with the highest priority will be used.
#
'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': 'Startup',
'type': 'group',
'caption': '''Startup, Home page and New Tab page''',
'desc': '''Configure the pages to load on startup, the default home page and the default new tab page in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and prevents users from changing them.
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'.
The policy 'URLs to open on startup' is ignored unless you select 'Open a list of URLs' in 'Action on startup'.''',
'policies': [
'ShowHomeButton',
'HomepageLocation',
'HomepageIsNewTabPage',
'NewTabPageLocation',
'RestoreOnStartup',
'RestoreOnStartupURLs',
],
},
{
'name': 'RemoteAccess',
'type': 'group',
'caption': '''Remote access''',
'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',
'RemoteAccessHostAllowFileTransfer',
],
},
{
'name': 'PasswordManager',
'type': 'group',
'caption': '''Password manager''',
'desc': '''Configures the password manager.''',
'policies': [
'PasswordManagerEnabled',
'PasswordManagerAllowShowPasswords',
'PasswordLeakDetectionEnabled',
],
},
{
'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': '''HTTP authentication''',
'desc': '''Policies related to integrated HTTP authentication.''',
'policies': [
'AuthSchemes',
'DisableAuthNegotiateCnameLookup',
'EnableAuthNegotiatePort',
'AuthServerWhitelist',
'AuthNegotiateDelegateWhitelist',
'AuthNegotiateDelegateByKdcPolicy',
'GSSAPILibraryName',
'AuthAndroidNegotiateAccountType',
'AllowCrossOriginAuthPrompt',
'NtlmV2Enabled',
],
},
{
'name': 'Kerberos',
'type': 'group',
'caption': '''Kerberos''',
'desc': '''Policies related to Kerberos authentication.''',
'policies': [
'KerberosEnabled',
'KerberosRememberPasswordEnabled',
'KerberosAddAccountsAllowed',
'KerberosAccounts',
],
},
{
'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': [
'ExtensionInstallAllowlist',
'ExtensionInstallBlocklist',
'ExtensionInstallBlacklist',
'ExtensionInstallWhitelist',
'ExtensionInstallForcelist',
'ExtensionInstallSources',
'ExtensionAllowedTypes',
'ExtensionAllowInsecureUpdates',
'ExtensionSettings',
'ExtensionInstallListsMergeEnabled',
'BlockExternalExtensions',
],
},
{
# 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',
'DefaultInsecureContentSetting',
'DefaultJavaScriptSetting',
'DefaultPluginsSetting',
'DefaultPopupsSetting',
'DefaultNotificationsSetting',
'DefaultGeolocationSetting',
'DefaultMediaStreamSetting',
'DefaultWebBluetoothGuardSetting',
'DefaultKeygenSetting',
'DefaultWebUsbGuardSetting',
'AutoSelectCertificateForUrls',
'CookiesAllowedForUrls',
'CookiesBlockedForUrls',
'CookiesSessionOnlyForUrls',
'ImagesAllowedForUrls',
'ImagesBlockedForUrls',
'InsecureContentAllowedForUrls',
'InsecureContentBlockedForUrls',
'JavaScriptAllowedForUrls',
'JavaScriptBlockedForUrls',
'KeygenAllowedForUrls',
'KeygenBlockedForUrls',
'LegacySameSiteCookieBehaviorEnabled',
'LegacySameSiteCookieBehaviorEnabledForDomainList',
'PluginsAllowedForUrls',
'PluginsBlockedForUrls',
'PopupsAllowedForUrls',
'RegisteredProtocolHandlers',
'PopupsBlockedForUrls',
'NotificationsAllowedForUrls',
'NotificationsBlockedForUrls',
"WebUsbAllowDevicesForUrls",
'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',
'owners': ['tommi@chromium.org'],
'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',
'owners': ['tommi@chromium.org'],
'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': '''Google Drive''',
'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',
'AllowWakeLocks',
'AllowScreenWakeLocks',
'UserActivityScreenDimDelayScale',
'WaitForInitialUserActivity',
'PowerManagementIdleSettings',
'ScreenLockDelays',
'PowerSmartDimEnabled',
'ScreenBrightnessPercent',
'DevicePowerPeakShiftBatteryThreshold',
'DevicePowerPeakShiftDayConfig',
'DevicePowerPeakShiftEnabled',
'DeviceBootOnAcEnabled',
'DeviceAdvancedBatteryChargeModeEnabled',
'DeviceAdvancedBatteryChargeModeDayConfig',
'DeviceBatteryChargeMode',
'DeviceBatteryChargeCustomStartCharging',
'DeviceBatteryChargeCustomStopCharging',
'DeviceUsbPowerShareEnabled'
],
},
{
'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',
'VirtualKeyboardFeatures',
'StickyKeysEnabled',
'KeyboardDefaultToFunctionKeys',
'ScreenMagnifierType',
'DictationEnabled',
'SelectToSpeakEnabled',
'KeyboardFocusHighlightEnabled',
'CursorHighlightEnabled',
'CaretHighlightEnabled',
'MonoAudioEnabled',
'AccessibilityShortcutsEnabled',
'AutoclickEnabled',
'DeviceLoginScreenDefaultLargeCursorEnabled',
'DeviceLoginScreenDefaultSpokenFeedbackEnabled',
'DeviceLoginScreenDefaultHighContrastEnabled',
'DeviceLoginScreenDefaultVirtualKeyboardEnabled',
'DeviceLoginScreenDefaultScreenMagnifierType',
'DeviceLoginScreenLargeCursorEnabled',
'DeviceLoginScreenSpokenFeedbackEnabled',
'DeviceLoginScreenHighContrastEnabled',
'DeviceLoginScreenVirtualKeyboardEnabled',
'DeviceLoginScreenDictationEnabled',
'DeviceLoginScreenSelectToSpeakEnabled',
'DeviceLoginScreenCursorHighlightEnabled',
'DeviceLoginScreenCaretHighlightEnabled',
'DeviceLoginScreenMonoAudioEnabled',
'DeviceLoginScreenAutoclickEnabled',
'DeviceLoginScreenStickyKeysEnabled',
'DeviceLoginScreenKeyboardFocusHighlightEnabled',
'DeviceLoginScreenScreenMagnifierType',
'DeviceLoginScreenShowOptionsInSystemTrayMenu',
'DeviceLoginScreenAccessibilityShortcutsEnabled',
'FloatingAccessibilityMenuEnabled',
],
},
{
'name': 'Attestation',
'type': 'group',
'caption': 'Remote attestation',
'desc': 'Configure the remote attestation with TPM mechanism.',
'policies': [
'AttestationEnabledForDevice',
'AttestationEnabledForUser',
'AttestationExtensionWhitelist',
'AttestationForContentProtectionEnabled',
'DeviceWebBasedAttestationAllowedUrls',
],
},
{
'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''',
'desc': '''Configures quick unlock related policies.''',
'policies': [
'QuickUnlockModeWhitelist',
'QuickUnlockTimeout',
'PinUnlockMinimumLength',
'PinUnlockMaximumLength',
'PinUnlockWeakPinsAllowed',
'PinUnlockAutosubmitEnabled',
],
},
{
'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',
'SafeBrowsingProtectionLevel',
'SafeBrowsingWhitelistDomains',
'SafeBrowsingAllowlistDomains',
'PasswordProtectionWarningTrigger',
'PasswordProtectionLoginURLs',
'PasswordProtectionChangePasswordURL',
],
},
{
'name': 'NetworkFileShares',
'type': 'group',
'caption': '''Network File Shares settings''',
'desc': '''Configure Network File Share related policies.''',
'policies': [
'NetworkFileSharesAllowed',
'NetBiosShareDiscoveryEnabled',
'NTLMShareAuthenticationEnabled',
'NetworkFileSharesPreconfiguredShares',
],
},
{
'name': 'CloudReporting',
'type': 'group',
'caption': '''Cloud Reporting''',
'desc': '''Configure cloud reporting policies.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, these policies will be ignored.
These policies are only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
These policies are always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.''',
'policies': [
'ReportVersionData',
'ReportPolicyData',
'ReportMachineIDData',
'ReportUserIDData',
'ReportExtensionsAndPluginsData',
'ReportSafeBrowsingData',
'CloudExtensionRequestEnabled',
'CloudReportingEnabled',
],
},
{
'name': 'BrowserSwitcher',
'type': 'group',
'caption': '''<ph name="LBS_PRODUCT_NAME">Legacy Browser Support</ph>''',
'desc': '''Configure policies to switch between browsers.
Configured websites will automatically open in another browser than <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
'policies': [
'AlternativeBrowserPath',
'AlternativeBrowserParameters',
'BrowserSwitcherChromePath',
'BrowserSwitcherChromeParameters',
'BrowserSwitcherDelay',
'BrowserSwitcherEnabled',
'BrowserSwitcherExternalSitelistUrl',
'BrowserSwitcherExternalGreylistUrl',
'BrowserSwitcherKeepLastChromeTab',
'BrowserSwitcherUrlList',
'BrowserSwitcherUrlGreylist',
'BrowserSwitcherUseIeSitelist',
],
},
{
'name': 'PluginVm',
'type': 'group',
'caption': '''PluginVm''',
'policies': [
'PluginVmAllowed',
'PluginVmDataCollectionAllowed',
'PluginVmImage',
'PluginVmLicenseKey',
'PluginVmRequiredFreeDiskSpace',
'PluginVmUserId',
'UserPluginVmAllowed',
],
'desc': '''Configure <ph name="PLUGIN_VM_NAME">PluginVm</ph> related policies.''',
},
{
'name': 'Signin',
'type': 'group',
'caption': '''Sign-in settings''',
'desc': '''Controls the behavior of the sign-in screen, where users log into their accounts. Settings include who can log in, what type of accounts are allowed, what authentication methods should be used, as well as general accessibility, input method and locale settings.''',
'policies': [
'DeviceGuestModeEnabled',
'DeviceUserWhitelist',
'DeviceAllowNewUsers',
'DeviceLoginScreenDomainAutoComplete',
'DeviceShowUserNamesOnSignin',
'DeviceWallpaperImage',
'DeviceEphemeralUsersEnabled',
'LoginAuthenticationBehavior',
'DeviceSamlLoginAuthenticationType',
'DeviceTransferSAMLCookies',
'LoginVideoCaptureAllowedUrls',
'DeviceStartUpFlags',
'DeviceLoginScreenExtensions',
'DeviceLoginScreenLocales',
'DeviceLoginScreenInputMethods',
'DeviceLoginScreenSystemInfoEnforced',
'DeviceSecondFactorAuthentication',
'DeviceLoginScreenIsolateOrigins',
'DeviceLoginScreenSitePerProcess',
'DeviceLoginScreenAutoSelectCertificateForUrls',
'DeviceShowNumericKeyboardForPassword',
],
},
{
'name': 'UserAndDeviceReporting',
'type': 'group',
'caption': '''User and device reporting''',
'desc': '''Controls what kind of user and device information is reported.''',
'policies': [
'ReportDeviceVersionInfo',
'ReportDeviceBootMode',
'ReportDeviceUsers',
'ReportDeviceActivityTimes',
'ReportDeviceLocation',
'ReportDeviceNetworkInterfaces',
'ReportDeviceHardwareStatus',
'ReportDeviceSessionStatus',
'ReportDeviceGraphicsStatus',
'ReportDeviceCrashReportInfo',
'ReportDeviceOsUpdateStatus',
'ReportDeviceBoardStatus',
'ReportDeviceCpuInfo',
'ReportDeviceTimezoneInfo',
'ReportDeviceMemoryInfo',
'ReportDeviceBacklightInfo',
'ReportDevicePowerStatus',
'ReportDeviceStorageStatus',
'ReportDeviceAppInfo',
'ReportDeviceBluetoothInfo',
'ReportDeviceFanInfo',
'ReportDeviceVpdInfo',
'ReportDeviceSystemInfo',
'ReportUploadFrequency',
'ReportArcStatusEnabled',
'HeartbeatEnabled',
'HeartbeatFrequency',
'LogUploadEnabled',
'DeviceMetricsReportingEnabled',
],
},
{
'name': 'Network',
'type': 'group',
'caption': '''Network settings''',
'desc': '''Controls device-wide network configuration.''',
'policies': [
'DeviceOpenNetworkConfiguration',
'DeviceDataRoamingEnabled',
'NetworkThrottlingEnabled',
'DeviceHostnameTemplate',
'DeviceWiFiFastTransitionEnabled',
'DeviceWiFiAllowed',
'DeviceDockMacAddressSource',
],
},
{
'name': 'DeviceUpdate',
'type': 'group',
'caption': '''Device update settings''',
'desc': '''Controls how and when Chrome OS updates are applied.''',
'policies': [
'ChromeOsReleaseChannel',
'ChromeOsReleaseChannelDelegated',
'DeviceAutoUpdateDisabled',
'DeviceAutoUpdateP2PEnabled',
'DeviceAutoUpdateTimeRestrictions',
'DeviceTargetVersionPrefix',
'DeviceUpdateStagingSchedule',
'DeviceUpdateScatterFactor',
'DeviceUpdateAllowedConnectionTypes',
'DeviceUpdateHttpDownloadsEnabled',
'RebootAfterUpdate',
'MinimumRequiredChromeVersion',
'DeviceRollbackToTargetVersion',
'DeviceRollbackAllowedMilestones',
'DeviceQuickFixBuildToken',
'MinimumChromeVersionEnforced',
'MinimumChromeVersionAueMessage',
],
},
{
'name': 'PowerAndShutdown',
'type': 'group',
'caption': '''Power and shutdown''',
'desc': '''Controls settings related to power management and rebooting.''',
'policies': [
'DeviceLoginScreenPowerManagement',
'UptimeLimit',
'DeviceRebootOnShutdown',
],
},
{
'name': 'Kiosk',
'type': 'group',
'caption': '''Kiosk settings''',
'desc': '''Controls public session and kiosk account types.''',
'policies': [
'DeviceLocalAccounts',
'DeviceLocalAccountAutoLoginId',
'DeviceLocalAccountAutoLoginDelay',
'DeviceLocalAccountAutoLoginBailoutEnabled',
'DeviceLocalAccountPromptForNetworkWhenOffline',
'AllowKioskAppControlChromeVersion',
],
},
{
'name': 'Other',
'type': 'group',
'caption': '''Other''',
'desc': '''Controls miscellaneous settings including USB, bluetooth, policy refresh, developer mode and others.''',
'policies': [
'UsbDetachableWhitelist',
'DeviceAllowBluetooth',
'TPMFirmwareUpdateSettings',
'DeviceEcryptfsMigrationStrategy',
'DevicePolicyRefreshRate',
'DeviceBlockDevmode',
'DeviceAllowRedeemChromeOsRegistrationOffers',
'DeviceQuirksDownloadEnabled',
'ExtensionCacheSize',
'DeviceOffHours',
'SuggestedContentEnabled',
],
},
{
'name': 'DateAndTime',
'type': 'group',
'caption': '''Date and time''',
'desc': '''Controls clock and time zone settings.''',
'policies': [
'SystemTimezone',
'SystemTimezoneAutomaticDetection',
'SystemUse24HourClock',
]
},
{
'name': 'Display',
'type': 'group',
'caption': '''Display''',
'desc': '''Controls display settings.''',
'policies': [
'DeviceDisplayResolution',
'DisplayRotationDefault',
]
},
{
'name': 'Printing',
'type': 'group',
'caption': '''Printing''',
'desc': '''Controls printing settings.''',
'policies': [
'PrintingEnabled',
'CloudPrintProxyEnabled',
'PrintingAllowedColorModes',
'PrintingAllowedDuplexModes',
'PrintingAllowedPinModes',
'PrintingAllowedBackgroundGraphicsModes',
'PrintingColorDefault',
'PrintingDuplexDefault',
'PrintingPinDefault',
'PrintingBackgroundGraphicsDefault',
'PrintingPaperSizeDefault',
'PrintingSendUsernameAndFilenameEnabled',
'PrintingMaxSheetsAllowed',
'PrintJobHistoryExpirationPeriod',
'PrintingAPIExtensionsWhitelist',
'CloudPrintSubmitEnabled',
'DisablePrintPreview',
'PrintHeaderFooter',
'DefaultPrinterSelection',
'NativePrinters',
'NativePrintersBulkConfiguration',
'NativePrintersBulkAccessMode',
'NativePrintersBulkBlacklist',
'NativePrintersBulkWhitelist',
'DeviceNativePrinters',
'DeviceNativePrintersAccessMode',
'DeviceNativePrintersBlacklist',
'DeviceNativePrintersWhitelist',
'DevicePrintersAccessMode',
'DevicePrintersBlocklist',
'DevicePrintersAllowlist',
'PrintPreviewUseSystemDefaultPrinter',
'UserNativePrintersAllowed',
'ExternalPrintServers',
'ExternalPrintServersWhitelist',
'DeviceExternalPrintServers',
'DeviceExternalPrintServersAllowlist',
'PrinterTypeDenyList',
'PrintRasterizationMode',
'DeletePrintJobHistoryAllowed',
]
},
{
'name': 'ActiveDirectoryManagement',
'type': 'group',
'caption': '''<ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> management settings''',
'desc': '''Controls settings specific to <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> managed <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices.''',
'policies': [
'DeviceMachinePasswordChangeRate',
'DeviceUserPolicyLoopbackProcessingMode',
'DeviceKerberosEncryptionTypes',
'DeviceGpoCacheLifetime',
'DeviceAuthDataCacheLifetime',
]
},
{
'name': 'Arc',
'type': 'group',
'caption': '''Android settings''',
'desc': '''Controls settings for the Android container (ARC) and Android apps.''',
'policies': [
'ArcEnabled',
'UnaffiliatedArcAllowed',
'ArcPolicy',
'ArcAppInstallEventLoggingEnabled',
'ArcBackupRestoreServiceEnabled',
'ArcGoogleLocationServicesEnabled',
'ArcCertificatesSyncMode',
'ArcBackupRestoreEnabled',
'ArcLocationServiceEnabled',
'AppRecommendationZeroStateEnabled',
]
},
{
'name': 'Crostini',
'type': 'group',
'caption': '''Linux container''',
'desc': '''Controls settings for the Linux container (Crostini).''',
'policies': [
'VirtualMachinesAllowed',
'CrostiniAllowed',
'DeviceUnaffiliatedCrostiniAllowed',
'CrostiniExportImportUIAllowed',
'CrostiniRootAccessAllowed',
'CrostiniAnsiblePlaybook',
'CrostiniArcAdbSideloadingAllowed',
'DeviceCrostiniArcAdbSideloadingAllowed',
'CrostiniPortForwardingAllowed',
]
},
{
'name': 'GoogleAssistant',
'type': 'group',
'caption': '''Google Assistant''',
'desc': '''Controls settings for Google Assistant.''',
'policies': [
'AssistantOnboardingMode',
'VoiceInteractionContextEnabled',
'VoiceInteractionHotwordEnabled',
'VoiceInteractionQuickAnswersEnabled',
]
},
{
'name': 'WilcoDtc',
'type': 'group',
'caption': '''Wilco DTC''',
'desc': '''Controls wilco diagnostics and telemetry controller settings.''',
'policies': [
'DeviceWilcoDtcAllowed',
'DeviceWilcoDtcConfiguration',
],
},
{
'name': 'ParentalSupervision',
'type': 'group',
'caption': '''Parental supervision settings''',
'desc': '''Controls parental supervision policies, that are applied to child accounts only.''',
'policies': [
'ParentAccessCodeConfig',
'PerAppTimeLimits',
'PerAppTimeLimitsWhitelist',
'UsageTimeLimit',
],
},
{
'name': 'PrivacyScreen',
'type': 'group',
'caption': '''Privacy screen settings''',
'desc': '''Controls user and device policies for the privacy screen feature.''',
'policies': [
'DeviceLoginScreenPrivacyScreenEnabled',
'PrivacyScreenEnabled',
],
},
{
'name': 'CertificateManagement',
'type': 'group',
'caption': '''Certificate management settings''',
'desc': '''Controls user and device policies for certificate management.''',
'policies': [
'RequiredClientCertificateForDevice',
'RequiredClientCertificateForUser',
],
},
{
'name': 'SAML',
'type': 'group',
'caption': '''Saml user identity management settings''',
'desc': '''Controls settings for users authenticated via SAML with an extaernal IdP''',
'policies': [
'SamlInSessionPasswordChangeEnabled',
'SamlPasswordExpirationAdvanceWarningDays',
'SamlLockScreenReauthenticationEnabled',
'SAMLOfflineSigninTimeLimit',
],
},
{
'name': 'HomepageLocation',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:81-'],
'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. On desktop, 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 <ph name="HOMEPAGE_IS_NEW_TAB_PAGE_POLICY_NAME">HomepageIsNewTabPage</ph> is not set too.
The URL must have a standard scheme, e.g. "http://example.com" or "https://example.com".
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
'label': '''Home page URL''',
},
{
'name': 'HomepageIsNewTabPage',
'owners': ['file://components/policy/resources/OWNERS'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'NewTabPageLocation',
'owners': ['file://components/policy/resources/OWNERS'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
'label': '''New Tab page URL''',
},
{
'name': 'DefaultBrowserSettingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win7:11-', 'chrome.mac:11-', 'chrome.linux: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': '''Setting the policy to True has <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> always check whether it's the default browser on startup and, if possible, automatically register itself. Setting the policy to False stops <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from ever checking if it's the default and turns user controls off for this option.
Leaving the policy unset means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> lets users control whether it's the default and, if not, whether user notifications should appear.
Note: For <ph name="MS_WIN_NAME">Microsoft®Windows®</ph> administrators, turning this setting on only works for machines running Windows 7. For later versions, you must deploy a "default application associations" file that makes <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> the handler for the <ph name="HTTPS_PROTOCOL">https</ph> and <ph name="HTTP_PROTOCOL">http</ph> protocols (and, optionally, the <ph name="FTP_PROTOCOL">ftp</ph> protocol and other file formats). See Chrome Help ( https://support.google.com/chrome?p=make_chrome_default_win ).''',
'label': '''Set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> as Default Browser''',
},
{
'name': 'ApplicationLocaleValue',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy specifies the locale <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses.
Turning it off or leaving it unset means the locale will be the first valid locale from:
1) The user specified locale (if configured).
2) The system locale.
3) The fallback locale (en-US).''',
'label': '''Application locale''',
},
{
'name': 'AlternateErrorPagesEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses alternate error pages built into (such as "page not found"). Setting the policy to False means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> never uses alternate error pages.
If you set the policy, users can't change it. If not set, the policy is on, but users can change this setting.''',
},
{
'name': 'SearchSuggestEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 6,
'caption': '''Enable search suggestions''',
'tags': [],
'desc': '''Setting the policy to True turns on search suggestions in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s address bar. Setting the policy to False turns off these search suggestions.
If you set the policy, users can't change it. If not set, search suggestions are on at first, but users can turn them off any time.''',
},
{
'name': 'NativeWindowOcclusionEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.win:84-',
],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 675,
'caption': '''Enable Native Window Occlusion''',
'tags': [],
'desc': '''Enables native window occlusion in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If you enable this setting, to reduce CPU and power consumption <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will detect when a window is covered by other windows, and will suspend work painting pixels.
If you disable this setting <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not detect when a window is covered by other windows.
If this policy is left not set, occlusion detection will be enabled.''',
},
{
'name': 'DnsPrefetchingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 <ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph> 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': 'GloballyScopeHTTPAuthCacheEnabled',
'owners': ['file://net/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 643,
'caption': '''Enable globally scoped HTTP auth cache''',
'tags': [],
'desc': '''This policy configures a single global per profile cache with HTTP server authentication credentials.
If this policy is unset or disabled, the browser will use the default behavior of cross-site auth, which as of version 80, will be to scope HTTP server authentication credentials by top-level site, so if two sites use resources from the same authenticating domain, credentials will need to be provided independently in the context of both sites. Cached proxy credentials will be reused across sites.
If the policy is enabled, HTTP auth credentials entered in the context of one site will automatically be used in the context of another.
Enabling this policy leaves sites open to some types of cross-site attacks, and allows users to be tracked across sites even without cookies by adding entries to the HTTP auth cache using credentials embedded in URLs.
This policy is intended to give enterprises depending on the legacy behavior a chance to update their login procedures, and will be removed in the future.'''
},
{
'name': 'DNSInterceptionChecksEnabled',
'owners': ['krb', 'jdonnelly'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': True,
'id': 654,
'caption': '''DNS interception checks enabled''',
'tags': [],
'desc': '''This policy configures a local switch that can be used to disable DNS interception checks. The checks attempt to discover whether the browser is behind a proxy that redirects unknown host names.
This detection may not be necessary in an enterprise environment where the network configuration is known, since it causes some amount of DNS and HTTP traffic on start-up and each DNS configuration change.
When this policy is not set, or is enabled, the DNS interception checks are performed. When explicitly disabled, they're not.'''
},
{
'name': 'Http09OnNonDefaultPortsEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:54-77', 'chrome_os:54-77'],
'deprecated': True,
'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 is deprecated, and slated for removal in Chrome 78, with no replacement.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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-',
],
},
],
'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. Note that 'Forced' does not work for Android-on-Chrome''',
},
{
'name': 'SavingBrowserHistoryDisabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True allows users to play the dinosaur game. Setting the policy to False means users can't play the dinosaur easter egg game when device is offline.
Leaving the policy unset means users can't play the game on enrolled <ph name="PRODUCT_OS_NAME">$2<ex>GoogleChromeOS</ex></ph>, but can under other circumstances.''',
},
{
'name': 'ForceLegacyDefaultReferrerPolicy',
'owners': ['davidvc@chromium.org', 'chrome-network-stack@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 648,
'caption': '''Use a default referrer policy of no-referrer-when-downgrade.''',
'tags': [],
'desc': '''This enterprise policy is for short-term adaptation and will be removed in M86.
Chrome's default referrer policy is being strengthened from its current value of no-referrer-when-downgrade to the more secure strict-origin-when-cross-origin through a gradual rollout targeting M80 stable.
Before the rollout, this enterprise policy will have no effect. After the rollout, when this enterprise policy is enabled, Chrome's default referrer policy will be set to its pre-M80 value of no-referrer-when-downgrade.
This enterprise policy is disabled by default.''',
},
{
'name': 'RemoteAccessClientFirewallTraversal',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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 and set to one or more domains, then only clients from one of the specified domains can connect to the host.
If this setting is disabled, not set, or set to an empty list, 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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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 and set to one or more domains, then hosts can be shared only using accounts registered on one of the specified domain names.
If this setting is disabled, not set, or set to an empty list, then hosts can be shared using any account.
This setting will override RemoteAccessHostDomain, if present.
See also RemoteAccessHostClientDomainList.''',
},
{
'name': 'RemoteAccessHostRequireTwoFactor',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:22-75', 'chrome_os:41-75'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'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': 'RemoteAccessHostAllowFileTransfer',
'owners': ['jamiewalch@chromium.org', 'rkjnsn@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:74-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 534,
'caption': '''Allow remote access users to transfer files to/from the host''',
'tags': [],
'desc': '''Controls the ability of a user connected to a remote access host to transfer files between the client and the host. This does not apply to remote assistance connections, which do not support file transfer.
If this setting is disabled, file transfer will not be allowed. If this setting is enabled or not set, file transfer will be allowed.''',
},
{
'name': 'PrintingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'PrintingAllowedColorModes',
'owners': ['vkuzkokov@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'any',
'color',
'monochrome',
],
},
'items': [
{
'name': 'any',
'value': 'any',
'caption': '''Allow all color modes''',
},
{
'name': 'color',
'value': 'color',
'caption': '''Color printing only''',
},
{
'name': 'monochrome',
'value': 'monochrome',
'caption': '''Monochrome printing only''',
},
],
'supported_on': ['chrome_os:71-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'monochrome',
'id': 474,
'caption': '''Restrict printing color mode''',
'tags': [],
'desc': '''Sets printing to color only, monochrome only or no color mode restriction. Unset policy is treated as no restriction.''',
},
{
'name': 'PrintingAllowedDuplexModes',
'owners': ['vkuzkokov@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'any',
'simplex',
'duplex',
],
},
'items': [
{
'name': 'any',
'value': 'any',
'caption': '''Allow all duplex modes''',
},
{
'name': 'simplex',
'value': 'simplex',
'caption': '''Simplex printing only''',
},
{
'name': 'duplex',
'value': 'duplex',
'caption': '''Duplex printing only''',
},
],
'supported_on': ['chrome_os:71-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'duplex',
'id': 475,
'caption': '''Restrict printing duplex mode''',
'tags': [],
'desc': '''Restricts printing duplex mode. Unset policy and empty set are treated as no restriction.''',
},
{
'name': 'PrintingAllowedPinModes',
'owners': ['nikitapodguzov@chromium.org', 'skau@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'any',
'pin',
'no_pin',
],
},
'items': [
{
'name': 'any',
'value': 'any',
'caption': '''Allow printing both with and without PIN''',
},
{
'name': 'pin',
'value': 'pin',
'caption': '''Allow printing only with PIN''',
},
{
'name': 'no_pin',
'value': 'no_pin',
'caption': '''Allow printing only without PIN''',
},
],
'supported_on': ['chrome_os:75-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'pin',
'id': 525,
'caption': '''Restrict PIN printing mode''',
'tags': [],
'desc': '''Restricts PIN printing mode. Unset policy is treated as no restriction. If the mode is unavailable this policy is ignored. Note that PIN printing feature is enabled only for printers that use one of IPPS, HTTPS, USB or IPP-over-USB protocols.''',
},
{
'name': 'PrintingAllowedBackgroundGraphicsModes',
'owners': ['nikitapodguzov@chromium.org', 'skau@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'any',
'enabled',
'disabled',
],
},
'items': [
{
'name': 'any',
'value': 'any',
'caption': '''Allow printing both with and without background graphcis''',
},
{
'name': 'enabled',
'value': 'enabled',
'caption': '''Allow printing only with background graphics''',
},
{
'name': 'disabled',
'value': 'disabled',
'caption': '''Allow printing only without background graphics''',
},
],
'supported_on': ['chrome_os:79-', 'chrome.*:80-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'enabled',
'id': 621,
'caption': '''Restrict background graphics printing mode''',
'tags': [],
'desc': '''Restricts background graphics printing mode. Unset policy is treated as no restriction.''',
},
{
'name': 'PrintingColorDefault',
'owners': ['vkuzkokov@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'color',
'monochrome',
],
},
'items': [
{
'name': 'color',
'value': 'color',
'caption': '''Enable color printing''',
},
{
'name': 'monochrome',
'value': 'monochrome',
'caption': '''Enable monochrome printing''',
},
],
'supported_on': ['chrome_os:72-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'monochrome',
'id': 477,
'caption': '''Default printing color mode''',
'tags': [],
'desc': '''Overrides default printing color mode. If the mode is unavailable this policy is ignored.''',
},
{
'name': 'PrintingDuplexDefault',
'owners': ['vkuzkokov@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'simplex',
'short-edge',
'long-edge',
],
},
'items': [
{
'name': 'simplex',
'value': 'simplex',
'caption': '''Enable simplex printing''',
},
{
'name': 'short-edge',
'value': 'short-edge',
'caption': '''Enable short edge duplex printing''',
},
{
'name': 'long-edge',
'value': 'long-edge',
'caption': '''Enable long edge duplex printing''',
},
],
'supported_on': ['chrome_os:72-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'long-edge',
'id': 478,
'caption': '''Default printing duplex mode''',
'tags': [],
'desc': '''Overrides default printing duplex mode. If the mode is unavailable this policy is ignored.''',
},
{
'name': 'PrintingPinDefault',
'owners': ['nikitapodguzov@chromium.org', 'skau@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'pin',
'no_pin',
],
},
'items': [
{
'name': 'pin',
'value': 'pin',
'caption': '''Enable PIN printing by default''',
},
{
'name': 'no_pin',
'value': 'no_pin',
'caption': '''Disable PIN printing by default''',
},
],
'supported_on': ['chrome_os:75-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'pin',
'id': 526,
'caption': '''Default PIN printing mode''',
'tags': [],
'desc': '''Overrides default PIN printing mode. If the mode is unavailable this policy is ignored.''',
},
{
'name': 'PrintingBackgroundGraphicsDefault',
'owners': ['nikitapodguzov@chromium.org', 'skau@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'enabled',
'disabled',
],
},
'items': [
{
'name': 'enabled',
'value': 'enabled',
'caption': '''Enable background graphics printing mode by default''',
},
{
'name': 'disabled',
'value': 'disabled',
'caption': '''Disable background graphics printing mode by default''',
},
],
'supported_on': ['chrome_os:79-', 'chrome.*:80-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'enabled',
'id': 622,
'caption': '''Default background graphics printing mode''',
'tags': [],
'desc': '''Overrides default background graphics printing mode.''',
},
{
'name': 'PrintingPaperSizeDefault',
'owners': ['nikitapodguzov@chromium.org', 'bmalcolm@chromium.org'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'name' : {
'type': 'string',
'enum': [
'custom',
'asme_f_28x40in',
'iso_2a0_1189x1682mm',
'iso_a0_841x1189mm',
'iso_a10_26x37mm',
'iso_a1_594x841mm',
'iso_a2_420x594mm',
'iso_a3_297x420mm',
'iso_a4-extra_235.5x322.3mm',
'iso_a4-tab_225x297mm',
'iso_a4_210x297mm',
'iso_a5-extra_174x235mm',
'iso_a5_148x210mm',
'iso_a6_105x148mm',
'iso_a7_74x105mm',
'iso_a8_52x74mm',
'iso_a9_37x52mm',
'iso_b0_1000x1414mm',
'iso_b10_31x44mm',
'iso_b1_707x1000mm',
'iso_b2_500x707mm',
'iso_b3_353x500mm',
'iso_b4_250x353mm',
'iso_b5-extra_201x276mm',
'iso_b5_176x250mm',
'iso_b6_125x176mm',
'iso_b6c4_125x324mm',
'iso_b7_88x125mm',
'iso_b8_62x88mm',
'iso_b9_44x62mm',
'iso_c0_917x1297mm',
'iso_c10_28x40mm',
'iso_c1_648x917mm',
'iso_c2_458x648mm',
'iso_c3_324x458mm',
'iso_c4_229x324mm',
'iso_c5_162x229mm',
'iso_c6_114x162mm',
'iso_c6c5_114x229mm',
'iso_c7_81x114mm',
'iso_c7c6_81x162mm',
'iso_c8_57x81mm',
'iso_c9_40x57mm',
'iso_dl_110x220mm',
'jis_exec_216x330mm',
'jpn_chou2_111.1x146mm',
'jpn_chou3_120x235mm',
'jpn_chou4_90x205mm',
'jpn_hagaki_100x148mm',
'jpn_kahu_240x322.1mm',
'jpn_kaku2_240x332mm',
'jpn_oufuku_148x200mm',
'jpn_you4_105x235mm',
'na_10x11_10x11in',
'na_10x13_10x13in',
'na_10x14_10x14in',
'na_10x15_10x15in',
'na_11x12_11x12in',
'na_11x15_11x15in',
'na_12x19_12x19in',
'na_5x7_5x7in',
'na_6x9_6x9in',
'na_7x9_7x9in',
'na_9x11_9x11in',
'na_a2_4.375x5.75in',
'na_arch-a_9x12in',
'na_arch-b_12x18in',
'na_arch-c_18x24in',
'na_arch-d_24x36in',
'na_arch-e_36x48in',
'na_b-plus_12x19.17in',
'na_c5_6.5x9.5in',
'na_c_17x22in',
'na_d_22x34in',
'na_e_34x44in',
'na_edp_11x14in',
'na_eur-edp_12x14in',
'na_f_44x68in',
'na_fanfold-eur_8.5x12in',
'na_fanfold-us_11x14.875in',
'na_foolscap_8.5x13in',
'na_govt-legal_8x13in',
'na_govt-letter_8x10in',
'na_index-3x5_3x5in',
'na_index-4x6-ext_6x8in',
'na_index-4x6_4x6in',
'na_index-5x8_5x8in',
'na_invoice_5.5x8.5in',
'na_ledger_11x17in',
'na_legal-extra_9.5x15in',
'na_legal_8.5x14in',
'na_letter-extra_9.5x12in',
'na_letter-plus_8.5x12.69in',
'na_letter_8.5x11in',
'na_number-10_4.125x9.5in',
'na_number-11_4.5x10.375in',
'na_number-12_4.75x11in',
'na_number-14_5x11.5in',
'na_personal_3.625x6.5in',
'na_super-a_8.94x14in',
'na_super-b_13x19in',
'na_wide-format_30x42in',
'om_dai-pa-kai_275x395mm',
'om_folio-sp_215x315mm',
'om_invite_220x220mm',
'om_italian_110x230mm',
'om_juuro-ku-kai_198x275mm',
'om_large-photo_200x300',
'om_pa-kai_267x389mm',
'om_postfix_114x229mm',
'om_small-photo_100x150mm',
'prc_10_324x458mm',
'prc_16k_146x215mm',
'prc_1_102x165mm',
'prc_2_102x176mm',
'prc_32k_97x151mm',
'prc_3_125x176mm',
'prc_4_110x208mm',
'prc_5_110x220mm',
'prc_6_120x320mm',
'prc_7_160x230mm',
'prc_8_120x309mm',
'roc_16k_7.75x10.75in',
'roc_8k_10.75x15.5in',
'jis_b0_1030x1456mm',
'jis_b1_728x1030mm',
'jis_b2_515x728mm',
'jis_b3_364x515mm',
'jis_b4_257x364mm',
'jis_b5_182x257mm',
'jis_b6_128x182mm',
'jis_b7_91x128mm',
'jis_b8_64x91mm',
'jis_b9_45x64mm',
'jis_b10_32x45mm',
]
},
'custom_size': {
'type': 'object',
'properties': {
'width': {
'description': 'Width of the page in micrometers',
'type': 'integer',
},
'height': {
'description': 'Height of the page in micrometers',
'type': 'integer',
}
},
'required': ['width', 'height']
}
},
'required': ['name']
},
'supported_on': ['chrome.*:84-', 'chrome_os:84-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
'name': 'custom',
'custom_size': {
'width': 210000,
'height': 297000
}
},
'id': 479,
'caption': '''Default printing page size''',
'tags': [],
'desc': '''Overrides default printing page size.
<ph name="PAGE_SIZE_NAME">name</ph> should contain one of the listed formats or 'custom' if required paper size is not in the list. If 'custom' value is provided <ph name="PAGE_SIZE_CUSTOM_SIZE">custom_size</ph> property should be specified. It describes the desired height and width in micrometers. Otherwise <ph name="PAGE_SIZE_CUSTOM_SIZE">custom_size</ph> property shouldn't be specified. Policy that violates these rules is ignored.
If the page size is unavailable on the printer chosen by the user this policy is ignored.''',
},
{
'name': 'PrintingSendUsernameAndFilenameEnabled',
'owners': ['vkuzkokov@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:72-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 506,
'caption': '''Send username and filename to native printers''',
'tags': [],
'desc': '''Send username and filename to native printers server with every print job. The default is not to send.
Setting this policy to true also disables printers that use protocols other than IPPS, USB, or IPP-over-USB since username and filename shouldn't be sent over the network openly.''',
},
{
'name': 'PrintingMaxSheetsAllowed',
'owners': ['nikitapodguzov@chromium.org'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 1 },
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 10,
'id': 692,
'caption': '''Maximal number of sheets allowed to use for a single print job''',
'tags': [],
'desc': '''Specifies the maximal number of sheets user is allowed to print for a single print job.
If not set, no limitations are applied and user can print any documents.''',
},
{
'name': 'AppCacheForceEnabled',
'owners': ['enne@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:84-', 'chrome_os:84-', 'android:84-', 'webview_android:84-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 704,
'caption': '''Allows the AppCache feature to be re-enabled even if it is off by default.''',
'tags': [],
'desc': '''If set to true, this will force AppCache to be enabled, even when AppCache in Chrome is not available by default.
If unset or set to false, AppCache will follow Chrome's defaults.''',
},
{
'name': 'PrintJobHistoryExpirationPeriod',
'owners': ['nikitapodguzov@chromium.org'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': -1 },
'supported_on': ['chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 90,
'id': 625,
'caption': '''Set the time period in days for storing print jobs metadata''',
'tags': [],
'desc': '''This policy controls how long print jobs metadata is stored on the device, in days.
When this policy is set to a value of -1, the print jobs metadata is stored indefinitely. When this policy is set to a value of 0, the print jobs metadata is not stored at all. When this policy is set to any other value, it specifies the period of time during which the metadata of completed print jobs is stored on the device.
If not set, the default period of 90 days is used for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices.
The policy value should be specified in days.''',
},
{
'name': 'PrintingAPIExtensionsWhitelist',
'owners': ['nikitapodguzov@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:81-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': ['abcdefghabcdefghabcdefghabcdefgh'],
'id': 664,
'caption': '''Extensions allowed to skip confirmation dialog when sending print jobs via chrome.printing API''',
'tags': [],
'desc': '''This policy specifies the allowed extensions to skip print job confirmation dialog when they use the <ph name="PRINTING_API">Printing API</ph> function <ph name="SUBMIT_JOB_FUNCTION">chrome.printing.submitJob()</ph> for sending a print job.
If an extension is not in the list, or the list is not set, the print job confirmation dialog will be shown to the user for every <ph name="SUBMIT_JOB_FUNCTION">chrome.printing.submitJob()</ph> function call.'''
},
{
'name': 'ForceSafeSearch',
'owners': ['sergiu@chromium.org', 'igorcov@chromium.org'],
'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',
'owners': ['treib@chromium.org', 'igorcov@chromium.org'],
'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',
'owners': ['treib@chromium.org', 'igorcov@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 14,
'caption': '''Enable Safe Browsing''',
'tags': ['system-security'],
'desc': '''This policy is deprecated in M83, please use SafeBrowsingProtectionLevel instead.
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.
If the policy SafeBrowsingProtectionLevel is set, the value of the policy SafeBrowsingEnabled is ignored.
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'SafeBrowsingProtectionLevel',
'owners': ['vakh@chromium.org', 'file://components/safe_browsing/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'NoProtection',
'value': 0,
'caption': '''Safe Browsing is never active.''',
},
{
'name': 'StandardProtection',
'value': 1,
'caption': '''Safe Browsing is active in the standard mode.''',
},
{
'name': 'EnhancedProtection',
'value': 2,
'caption': '''Safe Browsing is active in the enhanced mode. This mode provides better security, but requires sharing more browsing information with Google.''',
},
],
'supported_on': [
'chrome.*:83-',
'chrome_os:83-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 684,
'caption': '''Safe Browsing Protection Level''',
'tags': ['system-security'],
'desc': '''Allows you to control whether <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s Safe Browsing feature is enabled and the mode it operates in.
If this policy is set to 'NoProtection' (value 0), Safe Browsing is never active.
If this policy is set to 'StandardProtection' (value 1, which is the default), Safe Browsing is always active in the standard mode.
If this policy is set to 'EnhancedProtection' (value 2), Safe Browsing is always active in the enhanced mode, which provides better security, but requires sharing more browsing information with Google.
If you set this policy as mandatory, users cannot change or override the Safe Browsing setting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
If this policy is left not set, Safe Browsing will operate in Standard Protection mode but users can change this setting.
See https://developers.google.com/safe-browsing for more info on Safe Browsing.''',
},
{
'name': 'MetricsReportingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.
(For Chrome OS, see DeviceMetricsReportingEnabled.)''',
},
{
'name': 'PasswordManagerEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'PasswordLeakDetectionEnabled',
'owners': ['file://components/password_manager/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:79-',
'chrome_os:79-',
'android:79-',
],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 580,
'caption': '''Enable leak detection for entered credentials''',
'tags': ['google-sharing'],
'desc': '''This policy can be used to force enable or force disable credential leak checking in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Note that even if this policy is set to True, the behavior will not trigger if Safe Browsing is disabled (either by policy or by the user). In order to force Safe Browsing on, use the <ph name="SAFE_BROWSING_ENABLED_POLICY_NAME">SafeBrowsingEnabled</ph> policy.
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, credential leak checking is allowed (but can be turned off by the user).''',
},
{
'name': 'AutoFillEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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,
},
'deprecated': True,
'example_value': False,
'id': 18,
'caption': '''Enable AutoFill''',
'tags': [],
'desc': '''This policy is deprecated in M70, please use AutofillAddressEnabled and AutofillCreditCardEnabled instead.
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',
'owners': ['file://src/components/autofill/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:69-',
'chrome_os:69-',
'android:69-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 459,
'caption': '''Enable AutoFill for addresses''',
'tags': [],
'desc': '''Setting the policy to True or leaving it unset gives users control of Autofill for addresses in the UI.
Setting the policy to False means Autofill never suggests or fills address information, nor does it save additional address information that users submit while browsing the web.''',
},
{
'name': 'AutofillCreditCardEnabled',
'owners': ['caitkp@chromium.org', 'zmin@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:63-',
'chrome_os:63-',
'android:63-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 392,
'caption': '''Enable AutoFill for credit cards''',
'tags': [],
'desc': '''Setting the policy to True or leaving it unset means users can control autofill suggestions for credit cards in the UI.
Setting the policy to False means autofill never suggests or fills credit card information, nor will it save additional credit card information that users might submit while browsing the web.''',
},
{
'name': 'DisabledPlugins',
'owners': ['file://components/policy/resources/OWNERS'],
'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 availability 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 availability 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 availability 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True turns the internal PDF viewer off in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, treats PDF files as a download, and lets users open PDFs with the default application.
Setting the policy to False or leaving it unset means that unless users turns off the PDF plugin, it will open PDF files.''',
},
{
'name': 'DisablePluginFinder',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'SyncTypesListDisabled',
'owners': ['pastarmovj@chromium.org', 'mastiz@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string'},
},
'supported_on': ['chrome.*:79-','android:79-','chrome_os:79-'],
'features': {
'per_profile': True,
'dynamic_refresh': False,
},
'example_value': ['bookmarks'],
'id': 649,
'caption': '''List of types that should be excluded from synchronization''',
'tags': ['system-security'],
'desc': '''If this policy is set all specified data types will be excluded from synchronization both for Google Sync as well as for roaming profile synchronization. This can be beneficial to reduce the size of the roaming profile or limit the type of data uploaded to the Google Sync Servers.
The current data types for this policy are: "bookmarks", "preferences", "passwords", "autofill", "themes", "typedUrls", "extensions", "apps", "tabs", "wifiConfigurations". Those names are case sensitive!''',
},
{
'name': 'RoamingProfileSupportEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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">RoamingProfileLocation</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 <ph name="ROAMING_PROFILE_SUPPORT_ENABLED_POLICY_NAME">RoamingProfileSupportEnabled</ph>.''',
'label': '''Enable the creation of roaming copies for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> profile data.''',
},
{
'name': 'RoamingProfileLocation',
'owners': ['file://components/policy/resources/OWNERS'],
'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">RoamingProfileSupportEnabled</ph> policy has been enabled. If the <ph name="ROAMING_PROFILE_SUPPORT_ENABLED_POLICY_NAME">RoamingProfileSupportEnabled</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',
'owners': ['akuegel@chromium.org', 'zmin@chromium.org'],
'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 BrowserSignin 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 directory used for other purposes, because <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> manages its contents.
See https://support.google.com/chrome/a?p=Supported_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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy has <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> use the directory you provide for storing cached files on the diskwhether or not users specify the --disk-cache-dir flag.
If not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the default cache directory, but users can change that setting with the --disk-cache-dir command line flag.
<ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> manages the contents of a volume's root directory. So to avoid data loss or other errors, do not set this policy to the root directory or any directory used for other purposes. See the variables you can use ( https://www.chromium.org/administrators/policy-list-3/user-data-directory-variables ).''',
'label': '''Set disk cache directory''',
},
{
'name': 'DiskCacheSize',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to None has <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> use the default cache size for storing cached files on the disk. Users can't change it.
If you set the policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the cache size you providewhether or not users specify the --disk-cache-size flag. (Values below a few megabytes are rounded up.)
If not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the default size. Users can change that setting using the --disk-cache-size flag.''',
'label': '''Set disk cache size''',
},
{
'name': 'MediaCacheSize',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome.*:17-71'],
'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',
'owners': ['mad@chromium.org', 'zmin@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3, 4 ],
},
'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''',
},
{
'name': 'BlockMaliciousDownloads',
'value': 4,
'caption': '''Block malicious 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 the 'Block malicious downloads' option is chosen, all downloads are allowed, except for those that Safe Browsing assesses to be malware with high confidence. Unlike with dangerous downloads, this does not take into account file type, but does take into account the host.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'AutoOpenFileTypes',
'owners': ['csharp@chromium.org', 'qinmin@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
},
},
'example_value': ['exe', 'txt'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'id': 700,
'supported_on' : ['chrome.*:84-', 'chrome_os:84-'],
'caption': '''List of file types that should be automatically opened on download''',
'tags': [],
'desc': '''List of file types that should be automatically opened on download. The leading separator should not be included when listing the file type, so list "txt" instead of ".txt".
Files with types that should be automatically opened will still be subject to the enabled safe browsing checks and won't be opened if they fail those checks.
If this policy isn't set, only file types that a user has already specified to automatically be opened will do so when downloaded.
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'AutoOpenAllowedForURLs',
'owners': ['csharp@chromium.org', 'qinmin@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
},
},
'example_value': ['example.com', 'https://ssl.server.com', 'hosting.com/good_path', 'https://server:8080/path', '.exact.hostname.com'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'id': 707,
'supported_on' : ['chrome.*:84-', 'chrome_os:84-'],
'caption': '''URLs where AutoOpenFileTypes can apply''',
'tags': [],
'desc': '''List of URLs specifying which urls <ph name="AUTO_OPEN_FILE_TYPES_POLICY_NAME">AutoOpenFileTypes</ph> will apply to. This policy has no impact on automatically open values set by users.
If this policy is set, files will only automatically open by policy if the url is part of this set and the file type is listed in <ph name="AUTO_OPEN_FILE_TYPES_POLICY_NAME">AutoOpenFileTypes</ph>. If either condition is false the download won't automatically open by policy.
If this policy isn't set, all downloads where the file type is in <ph name="AUTO_OPEN_FILE_TYPES_POLICY_NAME">AutoOpenFileTypes</ph> will automatically open.
A URL pattern has to be formatted according to https://www.chromium.org/administrators/url-blacklist-filter-format.''',
},
{
'name': 'AutoLaunchProtocolsFromOrigins',
'owners': ['csharp@chromium.org', 'engedy@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'protocol': { 'type': 'string' },
'allowed_origins': {
'type': 'array',
'items': { 'type': 'string' }
}
},
'required': ['protocol', 'allowed_origins']
}
},
'supported_on': ['chrome.*:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [{"protocol": "spotify", "allowed_origins":["example.com", "http://www.example.com:8080"]},
{"protocol": "teams", "allowed_origins":["https://example.com", "https://.mail.example.com"]},
{"protocol": "outlook", "allowed_origins":["*"]}],
'id': 722,
'caption': '''Define a list of protocols that can launch an external application from listed origins without prompting the user''',
'tags': [],
'desc': '''Allows you to set a list of protocols, and for each protocol an associated list of allowed origin patterns, that can launch an external application without prompting the user. The trailing separator should not be included when listing the protocol, so list "skype" instead of "skype:" or "skype://".
If this policy is set, a protocol will only be permitted to launch an external application without prompting by policy if the protocol is listed, and the origin of the site trying to launch the protocol matches one of the origin patterns in that protocol's allowed_origins list. If either condition is false the external protocol launch prompt will not be omitted by policy.
If this policy is not set, no protocols can launch without a prompt by default. Users may opt out of prompts on a per-protocol/per-site basis unless the <ph name="EXTERNAL_PROTOCOL_DIALOG_SHOW_ALWAYS_OPEN_CHECKBOX_POLICY_NAME">ExternalProtocolDialogShowAlwaysOpenCheckbox</ph> policy is set to Disabled. This policy has no impact on per-protocol/per-site prompt exemptions set by users.
The origin matching patterns use a similar format to those for the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy, which are documented at http://www.chromium.org/administrators/url-blacklist-filter-format.
However, origin matching patterns for this policy cannot contain "/path" or "@query" elements. Any pattern that does contain a "/path" or "@query" element will be ignored.''',
},
{
'name': 'SafeBrowsingForTrustedSourcesEnabled',
'owners': ['mad@chromium.org', 'zmin@chromium.org'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
'label': '''Safe Browsing enable state for trusted sources''',
},
{
'name': 'ClearSiteDataOnExit',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['ultrotter@google.com', 'rsorokin@google.com'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
This policy only takes effect if the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy has not been specified.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
'id': 'ProxyServerMode',
},
'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.
This policy only takes effect if the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy has not been specified.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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' and if the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy has not been specified.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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' and if the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy has not been specified.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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' and if the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy has not been specified.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'ProxyMode': {
'type': 'string',
'enum': ['direct', 'auto_detect', 'pac_script', 'fixed_servers', 'system'],
},
'ProxyPacUrl': { 'type': 'string' },
'ProxyServer': { 'type': 'string' },
'ProxyBypassList': { 'type': 'string' },
'ProxyServerMode': { '$ref': 'ProxyServerMode' },
},
},
'supported_on': [
'chrome.*:18-',
'chrome_os:18-',
'android:30-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': { "ProxyMode": "direct", "ProxyPacUrl": "https://internal.site/example.pac", "ProxyServer": "123.123.123.123:8080", "ProxyBypassList": "https://www.example1.com,https://www.example2.com,https://internalsite/", "ProxyServerMode": 2 },
'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.
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.
If the <ph name="PROXY_SETTINGS_POLICY_NAME">ProxySettings</ph> policy is set, it will override any of the individual policies <ph name="PROXY_MODE_POLICY_NAME">ProxyMode</ph>, <ph name="PROXY_PAC_URL_POLICY_NAME">ProxyPacUrl</ph>, <ph name="PROXY_SERVER_POLICY_NAME">ProxyServer</ph>, <ph name="PROXY_BYPASS_POLICY_NAME">ProxyBypassList</ph> and <ph name="PROXY_SERVER_MODE_POLICY_NAME">ProxyServerMode</ph>.
The <ph name="PROXY_MODE_PROXY_SETTINGS_FIELD">ProxyMode</ph> field 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.
The <ph name="PROXY_PAC_URL_PROXY_SETTINGS_FIELD">ProxyPacUrl</ph> field is a URL to a proxy .pac file.
The <ph name="PROXY_SERVER_PROXY_SETTINGS_FIELD">ProxyServer</ph> field is a URL of the proxy server.
The <ph name="PROXY_BYPASS_LIST_PROXY_SETTINGS_FIELD">ProxyBypassList</ph> field is a list of proxy hosts that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will bypass.
The <ph name="PROXY_SERVER_MODE_PROXY_SETTINGS_FIELD">ProxyServerMode</ph> field is deprecated in favor of the field 'ProxyMode'. It 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 the value 'direct' as 'ProxyMode', a proxy will never be used and all other fields will be ignored.
If you choose the value 'system' as 'ProxyMode', the systems's proxy will be used and all other fields will be ignored.
If you choose the value 'auto_detect' as 'ProxyMode', all other fields will be ignored.
If you choose the value 'fixed_server' as 'ProxyMode', the 'ProxyServer' and 'ProxyBypassList' fields will be used.
If you choose the value 'pac_script' as 'ProxyMode', the 'ProxyPacUrl' and 'ProxyBypassList' fields will be used.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:9-','chrome_os:62-'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','webview_android:49-','chrome_os:62-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '*.example.com,example.com',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'],
'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': 'AuthNegotiateDelegateByKdcPolicy',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.linux:74-','chrome.mac:74-','chrome_os:74-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 528,
'caption': '''Use KDC policy to delegate credentials.''',
'tags': ['website-sharing'],
'desc': '''Controls whether approval by KDC policy is respected to decide whether to delegate <ph name="KERBEROS">Kerberos</ph> tickets.
If this policy is true, HTTP authentication respects approval by KDC policy, i.e. Chrome only delegates credentials if the KDC sets <ph name="OK_AS_DELEGATE">OK-AS-DELEGATE</ph> on a service ticket. Please see https://tools.ietf.org/html/rfc5896.html for more information. Service should also match 'AuthNegotiateDelegateWhitelist' policy.
If this policy is not set or set to false, KDC policy is ignored on supported platforms and 'AuthNegotiateDelegateWhitelist' policy only is respected.
On Windows KDC policy is always respected.''',
},
{
'name': 'GSSAPILibraryName',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:13-','chrome_os:62-'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Enable NTLMv2 authentication.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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,
'deprecated': True,
'caption': '''Configure extension installation blacklist''',
'tags': [],
'desc': '''This policy is deprecated, please use the '<ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME">ExtensionInstallBlocklist</ph>' policy instead.
Setting the policy specifies which extensions users can't install. Extensions already installed are turned off, if prohibited, without a way for users to turn them on. If a prohibited extension gets removed from the blocked list, it's automatically re-enabled. Use a value of <ph name="ALL_EXTENSIONS">*</ph> to prohibit all extensions, except those explicitly allowed.
If the policy is unset, users 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': 'ExtensionInstallBlocklist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:86-', 'chrome_os:86-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['extension_id1', 'extension_id2'],
'id': 740,
'caption': '''Configure extension installation blocklist''',
'tags': [],
'desc': '''Allows you to specify which extensions the users can NOT install. Extensions already installed will be disabled if blocked, without a way for the user to enable them. Once an extension disabled due to the blocklist is removed from it, it will automatically get re-enabled.
A blocklist value of '*' means all extensions are blocked unless they are explicitly listed in the allowlist.
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': 'ExtensionInstallAllowlist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:86-', 'chrome_os:86-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['extension_id1', 'extension_id2'],
'id': 738,
'caption': '''Configure extension installation allow list''',
'tags': [],
'desc': '''Setting the policy specifies which extensions are not subject to the blocklist.
A blocklist value of <ph name="ALL_EXTENSIONS">*</ph> means all extensions are blocked and users can only install extensions listed in the allow list.
By default, all extensions are allowed. But, if you prohibited extensions by policy, use the list of allowed extensions to change that policy.''',
'label': '''Extension IDs to exempt from the blocklist''',
},
{
'name': 'ExtensionInstallWhitelist',
'owners': ['file://components/policy/resources/OWNERS'],
'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,
'deprecated': True,
'caption': '''Configure extension installation whitelist''',
'tags': [],
'desc': '''This policy is deprecated, please use the '<ph name="EXTENSION_INSTALL_ALLOWLIST_POLICY_NAME">ExtensionInstallAllowlist</ph>' policy instead.
Setting the policy specifies which extensions are exempt from the list of prohibited extensions. Use a value of <ph name="ALL_EXTENSIONS">*</ph> for <ph name="EXTENSION_INSTALL_BLACKLIST_POLICY_NAME">ExtensionInstallBlacklist</ph> to prohibit all extensions, and users can only install explicitly allowed extensions. By default, all extensions are allowed. But, if you prohibited extensions by policy, use the list of allowed extensions to change that policy.''',
'label': '''Extension IDs to exempt from the blacklist''',
},
{
'name': 'ExtensionInstallForcelist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:9-', 'chrome_os:11-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;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': '''Setting the policy specifies a list of apps and extensions that install silently, without user interaction, and which users can't uninstall or turn off. Permissions are granted implicitly, including for the enterprise.deviceAttributes and enterprise.platformKeys extension APIs. (These 2 APIs aren't available to apps and extensions that aren't force-installed.)
Leaving the policy unset means no apps or extensions are autoinstalled, and users can uninstall any app or extension in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy superseeds <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME">ExtensionInstallBlocklist</ph> policy. If a previously force-installed app or extension is removed from this list, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> automatically uninstalls it.
For Windows® instances not joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain, forced installation is limited to apps and extensions in the Chrome Web Store.
The source code of any extension may be altered by users through developer tools, potentially rendering the extension dysfunctional. If this is a concern, set the <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME">DeveloperToolsDisabled</ph> policy.
Each list item of the policy is a string that contains an extension ID and, optionally, an "update" URL separated by a semicolon (;). The extension ID is the 32-letter string found, for example, on chrome://extensions when in Developer mode. If specified, the "update" URL should point to an Update Manifest XML document ( https://developer.chrome.com/extensions/autoupdate ). By default, the Chrome Web Store's update URL is used. The "update" URL set in this policy is only used for the initial installation; subsequent updates of the extension use the update URL in the extension's manifest.
Note: This policy doesn't apply to Incognito mode. Read about hosting extensions ( https://developer.chrome.com/extensions/hosting ).''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy specifies which URLs may install extensions, apps, and themes. Before <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 21, 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. Afterwards, such files must be downloaded and dragged to 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 can 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 (the referrer) must be allowed by these patterns.
<ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME">ExtensionInstallBlocklist</ph> takes precedence over this policy. That is, an extension on the blocklist 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': 'ExtensionAllowInsecureUpdates',
'owners': ['waffles@chromium.org', 'rdevlin.cronin@chromium.org'],
'type': 'main',
'deprecated': True,
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:73-77', 'chrome_os:73-77'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 516,
'caption': '''Allow insecure algorithms in integrity checks on extension updates and installs''',
'tags': ['system-security'],
'desc': '''Setting the policy to Enabled means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> permits installation and updates for extensions hosted outside the Chrome Web Store, the content of which might only be minimally protected.
Setting the policy to Disabled means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> won't permit fresh installation of (and updates to) such extensions. The policy has no effect in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 78 and later.
Leaving this policy unset means it is Enabled in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 73 to 75, and Disabled in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 76 and 77.''',
},
{
'name': 'ExtensionAllowedTypes',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy controls which apps and extensions may be installed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, which hosts they can interact with, and limits runtime access.
Leaving the policy unset results in no restrictions on the acceptable extension and app types.
Extensions and apps which have a type that's not on the list won't be installed. Each value should be one of these strings:
* "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.
Versions earlier than 75 that use multiple comma separated extension IDs aren't supported and are skipped. The rest of the policy applies.
Note: This policy also affects extensions and apps to be force-installed using <ph name="EXTENSION_INSTALL_FORCELIST_POLICY_NAME">ExtensionInstallForcelist</ph>.''',
'label': '''Types of extensions/apps that are allowed to be installed''',
},
{
'name': 'ExtensionSettings',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'dict',
'schema': {
'type': 'object',
'patternProperties': {
'^[a-p]{32}(?:,[a-p]{32})*,?$': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed', 'force_installed', 'normal_installed', 'removed']
},
'update_url': { 'type': 'string' },
'blocked_permissions': {
'type': 'array',
'items': {
'type': 'string',
'pattern': '^[a-z][a-zA-Z0-9.]*$',
},
'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',
'description': '''text that will be displayed to the user in the chrome webstore if installation is blocked.''',
}
},
},
'^update_url:': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed', 'removed']
},
'blocked_permissions': {
'$ref': 'ListOfPermissions',
},
'allowed_permissions': {
'$ref': 'ListOfPermissions',
},
},
},
},
'properties': {
'*': {
'type': 'object',
'properties': {
'installation_mode': {
'type': 'string',
'enum': ['blocked', 'allowed', 'removed']
},
'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'
}
},
},
},
},
'url_schema': 'https://www.chromium.org/administrators/policy-list-3/extension-settings-full',
'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'],
},
'cdefghijklmnopabcdefghijklmnopab' : {
'installation_mode': 'blocked',
'blocked_install_message': 'Custom error message.',
},
'defghijklmnopabcdefghijklmnopabc,efghijklmnopabcdefghijklmnopabcd' : {
'installation_mode': 'blocked',
'blocked_install_message': 'Custom error message.',
},
'update_url:https://www.example.com/update.xml': {
'blocked_permissions': ['wallpaper'],
'allowed_permissions': ['downloads'],
'installation_mode': 'allowed',
},
'fghijklmnopabcdefghijklmnopabcde' : {
'installation_mode': 'removed',
'blocked_install_message': 'Custom removal message.',
},
'*': {
'installation_mode': 'blocked',
'blocked_permissions': ['downloads', 'bookmarks'],
'install_sources': ['https://company-intranet/chromeapps'],
'allowed_types': ['hosted_app'],
'runtime_blocked_hosts': ['*://*.example.com'],
'runtime_allowed_hosts': ['*://good.example.com'],
'blocked_install_message': 'Custom error message.',
},
},
'id': 278,
'caption': 'Extension management settings',
'tags': [],
'desc': '''Setting the policy controls extension management settings for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, including any controlled by existing extension-related policies. The policy supersedes any legacy policies that might be set.
This policy maps an extension ID or an update URL to its specific setting only. A default configuration can be set for the special ID <ph name="DEFAULT_SCOPE">"*"</ph>, which applies to all extensions without a custom configuration in this policy. With an update URL, configuration applies to extensions with the exact update URL stated in the extension manifest ( http://support.google.com/chrome/a?p=Configure_ExtensionSettings_policy ).
Note: For Windows® instances 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.''',
},
{
'name': 'ExtensionInstallListsMergeEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*: 75-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 544,
'caption': '''Merge extension install list policies from multiple sources''',
'tags': [],
'desc': '''Enables merging of the extension install list policies <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME">ExtensionInstallBlocklist</ph>, <ph name="EXTENSION_INSTALL_ALLOWLIST_POLICY_NAME">ExtensionInstallAllowlist</ph> and <ph name="EXTENSION_INSTALL_FORCELIST_POLICY_NAME">ExtensionInstallForcelist</ph>.
If you enable this setting, the values from machine platform policy, machine cloud policy and user platform policy are merged into a single list and used as a whole instead of only using the values from the single source with highest priority.
If you disable this setting or leave it unset, only list entries from the highest priority source are taken and all other sources are shown as conflicts but ignored.''',
},
{
'name': 'BlockExternalExtensions',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': True,
'id': 637,
'caption': '''Blocks external extensions from being installed''',
'tags': [],
'desc': '''Controls external extensions installation.
Enabling this setting blocks external extensions from being installed.
Disabling this setting or leaving it unset allows external extensions to be installed.
External extensions and their installation are documented at https://developer.chrome.com/apps/external_extensions.
''',
},
{
'name': 'ShowHomeButton',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 0 (the default) means you can access the developer tools and the JavaScript console, but not in the context of extensions installed by enterprise policy. Setting the policy to 1 means you can access the developer tools and the JavaScript console in all contexts, including that of extensions installed by enterprise policy. Setting the policy to 2 means you can't acess developer tools, and you can't inspect website elements.
This setting also turns off keyboard shortcuts and menu or context menu entries to open developer tools or the JavaScript console.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'RestoreOnStartupURLs',
'owners': ['file://components/policy/resources/OWNERS'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'BlockThirdPartyCookies',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:10-', 'chrome_os:11-', 'android:83-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 39,
'caption': '''Block third party cookies''',
'tags': [],
'desc': '''Setting the policy to True prevents webpage elements that aren't from the domain that's in the browser's address bar from setting cookies. Setting the policy to False lets those elements set cookies and prevents users from changing this setting.
Leaving it unset turns third-party cookies on, but users can change this setting.''',
},
{
'name': 'DefaultSearchProviderEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 40,
'caption': '''Enable the default search provider''',
'tags': [],
'desc': '''Setting the policy to Enabled means a default search is performed when a user enters non-URL text in the address bar. To specify the default search provider, set the rest of the default search policies. If you leave those policies empty, the user can choose the default provider. Setting the policy to Disabled means there's no search when the user enters non-URL text in the address bar.
If you set the policy, users can't change it in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. If not set, the default search provider is on, and users can set the search provider list.
Note: This policy is only on Windows® instances that are joined to a <ph name="MS_AD_NAME">Microsoft®ActiveDirectory®</ph> domain, Windows 10 Pro, or Chrome Enterprise Upgrade and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'DefaultSearchProviderContextMenuAccessAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:85-', 'chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 715,
'caption': '''Allow default search provider context menu search access''',
'tags': [],
'desc': '''Enables the use of a default search provider on the context menu.
If you set this policy to disabled the search context menu item that relies on your default search provider will not be available.
If this policy is set to enabled or not set, the context menu item for your default search provider will be available.
The policy value is only appled when the <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> policy is enabled, and is not applicable otherwise.''',
},
{
'name': 'DefaultSearchProviderName',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'My Intranet Search',
'id': 41,
'caption': '''Default search provider name''',
'tags': ['website-sharing'],
'desc': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_NAME_POLICY_NAME">DefaultSearchProviderName</ph> specifies the default search provider's name.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_NAME_POLICY_NAME">DefaultSearchProviderName</ph> unset means the hostname specified by the search URL is used.''',
},
{
'name': 'DefaultSearchProviderKeyword',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'mis',
'id': 42,
'caption': '''Default search provider keyword''',
'tags': [],
'desc': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_KEYWORD_POLICY_NAME">DefaultSearchProviderKeyword</ph> specifies the keyword or shortcut used in the address bar to trigger the search for this provider.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_KEYWORD_POLICY_NAME">DefaultSearchProviderKeyword</ph> unset means no keyword activates the search provider.''',
},
{
'name': 'DefaultSearchProviderSearchURL',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_SEARCH_URL_POLICY_NAME">DefaultSearchProviderSearchURL</ph> specifies the URL of the search engine used during a default search. The URL should include the string <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, replaced in the query by the user's search terms.
You can specify Google's search URL 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>.''',
},
{
'name': 'DefaultSearchProviderSuggestURL',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_SUGGEST_URL_POLICY_NAME">DefaultSearchProviderSuggestURL</ph> specifies the URL of the search engine to provide search suggestions. The URL should include the string <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, replaced in the query by the user's search terms.
You can specify Google's search URL as: <ph name="GOOGLE_SUGGEST_SEARCH_URL">'{google:baseURL}complete/search?output=chrome&amp;q={searchTerms}'</ph>.''',
},
{
'name': 'DefaultSearchProviderInstantURL',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 'https://search.my.company/favicon.ico',
'id': 46,
'caption': '''Default search provider icon''',
'tags': [],
'desc': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_ICON_URL_POLICY_NAME">DefaultSearchProviderIconURL</ph> specifies the default search provider's favorite icon URL.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_ICON_URL_POLICY_NAME">DefaultSearchProviderIconURL</ph> unset means there's no icon for the search provider.''',
},
{
'name': 'DefaultSearchProviderEncodings',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:8-',
'chrome_os:11-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, setting <ph name="DEFAULT_SEARCH_PROVIDER_ENCODINGS_POLICY_NAME">DefaultSearchProviderEncodings</ph> specifies the character encodings supported by the search provider. Encodings are code page names such as UTF-8, GB2312, and ISO-8859-1. They're tried in the order provided.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_ENCODINGS_POLICY_NAME">DefaultSearchProviderEncodings</ph> unset puts UTF-8 in use.''',
},
{
'name': 'DefaultSearchProviderAlternateURLs',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:24-',
'chrome_os:24-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_ALTERNATE_URLS_POLICY_NAME">DefaultSearchProviderAlternateURLs</ph> specifies a list of alternate URLs for extracting search terms from the search engine. The URLs should include the string <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_ALTERNATE_URLS_POLICY_NAME">DefaultSearchProviderAlternateURLs</ph> unset means no alternate URLs are used to extract search terms.''',
},
{
'name': 'DefaultSearchProviderSearchTermsReplacementKey',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:29-',
'chrome_os:29-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_IMAGE_URL_POLICY_NAME">DefaultSearchProviderImageURL</ph> specifies the URL of the search engine used for image search. (If <ph name="DEFAULT_SEARCH_PROVIDER_IMAGE_URL_POST_PARMS_POLICY_NAME">DefaultSearchProviderImageURLPostParams</ph> is set, then image search requests use the POST method instead.)
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_IMAGE_URL_POLICY_NAME">DefaultSearchProviderImageURL</ph> unset means no image search is used.''',
},
{
'name': 'DefaultSearchProviderNewTabURL',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:30-',
'chrome_os:30-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_NEW_TAB_URL_POLICY_NAME">DefaultSearchProviderNewTabURL</ph> specifies the URL of the search engine used to provide a New Tab page.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_NEW_TAB_URL_POLICY_NAME">DefaultSearchProviderNewTabURL</ph> unset means no new tab page is provided.''',
},
{
'name': 'DefaultSearchProviderSearchURLPostParams',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:29-',
'chrome_os:29-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_SEARCH_URL_POST_PARAMS_POLICY_NAME">DefaultSearchProviderSearchURLPostParams</ph> specifies the parameters when searching a URL with POST. It consists of comma-separated, name-value pairs. If a value is a template parameter, such as <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, real search terms data replaces it.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_SEARCH_URL_POST_PARAMS_POLICY_NAME">DefaultSearchProviderSearchURLPostParams</ph> unset means search requests are sent using the GET method.''',
},
{
'name': 'DefaultSearchProviderSuggestURLPostParams',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:29-',
'chrome_os:29-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_SUGGEST_URL_POST_PARAMS_POLICY_NAME">DefaultSearchProviderSuggestURLPostParams</ph> specifies the parameters during suggestion search with POST. It consists of comma-separated, name-value pairs. If a value is a template parameter, such as <ph name="SEARCH_TERM_MARKER">'{searchTerms}'</ph>, real search terms data replaces it.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_SUGGEST_URL_POST_PARAMS_POLICY_NAME">DefaultSearchProviderSuggestURLPostParams</ph> unset unset means suggest search requests are sent using the GET method.''',
},
{
'name': 'DefaultSearchProviderInstantURLPostParams',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': [
'chrome.*:29-',
'chrome_os:29-',
'android:30-',
],
'future_on': [ 'ios' ],
'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': '''If <ph name="DEFAULT_SEARCH_PROVIDER_ENABLED_POLICY_NAME">DefaultSearchProviderEnabled</ph> is on, then setting <ph name="DEFAULT_SEARCH_PROVIDER_IMAGE_URL_POST_PARMS_POLICY_NAME">DefaultSearchProviderImageURLPostParams</ph> specifies the parameters during image search with POST. It consists of comma-separated, name-value pairs. If a value is a template parameter, such as {imageThumbnail}, real image thumbnail data replaces it.
Leaving <ph name="DEFAULT_SEARCH_PROVIDER_IMAGE_URL_POST_PARMS_POLICY_NAME">DefaultSearchProviderImageURLPostParams</ph> unset means image search request is sent using the GET method.''',
},
{
'name': 'DefaultCookiesSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Unless the <ph name="RESTORE_ON_STARTUP_POLICY_NAME">RestoreOnStartup</ph> policy is set to permanently restore URLs from previous sessions, then setting <ph name="COOKIES_SESSION_ONLY_FOR_URLS_POLICY_NAME">CookiesSessionOnlyForUrls</ph> lets you make a list of URL patterns that specify sites that can and can't set cookies for one session.
Leaving the policy unset results in the use of <ph name="DEFAULT_COOKIES_SETTINGS_POLICY_NAME">DefaultCookiesSetting</ph> for all sites, if it's set. If not, the user's personal setting applies. URLs not covered by the patterns specified also result in the use of defaults.
If <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running in Background mode, the session might stay active until the user exits the browser, not just closes the last window. See <ph name="BACKGROUND_MODE_ENABLED_POLICY_NAME">BackgroundModeEnabled</ph> for details about configuring this behavior.
While no specific policy takes precedence, see <ph name="COOKIES_BLOCKED_FOR_URLS_POLICY_NAME">CookiesBlockedForUrls</ph> and <ph name="COOKIES_ALLOWED_FOR_URLS_POLICY_NAME">CookiesAllowedForUrls</ph>. URL patterns among these 3 policies must not conflict.''',
},
{
'name': 'DefaultImagesSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 1 lets all websites display images. Setting the policy to 2 denies image display.
Leaving it unset allows images, but users can change this setting.''',
},
{
'name': 'DefaultJavaScriptSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 1 lets websites run JavaScript. Setting the policy to 2 denies JavaScript.
Leaving it unset allows JavaScript, but users can change this setting.''',
},
{
'name': 'DefaultPluginsSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 1 lets you set whether all websites can automatically run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin. Setting the policy to 2 denies this plugin for all websites. Click to play lets the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin run, but users click on the placeholder to start it.
Leaving the policy unset uses <ph name="BLOCK_PLUGINS_POLICY_NAME">BlockPlugins</ph> and lets users change this setting.
Note: Automatic playback is only for domains explicitly listed in the <ph name="PLUGINS_ALLOWED_FOR_URLS_POLICY_NAME">PluginsAllowedForUrls</ph> policy. To turn automatic playback on for all sites, add http://* and https://* to this list.''',
},
{
'name': 'DefaultPopupsSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 52,
'caption': '''Default popups setting''',
'tags': [],
'desc': '''Setting the policy to 1 lets websites display pop-ups. Setting the policy to 2 denies pop-ups.
Leaving it unset means <ph name="BLOCK_POPUPS_POLICY_NAME">BlockPopups</ph> applies, but users can change this setting.''',
},
{
'name': 'DefaultNotificationsSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 1 lets websites display desktop notifications. Setting the policy to 2 denies desktop notifications.
Leaving it unset means <ph name="ASK_NOTIFICATIONS_POLICY_NAME">AskNotifications</ph> applies, but users can change this setting.''',
},
{
'name': 'DefaultGeolocationSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 1,
'id': 54,
'caption': '''Default geolocation setting''',
'tags': ['website-sharing'],
'desc': '''Setting the policy to 1 lets sites track the users' physical location as the default state. Setting the policy to 2 denies this tracking by default. You can set the policy to ask whenever a site wants to track the users' physical location.
Leaving the policy unset means the <ph name="ASK_GEOLOCATION_POLICY_NAME">AskGeolocation</ph> policy applies, but users can change this setting.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to 3 lets websites ask for access to nearby Bluetooth devices. Setting the policy to 2 denies access to nearby Bluetooth devices.
Leaving the policy unset lets sites ask for access, but users can change this setting.''',
},
{
'name': 'DefaultKeygenSetting',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['reillyg@chromium.org', 'odejesush@chromium.org'],
'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': '''Setting the policy to 3 lets websites ask for access to connected USB devices. Setting the policy to 2 denies access to connected USB devices.
Leaving it unset lets websites ask for access, but users can change this setting.''',
},
{
'name': 'WebUsbAllowDevicesForUrls',
'owners': ['reillyg@chromium.org', 'odejesush@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'devices': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'vendor_id': { 'type': 'integer' },
'product_id': { 'type': 'integer' }
}
}
},
'urls': {
'type': 'array',
'items': { 'type': 'string' }
}
},
'required': ['devices', 'urls']
}
},
'supported_on': ['android:75-', 'chrome_os:74-', 'chrome.*:74-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [{
'devices': [{'vendor_id': 1234, 'product_id': 5678}],
'urls': ['https://google.com', 'https://requesting.com,https://embedded.com'],
}],
'id': 486,
'caption': '''Automatically grant permission to these sites to connect to USB devices with the given vendor and product IDs.''',
'tags': ['website-sharing'],
'desc': '''Setting the policy lets you make a list of URL patterns that specify which sites are automatically granted permission to access a USB device with the given vendor and product IDs. Each list item must have devices and URLs for the policy to be valid. Each item in devices can have a vendor ID and product ID field. Any ID you omit is treated as a wildcard with one exception: You can't specify a product ID without also specifying a vendor ID. Otherwise, the policy won't be valid.
The USB permission model uses the requesting URL and the embedding URL (of the top-level frame site) to permit the requesting URL to access the USB device. The requesting URL might differ from the embedding URL when the requesting site loads in an iframe. So, the "urls" field can contain up to 2 strings delimited by a comma to specify these URLs. If you only specify one, then access to the corresponding USB devices is granted when the requesting site's URL matches this URL, regardless of embedding status. The URLs in "urls" must be valid URLs, or the policy is ignored.
Leaving the policy unset means <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME">DefaultWebUsbGuardSetting</ph> applies, if it's set. If not, the user's personal setting applies.
URL patterns in this policy shouldn't conflict with those configured through <ph name="WEB_USB_BLOCKED_FOR_URLS_POLICY_NAME">WebUsbBlockedForUrls</ph>. If they do, this policy takes precedence over <ph name="WEB_USB_BLOCKED_FOR_URLS_POLICY_NAME">WebUsbBlockedForUrls</ph> and <ph name="WEB_USB_ASK_FOR_URLS_POLICY_NAME">WebUsbAskForUrls</ph>.
Values for this policy and <ph name="DEVICE_WEB_USB_ALLOW_DEVICES_FOR_URLS_POLICY_NAME">DeviceWebUsbAllowDevicesForUrls</ph> merge.''',
},
{
'name': 'DeviceLoginScreenWebUsbAllowDevicesForUrls',
'owners': ['reillyg@chromium.org', 'odejesush@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'devices': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'vendor_id': { 'type': 'integer' },
'product_id': { 'type': 'integer' }
}
}
},
'urls': {
'type': 'array',
'items': { 'type': 'string' }
}
},
'required': ['devices', 'urls']
}
},
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': [{
'devices': [{'vendor_id': 1234, 'product_id': 5678}],
'urls': ['https://google.com', 'https://requesting.com,https://embedded.com'],
}],
'id': 603,
'caption': '''Automatically grant permission to these sites to connect to USB devices with the given vendor and product IDs on the login screen.''',
'tags': ['website-sharing'],
'desc': '''Allows you to set a list of urls that specify which sites will automatically be granted permission to access a USB device with the given vendor and product IDs on the login screen. Each item in the list must contain both devices and urls in order for the policy to be valid. Each item in devices can contain a vendor ID and product ID field. Any ID that is omitted is treated as a wildcard with one exception, and that exception is that a product ID cannot be specified without a vendor ID also being specified. Otherwise, the policy will not be valid and will be ignored.
The USB permission model uses the URL of the requesting site ("requesting URL") and the URL of the top-level frame site ("embedding URL") to grant permission to the requesting URL to access the USB device. The requesting URL may be different than the embedding URL when the requesting site is loaded in an iframe. Therefore, the "urls" field can contain up to two URL strings delimited by a comma to specify the requesting and embedding URL respectively. If only one URL is specified, then access to the corresponding USB devices will be granted when the requesting site's URL matches this URL regardless of embedding status. The URLs in "urls" must be valid URLs, otherwise the policy will be ignored.
If this policy is left not set, the global default value will be used for all sites (no automatic access).''',
},
{
'name': 'WebUsbAskForUrls',
'owners': ['reillyg@chromium.org', 'odejesush@chromium.org'],
'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': '''Setting the policy lets you list the URL patterns that specify which sites can ask users to grant them access to a USB device.
Leaving the policy unset means <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME">DefaultWebUsbGuardSetting</ph> applies for all sites, if it's set. If not, users' personal settings apply.
URL patterns must not conflict with <ph name="WEB_USB_ASK_FOR_URLS_POLICY_NAME">WebUsbAskForUrls</ph>. Neither policy takes precedence if a URL matches with both.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'WebUsbBlockedForUrls',
'owners': ['reillyg@chromium.org', 'odejesush@chromium.org'],
'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': '''Setting the policy lets you list the URL patterns that specify which sites can't ask users to grant them access to a USB device.
Leaving the policy unset means <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME">DefaultWebUsbGuardSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
URL patterns can't conflict with <ph name="WEB_USB_ASK_FOR_URLS_POLICY_NAME">WebUsbAskForUrls</ph>. Neither policy takes precedence if a URL matches with both.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'AutoSelectCertificateForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'id': 'CertPrincipalFields',
'properties': {
'CN': { 'type': 'string'},
'L': { 'type': 'string'},
'O': { 'type': 'string'},
'OU': { 'type': 'string'},
}
},
'SUBJECT': {
'$ref': 'CertPrincipalFields',
}
}
}
}
}
},
'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", "L": "certificate issuer location", "O": "certificate issuer org", "OU": "certificate issuer org unit"}, "SUBJECT":{"CN":"certificate subject name", "L": "certificate subject location", "O": "certificate subject org", "OU": "certificate subject org unit"}}}'],
'id': 102,
'caption': '''Automatically select client certificates for these sites''',
'tags': ['website-sharing'],
'desc': '''Setting the policy lets you make a list of URL patterns that specify sites for which Chrome can automatically select a client certificate. The value is an array of stringified JSON dictionaries, each with the form <ph name="AUTO_SELECT_CERTIFICATE_FOR_URLS_EXAMPLE">{ "pattern": "$URL_PATTERN", "filter" : $FILTER }</ph>, where <ph name="URL_PATTERN_PLACEHOLDER">$URL_PATTERN</ph> is a content setting pattern. <ph name="FILTER_PLACEHOLDER">$FILTER</ph> restricts the client certificates the browser automatically selects from. Independent of the filter, only certificates that match the server's certificate request are selected.
For example, if <ph name="FILTER_PLACEHOLDER">$FILTER</ph> has:
* <ph name="AUTO_SELECT_CERTIFICATE_FOR_URLS_FILTER_EXAMPLE">{ "ISSUER": { "CN": "$ISSUER_CN" } }</ph>, only client certificates issued by a certificate with the CommonName <ph name="ISSUER_CN_PLACEHOLDER">$ISSUER_CN</ph>are selected.
* <ph name="ISSUER_STRING_VALUE">"ISSUER"</ph> and <ph name="SUBJECT_STRING_VALUE">"SUBJECT"</ph> sections, only matching client certificates are selected.
* ("O"), a certificate needs at least one organization matching the specified value to be selected. * ("OU"), a certificate needs at least one organizational unit matching the specified value to be selected.
* <ph name="EMPTY_DICTIONARY">{}</ph>, the selection of client certificates is not additionally restricted.
Leaving the policy unset means there's no autoselection for any site.''',
},
{
'name': 'DeviceLoginScreenAutoSelectCertificateForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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 <ph name="DEVICE_LOGIN_SCREEN_AUTO_SELECT_CERTIFICATE_FOR_URLS_EXAMPLE">'{ "pattern": "$URL_PATTERN", "filter" : $FILTER }'</ph>, where <ph name="URL_PATTERN_PLACEHOLDER">$URL_PATTERN</ph> is a content setting pattern. <ph name="FILTER_PLACEHOLDER">$FILTER</ph> 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 <ph name="FILTER_PLACEHOLDER">$FILTER</ph> has the form <ph name="JSON_DICTIONARY_EXAMPLE">'{ "ISSUER": { "CN": "$ISSUER_CN" } }'</ph>, additionally only client certificates are selected that are issued by a certificate with the CommonName <ph name="ISSUER_CN_PLACEHOLDER">$ISSUER_CN</ph>. If <ph name="FILTER_PLACEHOLDER">$FILTER</ph> 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.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'CookiesAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'CookiesBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you make a list of URL patterns that specify sites that can't set cookies.
Leaving the policy unset results in the use of <ph name="DEFAULT_COOKIES_SETTINGS_POLICY_NAME">DefaultCookiesSetting</ph> for all sites, if it's set. If not, the user's personal setting applies.
While no specific policy takes precedence, see <ph name="COOKIES_BLOCKED_FOR_URLS_POLICY_NAME">CookiesBlockedForUrls</ph> and <ph name="COOKIES_SESSION_ONLY_FOR_URLS_POLICY_NAME">CookiesSessionOnlyForUrls</ph>. URL patterns among these 3 policies must not conflict.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'CookiesSessionOnlyForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Unless the <ph name="RESTORE_ON_STARTUP_POLICY_NAME">RestoreOnStartup</ph> policy is set to permanently restore URLs from previous sessions, then setting <ph name="COOKIES_SESSION_ONLY_FOR_URLS_POLICY_NAME">CookiesSessionOnlyForUrls</ph> lets you make a list of URL patterns that specify sites that can and can't set cookies for one session.
Leaving the policy unset results in the use of <ph name="DEFAULT_COOKIES_SETTINGS_POLICY_NAME">DefaultCookiesSetting</ph> for all sites, if it's set. If not, the user's personal setting applies. URLs not covered by the patterns specified also result in the use of defaults.
If <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running in Background mode, the session might stay active until the user exits the browser, not just closes the last window. See <ph name="BACKGROUND_MODE_ENABLED_POLICY_NAME">BackgroundModeEnabled</ph> for details about configuring this behavior.
While no specific policy takes precedence, see <ph name="COOKIES_BLOCKED_FOR_URLS_POLICY_NAME">CookiesBlockedForUrls</ph> and <ph name="COOKIES_ALLOWED_FOR_URLS_POLICY_NAME">CookiesAllowedForUrls</ph>. URL patterns among these 3 policies must not conflict.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'ImagesAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify sites that may display images.
Leaving the policy unset means <ph name="DEFAULT_IMAGES_SETTING_ENABLED_POLICY_NAME">DefaultImagesSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.
Note that previously this policy was erroneously enabled on Android, but this functionality has never been fully supported on Android.''',
},
{
'name': 'ImagesBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify sites that can't display images.
Leaving the policy unset means <ph name="DEFAULT_IMAGE_SETTING_ENABLED_POLICY_NAME">DefaultImagesSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.
Note that previously this policy was erroneously enabled on Android, but this functionality has never been fully supported on Android.''',
},
{
'name': 'JavaScriptAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can run JavaScript.
Leaving the policy unset means <ph name="DEFAULT_JAVA_SCRIPT_SETTING_POLICY_NAME">DefaultJavaScriptSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'JavaScriptBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can't run JavaScript.
Leaving the policy unset means <ph name="DEFAULT_JAVA_SCRIPT_SETTING_POLICY_NAME">DefaultJavaScriptSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'KeygenAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'KeygenBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'LegacySameSiteCookieBehaviorEnabled',
'owners': [ 'chlily@chromium.org', ],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, ],
},
'items': [
{
'name': 'DefaultToLegacySameSiteCookieBehavior',
'value': 1,
'caption': '''Revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies on all sites''',
},
{
'name': 'DefaultToSameSiteByDefaultCookieBehavior',
'value': 2,
'caption': '''Use <ph name="FEATURE_NAME_SAMESITE_BY_DEFAULT_COOKIES">SameSite-by-default</ph> behavior for cookies on all sites''',
},
],
'supported_on': [
'chrome.*:79-',
'chrome_os:79-',
'android:79-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 623,
'caption': '''Default legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> cookie behavior setting''',
'tags': [],
'desc': '''Allows you to revert all cookies to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior. Reverting to legacy behavior causes cookies that don't specify a <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> attribute to be treated as if they were "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>", removes the requirement for "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>" cookies to carry the "<ph name="ATTRIBUTE_SECURE_NAME">Secure</ph>" attribute, and skips the scheme comparison when evaluating if two sites are same-site. See https://www.chromium.org/administrators/policy-list-3/cookie-legacy-samesite-policies for full description.
When this policy is not set, the default <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies will depend on the user's personal configuration for the <ph name="FEATURE_NAME_SAMESITE_BY_DEFAULT_COOKIES">SameSite-by-default</ph> feature, the <ph name="FEATURE_NAME_SAMESITE_NONE_MUST_BE_SECURE">Cookies-without-SameSite-must-be-secure</ph> feature, and the <ph name="FEATURE_NAME_SCHEMEFUL_SAME_SITE">Schemeful Same-Site</ph> feature which may be set by a field trial or by enabling or disabling the <ph name="FLAG_NAME_SAMESITE_BY_DEFAULT_COOKIES">same-site-by-default-cookies</ph> flag, the <ph name="FLAG_NAME_SAMESITE_NONE_MUST_BE_SECURE">cookies-without-same-site-must-be-secure</ph> flag, or the <ph name="FLAG_NAME_SCHEMEFUL_SAME_SITE">schemeful-same-site</ph> flag, respectively.''',
},
{
'name': 'LegacySameSiteCookieBehaviorEnabledForDomainList',
'owners': [ 'chlily@chromium.org', ],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:79-',
'chrome_os:79-',
'android:79-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['www.example.com', '[*.]example.edu'],
'id': 624,
'caption': '''Revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies on these sites''',
'tags': [],
'desc': '''Cookies set for domains matching these patterns will revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior. Reverting to legacy behavior causes cookies that don't specify a <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> attribute to be treated as if they were "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>", removes the requirement for "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>" cookies to carry the "<ph name="ATTRIBUTE_SECURE_NAME">Secure</ph>" attribute, and skips the scheme comparison when evaluating if two sites are same-site. See https://www.chromium.org/administrators/policy-list-3/cookie-legacy-samesite-policies for full description.
For cookies on domains not covered by the patterns specified here, or for all cookies if this policy is not set, the global default value will be used either from the <ph name="LEGACY_SAMESITE_COOKIE_BEHAVIOR_ENABLED_POLICY_NAME">LegacySameSiteCookieBehaviorEnabled</ph> policy, if it is set, or the user's personal configuration otherwise.
Note that patterns you list here are treated as domains, not URLs, so you should not specify a scheme or port.''',
},
{
'name': 'PluginsAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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', 'http://example.edu:8080'],
'id': 73,
'caption': '''Allow the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin on these sites''',
'tags': [],
'desc': '''Setting the policy lets you set a list of URL patterns that specify the sites that can run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin.
Leaving the policy unset means <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. However, starting in M85, patterns with '*' and '[*.]' wildcards in the host are no longer supported for this policy.''',
},
{
'name': 'PluginsBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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', 'http://example.edu:8080'],
'id': 74,
'caption': '''Block the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin on these sites''',
'tags': [],
'desc': '''Setting the policy lets you set a list of URL patterns that specify the sites that can't run the <ph name="FLASH_PLUGIN_NAME">Flash</ph> plugin.
Leaving the policy unset means <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. However, starting in M85, patterns with '*' and '[*.]' wildcards in the host are no longer supported for this policy.''',
},
{
'name': 'PopupsAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:34-',
],
'future_on': [ 'ios' ],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can open pop-ups.
Leaving the policy unset means <ph name="DEFAULT_POPUPS_SETTING_POLICY_NAME">DefaultPopupsSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'RegisteredProtocolHandlers',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy (as recommended only) lets you register a list of protocol handlers, which merge with the ones that the user registers, putting both sets in use. Set the property "protocol" to the scheme, such as "mailto", and set the property "URL" to the URL pattern of the application that handles the scheme specified in the "protocol" field. The pattern can include a "%s" placeholder, which the handled URL replaces.
Users can't remove a protocol handler registered by policy. However, by installing a new default handler, they can change the protocol handlers installed by policy.''',
'arc_support': 'The protocol handlers set via this policy are not used when handling Android intents.',
},
{
'name': 'PopupsBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:11-',
'chrome_os:11-',
'android:34-',
],
'future_on': [ 'ios' ],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can't open pop-ups.
Leaving the policy unset means <ph name="DEFAULT_POPUPS_SETTING_POLICY_NAME">DefaultPopupsSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'NotificationsAllowedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can display notifications.
Leaving the policy unset means <ph name="DEFAULT_JAVA_SCRIPT_SETTING_POLICY_NAME">DefaultJavaScriptSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'NotificationsBlockedForUrls',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy lets you set a list of URL patterns that specify the sites that can't display notifications.
Leaving the policy unset means <ph name="DEFAULT_JAVA_SCRIPT_SETTING_POLICY_NAME">DefaultJavaScriptSetting</ph> applies for all sites, if it's set. If not, the user's personal setting applies.
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'NativeMessagingBlacklist',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['kbr@chromium.org', 'zmo@chromium.org'],
'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': '''Setting the policy to True (or setting <ph name="HARDWARE_ACCELERATION_MODE_ENABLED_POLICY_NAME">HardwareAccelerationModeEnabled</ph> to False) prevents webpages from accessing the WebGL API, and plugins can't use the Pepper 3D API.
Setting the policy to False or leaving it unset lets webpages use the WebGL API and plugins use the Pepper 3D API, but the browser's default settings might still require command line arguments to use these APIs.''',
},
{
'name': 'PolicyRefreshRate',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': { 'type': 'integer' },
'supported_on': ['chrome_os:11-', 'chrome.*:79-'],
'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',
'owners': ['stepco@chromium.org', 'poromov@chromium.org'],
'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 10000 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 10000 milliseconds.''',
},
{
'name': 'ChromeFrameRendererSettings',
'owners': ['tommi@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['tommi@chromium.org'],
'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',
'owners': ['xiyuan@chromium.org', 'ultrotter@chromium.org'],
'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',
'owners': ['xiyuan@chromium.org', 'sinhak@chromium.org'],
'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',
'owners': ['sinhak@chromium.org', 'anastasiian@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:65-'],
'features': {
# The case where a user is already signed into an unmanaged account cannot be handled right now and hence this is not dynamic.
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 406,
'caption': '''Allow Sign-in To Additional Google Accounts''',
'tags': [],
'desc': '''This setting allows users to switch between Google Accounts within the content area of their browser window and in Android applications, 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 Google Account from a non-Incognito browser content area and Android applications will not be allowed.
If this policy is unset or set to true, the default behavior will be used: signing in to a different Google Account from the browser content area and Android applications 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': 'ForceLogoutUnauthenticatedUserEnabled',
'owners': ['solovey@google.com', 'sinhak@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 679,
'caption': '''Force logout the user when their account becomes unauthenticated''',
'tags': [],
'desc': '''Force logout the user when their primary account's authentication token becomes invalid.
This policy can protect the user from access to restricted content on Google web properties.
If this policy is set to True, the user will be logged out as soon as their authentication token becomes invalid and attempts to restore this token fail.
If this policy is set to False or unset, the user can continue working in an unauthenticated state.'''
},
{
'name': 'InstantEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'AppRecommendationZeroStateEnabled',
'owners': ['robsc@chromium.org', 'bartfab@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'features': {
'per_profile': True,
'dynamic_refresh': True
},
'example_value': True,
'id': 563,
'caption': '''Enable App Recommendations in Zero State of Search Box''',
'tags': [],
'desc': '''Setting the policy to True can make app recommendations appear in the zero-state search. Setting the policy to False means these recommendations don't appear.
If you set the policy, users can't change it. If not set, managed devices default to a False setting.'''
},
{
'name': 'TranslateEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:12-',
'chrome_os:12-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 80,
'caption': '''Enable Translate''',
'tags': [],
'desc': '''Setting the policy to True provides translation functionality when it's appropriate for users by showing an integrated translate toolbar in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and a translate option on the right-click context menu. Setting the policy to False shuts off all built-in translate features.
If you set the policy, users can't change this function. Leaving it unset lets them change the setting.''',
},
{
'name': 'AllowOutdatedPlugins',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True runs all <ph name="FLASH_PLUGIN_NAME">Flash</ph> content embedded on websites that allow <ph name="FLASH_PLUGIN_NAME">Flash</ph>, including content from other origins or small content.
Setting the policy to False or leaving it unset might block <ph name="FLASH_PLUGIN_NAME">Flash</ph> content from other origins or small content.
Note: To control which websites can run <ph name="FLASH_PLUGIN_NAME">Flash</ph>, see these policies: <ph name="DEFAULT_PLUGINS_SETTING_POLICY_NAME">DefaultPluginsSetting</ph>, <ph name="PLUGINS_ALLOWED_FOR_URLS_POLICY_NAME">PluginsAllowedForUrls</ph>, and <ph name="PLUGINS_BLOCKED_FOR_URLS_POLICY_NAME">PluginsBlockedForUrls</ph>.''',
},
{
'name': 'BookmarkBarEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True displays a bookmark bar in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Setting the policy to False means users never see the bookmark bar.
If you set the policy, users can't change it. If not set, users decide whether to use this function.''',
},
{
'name': 'EditBookmarksEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:12-',
'chrome_os:12-',
'android:30-',
],
'future_on': [ 'ios' ],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 83,
'caption': '''Enable or disable bookmark editing''',
'tags': [],
'desc': '''Setting the policy to True or leaving it unset lets users add, remove, or modify bookmarks.
Setting the policy to False means users can't add, remove, or modify bookmarks. They can still use existing bookmarks.''',
},
{
'name': 'ShowAppsShortcutInBookmarkBar',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True displays the apps shortcut. Setting the policy to False means this shortcut never appears.
If you set the policy, users can't change it. If not set, users decide to show or hide the apps shortcut from the bookmark bar context menu.''',
},
{
'name': 'AllowFileSelectionDialogs',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['agl@chromium.org', 'martinkr@chromium.org'],
'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',
'owners': ['grt@chromium.org'],
'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://support.google.com/chrome/a?p=Supported_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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:15-',
'chrome_os:15-',
'android:30-',
'webview_android:47-',
],
'deprecated': True,
'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 is deprecated, please use the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy instead.
This policy prevents the user from loading web pages from blocked URLs. The blocklist provides a list of URL patterns that specify which URLs will be blocked.
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 allowlist 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.
From Chrome 73 you can block 'javascript://*' URLs. However, it affects only JavaScript typed in address bar (or, for example, bookmarklets). Note that in-page JavaScript URLs, as long as dynamically loaded data, are not subject to this policy. For example, if you block 'example.com/abc', page 'example.com' will still be able to load 'example.com/abc' via XMLHTTPRequest.
If this policy is not set no URL will be blocked in the browser.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'URLWhitelist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:15-',
'chrome_os:15-',
'android:30-',
'webview_android:47-',
],
'deprecated': True,
'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': '''This policy is deprecated, please use the '<ph name="URL_ALLOWLIST_POLICY_NAME">URLAllowlist</ph>' policy instead.
Allows access to the listed URLs, as exceptions to the URL blocklist.
See the description of the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy for the format of entries of this list.
This policy can be used to open exceptions to restrictive blocklists. For example, '*' can be used 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 allowlist takes precedence over the blocklist.
This policy is limited to 1000 entries; subsequent entries will be ignored.
This policy also allows to enable the automatic invocation by the browser of external application registered as protocol handlers for the listed protocols like "tel:" or "ssh:". This functionality is only available for on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.
If this policy is not set there will be no exceptions to the blocklist from the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'URLBlocklist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:86-',
'chrome_os:86-',
'android:86-',
'webview_android:86-',
],
'future_on': [ 'ios' ],
'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': 736,
'caption': '''Block access to a list of URLs''',
'tags': ['filtering'],
'desc': '''This policy prevents the user from loading web pages from blocked URLs. The blocklist provides a list of URL patterns that specify which URLs will be blocked.
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 allowlist 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.
You can block 'javascript://*' URLs. However, it affects only JavaScript typed in address bar (or, for example, bookmarklets). Note that in-page JavaScript URLs, as long as dynamically loaded data, are not subject to this policy. For example, if you block 'example.com/abc', page 'example.com' will still be able to load 'example.com/abc' via XMLHTTPRequest.
If this policy is not set no URL will be blocked in the browser.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'URLAllowlist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': [
'chrome.*:86-',
'chrome_os:86-',
'android:86-',
'webview_android:86-',
],
'future_on': [ 'ios' ],
'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': 737,
'caption': '''Allow access to a list of URLs''',
'tags': [],
'desc': '''Allows access to the listed URLs, as exceptions to the URL blocklist.
See the description of the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy for the format of entries of this list.
This policy can be used to open exceptions to restrictive blocklists. For example, '*' can be used 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 allowlist takes precedence over the blocklist.
This policy is limited to 1000 entries; subsequent entries will be ignored.
This policy also allows to enable the automatic invocation by the browser of external application registered as protocol handlers for the listed protocols like "tel:" or "ssh:". This functionality is only available for on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.
If this policy is not set there will be no exceptions to the blocklist from the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy.''',
'arc_support': 'Android apps may voluntarily choose to honor this list. You cannot force them to honor it.',
},
{
'name': 'PolicyAtomicGroupsEnabled',
'owners': ['ydago@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:78-', 'chrome_os:78-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 584,
'caption': '''Enables the concept of policy atomic groups''',
'tags': [],
'desc': '''If this policy is enabled, policies coming from the an atomic group that do not share the source with the highest priority from that group will be ignored.
If this policy is disabled, no policy will be ignored because of its source. Policies will be ignored only if there is a conflict and the policy does not have the highest priority.
If this policy ist set from a cloud source, it cannot target a specific user''',
},
{
'name': 'PolicyListMultipleSourceMergeList',
'owners': ['ydago@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:75-', 'chrome_os:75-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['ExtensionInstallAllowlist', 'ExtensionInstallBlocklist'],
'id': 554,
'caption': '''Allow merging list policies from different sources''',
'tags': [],
'desc': '''Allows the selected policies to be merged when they come from different sources, with the same scopes and level.
If a policy is in the list, in case there is conflict between two sources, given that they have the same scopes and level, the values will be merged into a new policy list.
If a policy is in the list, in case there is conflict between two sources but also between different scopes and/or level, the policy with the highest priority will be applied.
If a policy is not in the list, in case there is any conflict between sources, scopes and/or level, the policy with the highest priority will be applied.''',
'label': '''Allow merging list policies from different sources''',
},
{
'name': 'PolicyDictionaryMultipleSourceMergeList',
'owners': ['ydago@chromium.org', 'pastarmovj@chromium.org'],
'type': 'string-enum-list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [ 'ContentPackManualBehaviorURLs', 'ExtensionSettings', 'DeviceLoginScreenPowerManagement', 'KeyPermissions', 'PowerManagementIdleSettings', 'ScreenBrightnessPercent', 'ScreenLockDelays' ],
}
},
'items': [
{
'name': 'ContentPackManualBehaviorURLs',
'value': 'ContentPackManualBehaviorURLs',
'caption': '''Managed user manual exception URLs''',
},
{
'name': 'DeviceLoginScreenPowerManagement',
'value': 'DeviceLoginScreenPowerManagement',
'caption': '''Power management on the login screen''',
},
{
'name': 'ExtensionSettings',
'value': 'ExtensionSettings',
'caption': '''Extension management settings''',
},
{
'name': 'KeyPermissions',
'value': 'KeyPermissions',
'caption': '''Key Permissions''',
},
{
'name': 'PowerManagementIdleSettings',
'value': 'PowerManagementIdleSettings',
'caption': '''Power management settings when the user becomes idle''',
},
{
'name': 'ScreenBrightnessPercent',
'value': 'ScreenBrightnessPercent',
'caption': '''Screen brightness percent''',
},
{
'name': 'ScreenLockDelays',
'value': 'ScreenLockDelays',
'caption': '''Screen lock delays''',
},
],
'supported_on': ['chrome.*:76-', 'chrome_os:76-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['ExtensionSettings'],
'id': 565,
'caption': '''Allow merging dictionary policies from different sources''',
'tags': [],
'desc': '''Allows the selected policies to be merged when they come from different sources, with the same scopes and level.
The merging consists in merging the first level keys of the dictionary from each source. In case of conflict between keys, the key coming from the highest priority source will be applied.
If a policy is in the list, in case there is conflict between two sources, given that they have the same scopes and level, the values will be merged into a new policy dictionary.
If a policy is in the list, in case there is conflict between two sources but also between different scopes and/or level, the policy with the highest priority will be applied.
If a policy is not in the list, in case there is any conflict between sources, scopes and/or level, the policy with the highest priority will be applied.''',
'label': '''Allow merging dictionary policies from different sources''',
},
{
'name': 'EnableExperimentalPolicies',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:85-', 'chrome_os:85-', 'android:85-', 'webview_android:85-', 'ios:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['ExtensionInstallAllowlist', 'ExtensionInstallBlocklist'],
'id': 711,
'caption': '''Enables experimental policies''',
'tags': [],
'desc': '''Allows <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to load experimental policies.
WARNING: Experimental policies are unsupported and subject to change or be removed without notice in future version of the browser!
An experimental policy may not be finished or still have known or unknown defects. It may be changed or even removed without any notification. By enabling experimental policies, you could lose browser data or compromise your security or privacy.
If a policy is not in the list and it's not officially released, its value will be ignored on Beta and Stable channel.
If a policy is in the list and it's not officially released, its value will be applied.
This policy has no effect on already released policies.''',
},
{
'name': 'OpenNetworkConfiguration',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'url_schema': 'https://chromium.googlesource.com/chromium/src/+/master/components/onc/docs/onc_spec.md',
'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.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'url_schema': 'https://chromium.googlesource.com/chromium/src/+/master/components/onc/docs/onc_spec.md',
'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.''',
'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',
'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS'],
'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',
'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS'],
'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',
'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS'],
'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': 'DeviceGpoCacheLifetime',
'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 },
'supported_on': ['chrome_os:73-'],
'supported_chrome_os_management': ['active_directory'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 508,
'caption': '''GPO cache lifetime''',
'tags': [],
'desc': '''Specifies the lifetime (in hours) of the Group Policy Object (GPO) cache. Instead of re-downloading GPOs on every policy fetch, the system may reuse cached GPOs as long as their version does not change. This policy specifies the maximum duration for which cached GPOs may be reused before they are re-downloaded. Rebooting and logging out clears the cache.
If the policy is unset, cached GPOs may be reused for up to 25 hours.
If the policy is set to 0, GPO caching is turned off. Note that this increases server load since GPOs are re-downloaded on every policy fetch, even if they did not change.''',
},
{
'name': 'DeviceAuthDataCacheLifetime',
'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 },
'supported_on': ['chrome_os:73-'],
'supported_chrome_os_management': ['active_directory'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': 0,
'id': 509,
'caption': '''Authentication data cache lifetime''',
'tags': ['admin-sharing'],
'desc': '''Specifies the lifetime (in hours) of the authentication data cache. The cache is used to speed up sign-in. It contains general data (workgroup name etc.) about affiliated realms, i.e. realms trusted by the machine realm. No user-specific data and no data for unaffiliated realms is cached. Rebooting the device clears the cache.
If the policy is unset, cached authentication data may be reused for up to 73 hours.
If the policy is set to 0, authentication data caching is turned off. This can significantly slow down sign-in of affiliated users since realm-specific data has to be fetched on every sign-in.
Note that realm data is cached even for ephemeral users. The cache should be turned off if tracing the realm of ephemeral users should be prevented.''',
},
{
'name': 'CloudPrintSubmitEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
In order to keep <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> destinations discoverable, this policy must be set to true and <ph name="POLICY_ENUM_PRINTERTYPEDENYLIST_CLOUD">cloud</ph> must not be included in the <ph name="POLICY_PRINTERTYPEDENYLIST">PrinterTypeDenyList</ph> policy.''',
},
{
'name': 'EnterpriseWebStoreURL',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://src/net/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://printing/OWNERS'],
'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': 'PrintHeaderFooter',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-', 'chrome.*:70-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 480,
'caption': '''Print Headers and Footers''',
'tags': [],
'desc': '''Force 'headers and footers' to be on or off in the printing dialog.
If the policy is unset, the user can decide whether to print headers and footers.
If the policy is set to false, 'Headers and footers' is not selected in the print preview dialog, and the user cannot change it.
If the policy is set to true, 'Headers and footers' is selected in the print preview dialog, and the user cannot change it.''',
},
{
'name': 'DefaultPrinterSelection',
'owners': ['file://printing/OWNERS'],
'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.
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',
'owners': ['file://src/crypto/OWNERS'],
'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',
'owners': ['file://src/net/cert/OWNERS'],
'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': '''Enable online OCSP/CRL checks''',
'tags': ['website-sharing'],
'desc': '''Setting the policy to True means online <ph name="OCSP_CRL_LABEL">OCSP/CRL</ph> checks are performed.
Setting the policy to False or leaving it unset means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> won't perform online revocation checks in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 19 and later.
Note: <ph name="OCSP_CRL_LABEL">OCSP/CRL</ph> checks provide no effective security benefit.''',
},
{
'name': 'RequireOnlineRevocationChecksForLocalAnchors',
'owners': ['file://src/net/cert/OWNERS'],
'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': '''Require online OCSP/CRL checks for local trust anchors''',
'tags': [],
'desc': '''Setting the policy to True means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> always performs revocation checking for successfully validated server certificates signed by locally installed CA certificates. If <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can't get revocation status information, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> treats these certificates as revoked (hard-fail).
Setting the policy to False or leaving it unset means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses existing online revocation-checking settings.''',
},
{
'name': 'EnableSha1ForLocalAnchors',
'owners': ['mattm@chromium.org', 'rsleevi@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:54-71', 'chrome_os:54-71', 'android:54-71'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 340,
'caption': '''Allow SHA-1 signed certificates issued by local trust anchors''',
'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',
'owners': ['file://src/net/cert/OWNERS'],
'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': '''Allow certificates issued by local trust anchors without 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',
'owners': ['file://src/net/cert/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:66-75', 'chrome_os:66-75', 'android:66-75'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 413,
'caption': '''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': 'BuiltinCertificateVerifierEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:77-83', 'chrome.linux:79-83', 'chrome.mac:83-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 575,
'caption': '''Determines whether the built-in certificate verifier will be used to verify server certificates''',
'tags': [],
'desc': '''When this setting is enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will perform verification of server certificates using the built-in certificate verifier.
When this setting is disabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will perform verification of server certificates using the legacy certificate verifier provided by the platform.
When this setting is not set, the built-in or the legacy certificate verifier may be used.
This policy is planned to be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 81, when support for the legacy certificate verifier on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> is planned to be removed.
This policy is planned to be removed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> for Linux version 83, when support for the legacy certificate verifier on Linux is planned to be removed.
This policy is planned to be removed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> for Mac OS X version 87, when support for the legacy certificate verifier on Mac OS X is planned to be removed.
''',
},
{
'name': 'ForceEphemeralProfiles',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['stepco@chromium.org', 'poromov@chromium.org'],
'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',
'owners': ['antrim@chromium.org'],
'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',
'owners': ['antrim@chromium.org'],
'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': 'ReportDeviceGraphicsStatus',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 660,
'caption': '''Report display and graphics statuses''',
'tags': ['admin-sharing'],
'desc': '''Report information related to display, such as refresh rate, and
information related to graphics, such as driver version.
If the policy is set to false or left unset, the display and graphics
statuses will not be reported. If set to true, display and graphics
statuses will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceCrashReportInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 665,
'caption': '''Report information about crash reports.''',
'tags': ['admin-sharing'],
'desc': '''Report information related to crash reports, such as remote id,
capture timestamp and cause.
If the policy is set to false or left unset, the crash report information
will not be reported. If set to true, crash report information will be
reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceOsUpdateStatus',
'owners': ['anqing@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 602,
'caption': '''Report OS update status''',
'tags': ['admin-sharing'],
'desc': '''Report OS update information such as update status, platform version,
last update check and last reboot.
If the policy is set to false or left unset, the OS update information will not be
reported. If set to true, OS update information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDevicePowerStatus',
'owners': ['antrim@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:73-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 512,
'caption': '''Report power status''',
'tags': ['admin-sharing'],
'desc': '''Report hardware statistics and identifiers related to power.
If the policy is set to false or left unset, the statistics will not be reported.
If set to true, statistics will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceStorageStatus',
'owners': ['antrim@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:73-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 513,
'caption': '''Report storage status''',
'tags': ['admin-sharing'],
'desc': '''Report hardware statistics and identifiers for storage devices.
If the policy is set to false or left unset, the statistics will not be reported.
If set to true, statistics will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceBoardStatus',
'owners': ['antrim@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:73-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 514,
'caption': '''Report board status''',
'tags': ['admin-sharing'],
'desc': '''Report hardware statistics for SoC components.
If the policy is set to false or left unset, the statistics will not be reported.
If set to true, statistics will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceCpuInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 656,
'caption': '''Report CPU info''',
'tags': ['admin-sharing'],
'desc': '''Report information for a device's CPU(s).
If the policy is set to false or left unset, the information will not be reported.
If set to true, the CPU model name, architecture, and maximum clock speed will be
reported for each CPU.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceTimezoneInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 671,
'caption': '''Report Timezone info''',
'tags': ['admin-sharing'],
'desc': '''Report information for a device's timezone.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's currently set timezone will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceMemoryInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 682,
'caption': '''Report memory info''',
'tags': ['admin-sharing'],
'desc': '''Report information about a device's memory.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's memory information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceBacklightInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 686,
'caption': '''Report backlight info''',
'tags': ['admin-sharing'],
'desc': '''Report information about a device's backlights.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's backlight information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceAppInfo',
'owners': ['mattme@google.com', 'file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 702,
'caption': '''Report applications information''',
'tags': ['admin-sharing'],
'desc': '''Report information for a device's application inventory and usage.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's applications and usage will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceBluetoothInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 708,
'caption': '''Report Bluetooth info''',
'tags': ['admin-sharing'],
'desc': '''Report a device's Bluetooth information.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's Bluetooth information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceFanInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 709,
'caption': '''Report fan info''',
'tags': ['admin-sharing'],
'desc': '''Report a device's fan information.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's fan information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceVpdInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 710,
'caption': '''Report VPD info''',
'tags': ['admin-sharing'],
'desc': '''Report a device's VPD information.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's VPD information will be reported.
Vital Product Data (VPD) is a collection of configuration and informational data (such as part and serial numbers) associated with the device.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportDeviceSystemInfo',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:86-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 741,
'caption': '''Report system info''',
'tags': ['admin-sharing'],
'desc': '''Report a device's system information.
If the policy is set to false or left unset, the information will not be reported.
If set to true, the device's system information will be reported.''',
'arc_support': 'This policy has no effect on the logging done by Android.',
},
{
'name': 'ReportUploadFrequency',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['phweiss@chromium.org'],
'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': 'ReportCrostiniUsageEnabled',
'owners': ['aoldemeier@chromium.org', 'okalitova@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 484,
'caption': '''Report information about usage of Linux apps''',
'tags': ['admin-sharing'],
'desc': '''Information about the usage of Linux apps is sent back to the
server.
If the policy is set to false or left unset, no usage information is
reported. If set to true, usage information is reported.
This policy only applies if Linux app support is enabled.''',
},
{
'name': 'HeartbeatEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['poromov@chromium.org', 'pbond@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
'sensitiveValue': True,
},
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 interstitial screen (if enabled via the <ph name="LOGIN_AUTHENTICATION_BEHAVIOR_POLICY_NAME">LoginAuthenticationBehavior</ph> policy) will be shown, unless a Managed Session is configured. When a Managed Session is configured, only the Managed 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:19-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 134,
'caption': '''Users may configure the Chrome OS release channel''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['zeuthen@chromium.org', 'poromov@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3 ],
},
'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': 'RollbackAndPowerwash',
'value': 2,
'caption': '''Roll back and stay on target version if OS version is newer than target. Do a powerwash during the process.''',
},
{
'name': 'RollbackAndRestoreIfPossible',
'value': 3,
'caption': '''Roll back and stay on target version if OS version is newer than target. Try to carry over device-level configuration (including network credentials) through the rollback process, if possible, but do the rollback with full powerwash even if restoring the data is not possible (because the target version doesn't support restoring data or because of a backward-incompatible change).
Supported on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 75 and higher. For older clients, this value means that rollback is disabled.''',
},
],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 (currently only "cellular").
The recognized connection type identifiers are <ph name="CONNECTION_TYPE_ETHERNET_NAME">"ethernet"</ph>, <ph name="CONNECTION_TYPE_WIFI_NAME">"wifi"</ph>, and <ph name="CONNECTION_TYPE_CELLULAR_NAME">"cellular"</ph>.''',
},
{
'name': 'DeviceUpdateHttpDownloadsEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Device-local account for auto-login''',
'tags': [],
'desc': '''A device-local account 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 device-local account must already be configured (see |DeviceLocalAccounts|).
If this policy is unset, there will be no auto-login.''',
},
{
'name': 'DeviceLocalAccountAutoLoginDelay',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Device-local account auto-login timer''',
'tags': [],
'desc': '''The device-local account 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 device-local account 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['xiyuan@chromium.org', 'poromov@chromium.org'],
'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': 'DeviceLocalAccountManagedSessionEnabled',
'owners': ['isandrk@chromium.org', 'voit@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 463,
'caption': '''Allow managed session on device''',
'tags': [],
'desc': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 88. Public sessions are no longer supported. Please use <ph name="DEVICE_LOCAL_ACCOUNTS_POLICY_NAME">DeviceLocalAccounts</ph> to configure managed-guest sessions instead.
If this policy is set to false, managed guest session will behave as documented in https://support.google.com/chrome/a/answer/3017014 - the standard "Public Session".
If this policy is set to true or left unset, managed guest session will take on "Managed Session" behaviour which lifts many of the restrictions that are in place for regular "Public Sessions".
If this policy is set, the user cannot change or override it.''',
},
{
'name': 'DeviceBlockDevmode',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:37-'],
'supported_chrome_os_management': ['google_cloud'],
'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': 'ManagedGuestSessionAutoLaunchNotificationReduced',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 688,
'caption': '''Reduce Managed-guest session auto-launch notifications''',
'tags': [],
'desc': ''' Control the auto launch notification of the managed guest session on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
If this policy is set to True, the privacy warning notification will be closed after some seconds.
If the policy is set to False or not set, the privacy warning notification will be pinned until the user dismisses it.''',
},
{
'name': 'ManagedGuestSessionPrivacyWarningsEnabled',
'owners': ['file: //components/policy/resources/OWNERS', 'ayaelattar@chromium.org'],
'device_only': True,
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os: 84-' ],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 723,
'caption': '''Reduce Managed-guest session auto-launch notifications''',
'tags': [],
'desc': ''' Controls the privacy warning of the managed-guest session on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
If this policy is set to False, the privacy warnings on the login screen and the auto-launch notification inside the managed-guest session will get deactivated.
This policy should not be used for devices used by the general public.
If the policy is set to True or not set, the privacy warning notification in the auto-launched managed-guest session will be pinned until the user dismisses it.''',
},
{
'name': 'BackgroundModeEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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', 'https://google.com/maps'],
'id': 144,
'caption': '''List of pinned apps to show in the launcher''',
'tags': [],
'desc': '''Setting the policy fixes which application identifiers <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shows as pinned apps in the launcher bar, and users can't change them.
Specify Chrome apps by their ID, such as pjkljhegncpnkpknbcohdijeoejaedia; Android apps by their package name, such as com.google.android.gm; and web apps by the URL used in <ph name="WEB_APP_INSTALL_FORCE_LIST_POLICY_NAME">WebAppInstallForceList</ph>, such as https://google.com/maps.
Leaving it unset lets users change the list of pinned apps in the launcher.''',
'arc_support': 'This policy can also be used to pin Android apps.',
},
{
'name': 'RestrictSigninToPattern',
'owners': ['file://components/policy/resources/OWNERS'],
'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 Google accounts are allowed to be set as browser primary accounts in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>''',
'tags': [],
'desc': '''Contains a regular expression which is used to determine which Google accounts can be set as browser primary accounts in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> (i.e. the account that is chosen during the Sync opt-in flow).
An appropriate error is displayed if a user tries to set a browser primary account with a username that does not match this pattern.
If this policy is left not set or blank, then the user can set any Google account as a browser primary account in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'name': 'DisableSafeBrowsingProceedAnyway',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'chrome.*:22-',
'chrome_os:22-',
'android:30-',
'ios:85-'
],
'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.
This policy only prevents users from proceeding on Safe Browsing warnings (e.g. malware and phishing) not for SSL certificate related issues like invalid or expired certificates.
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',
'owners': ['estark@chromium.org', 'meacer@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:44-84', 'chrome_os:44-84'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 299,
'caption': '''Allow users to opt in to Safe Browsing extended reporting''',
'tags': [],
'deprecated': True,
'desc': '''This policy is deprecated in M82 and removed in M85, use <ph name="SAFE_BROWSING_EXTENDED_REPORTING_ENABLED_POLICY_NAME">SafeBrowsingExtendedReportingEnabled</ph> instead. Disabling <ph name="SAFE_BROWSING_EXTENDED_REPORTING_OPT_IN_ALLOWED_POLICY_NAME">SafeBrowsingExtendedReportingOptInAllowed</ph> is equivalent to disabling <ph name="SAFE_BROWSING_EXTENDED_REPORTING_ENABLED_POLICY_NAME">SafeBrowsingExtendedReportingEnabled</ph>. Enabling <ph name="SAFE_BROWSING_EXTENDED_REPORTING_OPT_IN_ALLOWED_POLICY_NAME">SafeBrowsingExtendedReportingOptInAllowed</ph> or leaving this setting unset is equivalent to leaving <ph name="SAFE_BROWSING_EXTENDED_REPORTING_ENABLED_POLICY_NAME">SafeBrowsingExtendedReportingEnabled</ph> unset.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True makes all types of external storage media (USB flash drives, external hard drives, SD and other memory cards, optical storage) unavailable in the file browser. Setting the policy to False or leaving it unset means users can use external storage on their device.
Note: The policy doesn't affect Google Drive and internal storage. Users can still access files saved in the Downloads folder.''',
},
{
'name': 'ExternalStorageReadOnly',
'owners': ['yamaguchi@chromium.org'],
'id': 343,
'type': 'main',
'schema': { 'type': 'boolean' },
'tags': [],
'supported_on': ['chrome_os:54-'],
'caption': '''Treat external storage devices as read-only''',
'desc': '''Setting the policy to True prevents users from writing to external storage devices.
Unless external storage is blocked, if you set ExternalStorageReadOnly to False or leave it unset, users can create and modify files of physically writable, external storage devices. (You can block external storage by setting ExternalStorageDisable to True.)''',
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True
},
{
'name': 'AudioOutputAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to Enabled or leaving it unset allows all supported audio outputs on the users' devices.
Setting the policy to Disabled allows no audio output while users are signed in.
Note: The policy affects all audio output, including audio accessibility features. Do not turn the policy off if a user requires a screen reader.''',
},
{
'name': 'AudioCaptureAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to Enabled or leaving it unset means that, with the exception of URLs set in the AudioCaptureAllowedUrls list, users get prompted for audio capture access.
Setting the policy to Disabled turns off prompts, and audio capture is only available to URLs set in the AudioCaptureAllowedUrls list.
Note: The policy affects all audio input (not just 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',
'owners': ['guidou@chromium.org'],
'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': '''Setting the policy means you specify the URL list whose patterns get matched to the security origin of the requesting URL. A match grants access to audio capture devices without prompt
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'VideoCaptureAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to Enabled or leaving it unset means that, with the exception of URLs set in the VideoCaptureAllowedUrls list, users get prompted for video capture access.
Setting the policy to Disabled turns off prompts, and video capture is only available to URLs set in the VideoCaptureAllowedUrls list.
Note: The policy affects all video input (not just the built-in camera).''',
},
{
'name': 'VideoCaptureAllowedUrls',
'owners': ['guidou@chromium.org'],
'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': '''Setting the policy means you specify the URL list whose patterns get matched to the security origin of the requesting URL. A match grants access to video capture devices without prompt
For detailed information on valid <ph name="URL_LABEL">url</ph> patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'DisableScreenshots',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True disallows screenshots taken with keyboard shortcuts or extension APIs. Setting the policy to False allows screenshots.'''
},
{
'name': 'SystemTimezone',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy specifies a device's time zone and turns off location-based automatic time zone adjustment while overriding the <ph name="SYSTEM_TIMEZONE_AUTOMATIC_DETECTION_POLICY_NAME">SystemTimezoneAutomaticDetection</ph> policy. Users can't change the time zone.
New devices start with the time zone set to US Pacific. Value format follows the names in the IANA Time Zone Database ( https://en.wikipedia.org/wiki/Tz_database ). Entering an invalid value activates the policy using GMT.
If not set or if you enter an empty string, the device uses the currently active time zone, but users can change it.''',
},
{
'name': 'SystemUse24HourClock',
'owners': ['alemate@chromium.org', 'michaelpg@chromium.org'],
'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': '''Setting the policy to True or leaving it unset gives a device's sign-in screen a 24-hour clock format. User sessions also default to this format, but users can change an account's clock format.
Setting the policy to False gives a device the 12-hour clock format.''',
},
{
'name': 'TouchVirtualKeyboardEnabled',
'owners': ['rsadam@chromium.org'],
'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': '''Setting the policy to Enabled keeps the on-screen virtual keyboard (a Chrome OS input device) on. Setting the policy to Disabled keeps this keyboard off.
If you set the policy, users can't change it. (They can turn an accessibility on-screen keyboard that takes precedence over the virtual keyboard on or off. See the VirtualKeyboardEnabled policy.)
If not set, the keyboard is off, but users can change it.
Note: Heuristic rules might also factor into keyboard display.''',
},
{
'name': 'ShowLogoutButtonInTray',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True displays a big, red sign-out button in the system tray during active sessions while the screen isn't locked.
Setting the policy to False or leaving it unset means no button appears.''',
},
{
'name': 'BuiltInDnsClientEnabled',
'owners': ['szym@chromium.org', 'pmarko@chromium.org'],
'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>.
This does not affect which DNS servers are used; just the software stack which is used to communicate with them. For example if the operating system is configured to use an enterprise DNS server, that same server would be used by the built-in DNS client. It is however possible that the built-in DNS client will address servers in different ways by using more modern DNS-related protocols such as DNS-over-TLS.
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 built-in DNS client will be enabled by default on macOS, Android (when neither Private DNS nor VPN are enabled) and ChromeOS, and 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': 'DnsOverHttpsMode',
'owners': ['dalyk@chromium.org', 'ericorth@chromium.org', 'bingler@chromium.org'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'off',
'automatic',
'secure',
],
},
'items': [
{
'name': 'off',
'value': 'off',
'caption': '''Disable DNS-over-HTTPS''',
},
{
'name': 'automatic',
'value': 'automatic',
'caption': '''Enable DNS-over-HTTPS with insecure fallback''',
},
{
'name': 'secure',
'value': 'secure',
'caption': '''Enable DNS-over-HTTPS without insecure fallback''',
}
],
'supported_on': ['chrome_os:78-', 'chrome.*:78-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'off',
'id': 582,
'default_for_enterprise_users': 'off',
'caption': '''Controls the mode of DNS-over-HTTPS''',
'tags': [],
'desc': '''Controls the mode of the DNS-over-HTTPS resolver. Please note that this policy will only set the default mode for each query. The mode may be overridden for special types of queries such as requests to resolve a DNS-over-HTTPS server hostname.
The <ph name="SECURE_DNS_MODE_OFF">"off"</ph> mode will disable DNS-over-HTTPS.
The <ph name="SECURE_DNS_MODE_AUTOMATIC">"automatic"</ph> mode will send DNS-over-HTTPS queries first if a DNS-over-HTTPS server is available and may fallback to sending insecure queries on error.
The <ph name="SECURE_DNS_MODE_SECURE">"secure"</ph> mode will only send DNS-over-HTTPS queries and will fail to resolve on error.
On <ph name="ANDROID_VERSION">Android Pie</ph> and above, if DNS-over-TLS is active, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not send insecure DNS requests.
If this policy is unset the browser may send DNS-over-HTTPS requests to a resolver associated with the user's configured system resolver.''',
},
{
'name': 'DnsOverHttpsTemplates',
'owners': ['dalyk@chromium.org', 'ericorth@chromium.org', 'bingler@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:80-', 'chrome.*:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'https://dns.example.net/dns-query{?dns}',
'id': 642,
'caption': '''Specify URI template of desired DNS-over-HTTPS resolver''',
'tags': [],
'desc': '''The URI template of the desired DNS-over-HTTPS resolver. To specify multiple DNS-over-HTTPS resolvers, separate the corresponding URI templates with spaces.
If the DnsOverHttpsMode is set to <ph name="SECURE_DNS_MODE_SECURE">"secure"</ph> then this policy must be set and not empty.
If the DnsOverHttpsMode is set to <ph name="SECURE_DNS_MODE_AUTOMATIC">"automatic"</ph> and this policy is set then the URI templates specified will be used; if this policy is unset then hardcoded mappings will be used to attempt to upgrade the user's current DNS resolver to a DoH resolver operated by the same provider.
If the URI template contains a <ph name="HTTP_VARIABLE_DNS">dns</ph> variable, requests to the resolver will use <ph name="HTTP_METHOD_GET">GET</ph>; otherwise requests will use <ph name="HTTP_METHOD_POST">POST</ph>.
Incorrectly formatted templates will be ignored.''',
},
{
'name': 'ShelfAutoHideBehavior',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to Always will autohide the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shelf. Setting the policy to Never ensures the shelf never autohides.
If you set the policy, users can't change it. If not set, users decide whether the shelf autohides.''',
},
{
'name': 'ShelfAlignment',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string-enum',
# In shelf_prefs.cc, there are 3 const char[] defining kShelfAlignmentLocal values:
# ash::kShelfAlignmentBottom = "Bottom", ash::kShelfAlignmnetLeft = "Left",
# ash::kShelfAlignmnetRight = "Right"
# If any of them changed, this policy should be updated.
'schema': {
'type': 'string',
'enum': [
'Left',
'Bottom',
'Right'
],
},
'items': [
{
'name': 'Left',
'value': 'Left',
'caption': '''Position the shelf on the left side of the screen''',
},
{
'name': 'Bottom',
'value': 'Bottom',
'caption': '''Position the shelf at the bottom of the screen''',
},
{
'name': 'Right',
'value': 'Right',
'caption': '''Position the shelf on the right side of the screen''',
},
],
'supported_on': ['chrome_os:79-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'Bottom',
'id': 620,
'caption': '''Control the shelf position''',
'tags': [],
'desc': '''Control the position of the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shelf.
If this policy is set to 'Bottom', the shelf will be placed at the bottom of the screen.
If this policy is set to 'Left', the shelf will be placed on the left side of the screen.
If this policy is set to 'Right', the shelf will be placed on the right side of the screen.
If you set this policy as mandatory, users cannot change or override it.
If the policy is left not set, the shelf will be be positioned at the bottom of the screen by default and the user can change the shelf's position.''',
},
{
'name': 'SystemFeaturesDisableList',
'owners': ['file://components/policy/resources/OWNERS', 'ayaelattar@chromium.org'],
'type': 'string-enum-list',
'schema': {
'type': 'array',
'items' : {
'type': 'string',
'enum': [
'browser_settings',
'os_settings',
'camera',
],
},
},
'items': [
{
'name': 'browser_settings',
'value': 'browser_settings',
'caption': '''Browser Settings''',
},
{
'name': 'os_settings',
'value': 'os_settings',
'caption': '''OS Settings''',
},
{
'name': 'camera',
'value': 'camera',
'caption': '''Camera''',
},
],
'supported_on': ['chrome_os:84-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['camera', 'browser_settings', 'os_settings'],
'id': 689,
'caption': '''Configure the camera, browser settings, and os settings features to be disabled''',
'tags': [],
'desc': '''Allows you to set a list of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> features to be disabled.
Disabling any of these features means that the user can't access it from the UI and will see it as "disabled by admin".
If the policy is left not set, all <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> features will be enabled by default and the user can use any of them.''',
},
{
'name': 'FloatingAccessibilityMenuEnabled',
'owners': ['apotapchuk@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 691,
'future': True,
'caption': '''Enables the floating accessibility menu''',
'tags': [],
'desc': '''In kiosk mode, controls whether the floating accessibility menu is being shown.
If this policy is set to enabled, the floating accessibility menu will be always shown.
If this policy is set to disabled or left unset, the floating accessibility menu will never be shown.''',
},
{
'name': 'UserDisplayName',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True or leaving it unset means that, with appropriate permissions, users, apps, and extensions can enter Fullscreen mode (in which only web content appears).
Setting the policy to False means users, apps, and extensions can't enter Fullscreen mode.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="SCREEN_LOCK_DELAYS_POLICY_NAME">ScreenLockDelays</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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.
The warning message is only shown if the idle action is to logout or shut down.''',
},
{
'name': 'IdleDelayAC',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="SCREEN_LOCK_DELAYS_POLICY_NAME">ScreenLockDelays</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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.
The warning message is only shown if the idle action is to logout or shut down.''',
},
{
'name': 'IdleDelayBattery',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0
},
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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''',
},
],
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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 <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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''',
},
],
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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''',
},
],
# TODO(https://crbug.com/1016253): Remove this policy in M85.
'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': '''Note that this policy is deprecated and will be removed in <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 85. Please use <ph name="POWER_MANAGEMENT_IDLE_SETTINGS_POLICY_NAME">PowerManagementIdleSettings</ph> instead.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
This policy only takes effect if the <ph name="POWER_SMART_DIM_ENABLED_POLICY_NAME">PowerSmartDimEnabled</ph> is disabled. Otherwise, this policy is ignored because the screen dim delay is deteremined by a machine-learning model.
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': 'AllowWakeLocks',
'owners': ['file://src/chrome/browser/chromeos/login/demo_mode/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:71-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 491,
'caption': '''Allow wake locks''',
'tags': [],
'desc': '''Specifies whether wake locks are allowed. Wake locks can be requested by extensions via the power management extension API and by ARC apps.
If this policy is set to true or left not set, wake locks will be honored for power management.
If this policy is set to false, wake lock requests will get ignored.''',
},
{
'name': 'AllowScreenWakeLocks',
'owners': ['file://components/policy/resources/OWNERS'],
'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 and by ARC apps.
If this policy is set to true or left not set, screen wake locks will be honored for power management, unless AllowWakeLocks is set to false.
If this policy is set to false, screen wake lock requests will be demoted to system wake lock requests.''',
},
{
'name': 'UserActivityScreenDimDelayScale',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
This policy only takes effect if the <ph name="POWER_SMART_DIM_ENABLED_POLICY_NAME">PowerSmartDimEnabled</ph> policy is disabled. Otherwise, this policy is ignored because the screen dim delay is deteremined by a machine-learning model.
The scale factor must be 100% or more.''',
},
{
'name': 'WaitForInitialUserActivity',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'Delays': {
'ScreenDim': 10000,
'ScreenOff': 20000,
'IdleWarning': 5000,
'Idle': 30000
}
}
},
'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 warning message is only shown if the idle action is to logout or shut down.
* 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'Delays': {
'ScreenDim': 10000,
'ScreenOff': 20000,
'Idle': 30000
}
},
'LidCloseAction': 'Suspend',
'UserActivityScreenDimDelayScale': 110
},
'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',
'owners': ['oscarpan@google.com', 'rsorokin@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True displays the accessibility options in the system tray menu. If you set the policy to False, the options don't appear in the menu.
If you set the policy, users can't change it. If not set, accessibility options don't appear in the menu, but users can make them appear through the Settings page.
If you turn on accessibility features by other means (for example, by key combination), accessibility options always appear in the system tray menu.'''
},
{
'name': 'DeviceLoginScreenShowOptionsInSystemTrayMenu',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:80-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 646,
'caption': '''Show accessibility options in system tray menu in the login screen''',
'tags': [],
'desc': '''Setting the policy to True displays the accessibility options in the system tray menu. If you set the policy to False, the options don't appear in the menu.
If you set the policy, users can't change it. If not set, accessibility options don't appear in the menu, but users can make them appear through the Settings page.
If you turn on accessibility features by other means (for example, by key combination), accessibility options always appear in the system tray menu.'''
},
{
'name': 'LargeCursorEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True keeps the large cursor on. Setting the policy to False keeps the large cursor off.
If you set the policy, users can't change the feature. If not set, the large cursor is off at first, but users can turn it on any time.'''
},
{
'name': 'SpokenFeedbackEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True keeps spoken feedback on. Setting the policy to False keeps spoken feedback off.
If you set the policy, users can't change it. If not set, spoken feedback is off at first, but users can turn it on any time.'''
},
{
'name': 'HighContrastEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True keeps High-contrast mode on. Setting the policy to False keeps High-contrast mode off.
If you set the policy, users can't change it. If not set, High-contrast mode is off, but users can turn it on any time.'''
},
{
'name': 'DeviceLoginScreenAccessibilityShortcutsEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 661,
'caption': '''Enable accessibility features shortcuts on the login screen''',
'tags': [],
'desc': '''Enable accessibility features shortcuts on the login screen.
If this policy is set to true, accessibility features shortcuts will always be enabled on the login screen.
If this policy is set to false, accessibility features shortcuts will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, accessibility features shortcuts will be enabled by default on the login screen.'''
},
{
'name': 'AccessibilityShortcutsEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 659,
'caption': '''Enable accessibility features shortcuts''',
'tags': [],
'desc': '''Enable accessibility features shortcuts.
If this policy is set to true, accessibility features shortcuts will always be enabled.
If this policy is set to false, accessibility features shortcuts will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, accessibility features shortcuts will be enabled by default.'''
},
{
'name': 'VirtualKeyboardEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True keeps the on-screen keyboard on. Setting the policy to False keeps the on-screen keyboard off.
If you set the policy, users can't change it. If not set, the on-screen keyboard is off at first, but users can turn it on any time.'''
},
{
'name': 'VirtualKeyboardFeatures',
'owners': ['anqing@chromium.org'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'auto_complete_enabled': {
'description': 'A boolean flag indicating if the on-screen keyboard can provide auto-complete.',
'type': 'boolean'
},
'auto_correct_enabled': {
'description': 'A boolean flag indicating if the on-screen keyboard can provide auto-correct.',
'type': 'boolean'
},
'handwriting_enabled': {
'description': 'A boolean flag indicating if the on-screen keyboard can provide input via handwriting recognition.',
'type': 'boolean'
},
'spell_check_enabled': {
'description': 'A boolean flag indicating if the on-screen keyboard can provide spell-check.',
'type': 'boolean'
},
'voice_input_enabled': {
'description': 'A boolean flag indicating if the on-screen keyboard can provide voice input.',
'type': 'boolean'
}
}
},
'supported_on': ['chrome_os:86-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
"auto_complete_enabled": True,
"auto_correct_enabled": True,
"handwriting_enabled": False,
"spell_check_enabled": False,
"voice_input_enabled": False
},
'future': True,
'id': 717,
'caption': '''Enable or disable various features on the on-screen keyboard''',
'tags': [],
'desc': '''Enable or disable various features on the on-screen keyboard. This policy takes effect only when "VirtualKeyboardEnabled" policy is enabled.
If one feature in this policy is set to True, it will be enabled on the on-screen keyboard.
If one feature in this policy is set to False or left unset, it will be disabled on the on-screen keyboard.
NOTE: this policy is only supported in PWA Kiosk mode.'''
},
{
'name': 'StickyKeysEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:76-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 561,
'caption': '''Enable sticky keys''',
'tags': [],
'desc': '''Setting the policy to True keeps sticky keys on. Setting the policy to False keeps sticky keys off.
If you set the policy, users can't change it. If not set, sticky keys is off at first, but users can turn it on any time.'''
},
{
'name': 'SelectToSpeakEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:77-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 573,
'caption': '''Enable select to speak''',
'tags': [],
'desc': '''Enable the select to speak accessibility feature.
If this policy is set to true, the select to speak will always be enabled.
If this policy is set to false, the select to speak will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the select to speak is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'DictationEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 592,
'caption': '''Enable the dictation accessibility feature''',
'tags': [],
'desc': '''Enable the dictation accessibility feature.
If this policy is set to enabled, the dictation will always be enabled.
If this policy is set to disabled, the dictation will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the dictation is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'KeyboardFocusHighlightEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 593,
'caption': '''Enable the keyboard focus highlighting accessibility feature''',
'tags': [],
'desc': '''Enable the keyboard focus highlighting accessibility feature.
This feature is responsible for highlighting the object that has the focus by the keyboard.
If this policy is set to enabled, the keyboard focus highlighting will always be enabled.
If this policy is set to disabled, the keyboard focus highlighting will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the keyboard focus highlighting is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'CursorHighlightEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 594,
'caption': '''Enable the cursor highlight accessibility feature''',
'tags': [],
'desc': '''Enable the cursor highlight accessibility feature.
This feature is responsible for highlighting the area that surrounds the mouse cursor while moving it.
If this policy is set to enabled, the cursor highlight will always be enabled.
If this policy is set to disabled, the cursor highlight will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the cursor highlight is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'CaretHighlightEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 595,
'caption': '''Enable the caret highlight accessibility feature''',
'tags': [],
'desc': '''Enable the caret highlight accessibility feature.
This feature is responsible for highlighting the area that surrounds the caret while editing.
If this policy is set to enabled, the caret highlight will always be enabled.
If this policy is set to disabled, the caret highlight will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the caret highlight is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'MonoAudioEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 596,
'caption': '''Enable the mono audio accessibility feature''',
'tags': [],
'desc': '''Enable the mono audio accessibility feature.
This feature is responsible for outputing stereo audio which includes different left and right channels, so different ears get different sounds.
If this policy is set to enabled, the mono audio will always be enabled.
If this policy is set to disabled, the mono audio will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the mono audio is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'AutoclickEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 597,
'caption': '''Enable the autoclick accessibility feature''',
'tags': [],
'desc': '''Enable the autoclick accessibility feature.
This feature is responsible to click without physically pressing your mouse or touchpad, hover over the object you'd like to click.
If this policy is set to enabled, the autoclick will always be enabled.
If this policy is set to disabled, the autoclick will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the autoclick is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'KeyboardDefaultToFunctionKeys',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True makes the top row of keys on the keyboard act as function key commands. Pressing the Search key changes their behavior back to media keys.
If set to False or not set, the keyboard defaults to producing media key commands. Pressing the Search key changes them to function keys.'''
},
{
'name': 'ScreenMagnifierType',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Screen magnifier disabled''',
},
{
'name': 'Full-screen',
'value': 1,
'caption': '''Full-screen magnifier enabled''',
},
{
'name': 'Docked',
'value': 2,
'caption': '''Docked 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': '''Setting the policy to None turns the screen magnifier off.
If you set the policy, users can't change it. If not set, the screen magnifier is off at first, but users can turn it on any time.''',
},
{
'name': 'DeviceLoginScreenDefaultLargeCursorEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True turns the large cursor on at the sign-in screen. Setting the policy to False turns the large cursor off at the sign-in screen.
If you set the policy, users can temporarily turn the large cursor on or off. When the sign-in screen reloads or stays idle for a minute, it reverts to its original state.
If not set, the large cursor is off at the sign-in screen. Users can turn it on any time, and its status on the sign-in screen persists across users.
Note: <ph name="DEVICE_LOGIN_SCREEN_LARGE_CURSOR_ENABLED">DeviceLoginScreenLargeCursorEnabled</ph> overrides this policy if the former is specified.''',
},
{
'name': 'DeviceLoginScreenLargeCursorEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:78-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 599,
'caption': '''Enable the large cursor on the login screen''',
'tags': [],
'desc': '''Enable the large cursor accessibility feature on the login screen.
If this policy is set to true, the large cursor will always be enabled on the login screen.
If this policy is set to false, the large cursor will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the large cursor is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenDefaultSpokenFeedbackEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True turns spoken feedback on at the sign-in screen. Setting the policy to False turns spoken feedback off at the screen.
If you set the policy, users can temporarily turn spoken feedback on or off. When the sign-in screen reloads or stays idle for a minute, it reverts to its original state.
If not set, spoken feedback is off at the sign-in screen. Users can turn it on any time, and its status on the sign-in screen persists across users.
Note: <ph name="DEVICE_LOGIN_SCREEN_SPOKEN_FEEDBACK_ENABLED_POLICY_NAME">DeviceLoginScreenSpokenFeedbackEnabled</ph> overrides this policy if the former is specified.''',
},
{
'name': 'DeviceLoginScreenSpokenFeedbackEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 605,
'caption': '''Enable the spoken feedback on the login screen''',
'tags': [],
'desc': '''Enable the spoken feedback accessibility feature on the login screen.
If this policy is set to true, the spoken feedback will always be enabled on the login screen.
If this policy is set to false, the spoken feedback will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the spoken feedback is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenDefaultHighContrastEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True turns High-contrast mode on at the sign-in screen. Setting the policy to False turns High-contrast mode off at the screen.
If you set the policy, users can temporarily change High-contrast mode, turning it on or off. When the sign-in screen reloads or stays idle for a minute, it reverts to its original state.
If not set, High-contrast mode is off at the sign-in screen. Users can turn it on any time, and its status on the sign-in screen persists across users.
Note: <ph name="DEVICE_LOGIN_SCREEN_HIGH_CONTRAST_ENABLED_POLICY_NAME">DeviceLoginScreenHighContrastEnabled</ph> overrides this policy if the former is specified.''',
},
{
'name': 'DeviceLoginScreenHighContrastEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 606,
'caption': '''Enable the high contrast on the login screen''',
'tags': [],
'desc': '''Enable the high contrast accessibility feature on the login screen.
If this policy is set to true, the high contrast will always be enabled on the login screen.
If this policy is set to false, the high contrast will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the high contrast is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenDefaultVirtualKeyboardEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True turns the on-screen keyboard on at sign-in. Setting the policy to False turns the on-screen keyboard off at sign-in.
If you set the policy, users can temporarily turn the on-screen keyboard on or off. When the sign-in screen reloads or stays idle for a minute, it reverts to its original state.
If not set, the on-screen keyboard is off at the sign-in screen. Users can turn it on any time, and its status on the sign-in screen persists across users.
Note: <ph name="DEVICE_LOGIN_SCREEN_VIRTUAL_KEYBOARD_ENABLED_POLICY_NAME">DeviceLoginScreenVirtualKeyboardEnabled</ph> overrides this policy if the former is specified.''',
},
{
'name': 'DeviceLoginScreenVirtualKeyboardEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 607,
'caption': '''Enable the virtual keyboard on the login screen''',
'tags': [],
'desc': '''Enable the virtual keyboard accessibility feature on the login screen.
If this policy is set to true, the virtual keyboard will always be enabled on the login screen.
If this policy is set to false, the virtual keyboard will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the virtual keyboard is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'PrimaryMouseButtonSwitch',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 655,
'caption': '''Switch the primary mouse button to the right button''',
'tags': [],
'desc': '''Switch the primary mouse button to the right button.
If this policy is set to enabled, the right button of the mouse will always be the primary key.
If this policy is set to disabled, the left button of the mouse will always be the primary key.
If you set this policy, users cannot change or override it.
If this policy is left unset, the left button of the mouse will be the primary key initially, but can be switched by the user anytime.'''
},
{
'name': 'DeviceLoginScreenPrimaryMouseButtonSwitch',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:81-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 657,
'caption': '''Switch the primary mouse button to the right button on the login screen''',
'tags': [],
'desc': '''Switch the primary mouse button to the right button on the login screen.
If this policy is set to enabled, the right button of the mouse will always be the primary key on the login screen.
If this policy is set to disabled, the left button of the mouse will always be the primary key on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the left button of the mouse will be the primary key on the login screen initially, but can be switched by the user anytime.'''
},
{
'name': 'SharedClipboardEnabled',
'owners': ['mvanouwerkerk@chromium.org', 'yasmo@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:79-', 'chrome_os:79-', 'android:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 610,
'caption': '''Enable the Shared Clipboard Feature''',
'tags': [],
'desc': '''Enable the Shared Clipboard feature which allows users to send text between Chrome Desktops and an Android device when Sync is enabled and the user is Signed-in.
If this policy is set to true, the capability of sending text, cross device, for chrome user is enabled.
If this policy is set to false, the capability of sending text, cross device, for chrome user is disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the shared clipboard feature is enabled by default.
It is up to the admins to set policies in all platforms they care about. It's recommended to set this policy to one value in all platforms.''',
},
{
'name': 'DeviceLoginScreenDefaultScreenMagnifierType',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Screen magnifier disabled''',
},
{
'name': 'Full-screen',
'value': 1,
'caption': '''Full-screen magnifier enabled''',
},
{
'name': 'Docked',
'value': 2,
'caption': '''Docked 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': '''Setting the policy to None turns screen magnification off at the sign-in screen.
If you set the policy, users can temporarily turn the screen magnifier on or off. When the sign-in screen reloads or stays idle for a minute, it reverts to its original state.
If not set, the screen magnifier is off at the sign-in screen. Users can turn it on any time, and its status on the sign-in screen persists across users.
Valid values: 0 = Off 1 = On 2 = Docked magnifier on
Note: <ph name="DEVICE_LOGIN_SCREEN_SCREEN_MAGNIFIER_TYPE_POLICY_NAME">DeviceLoginScreenScreenMagnifierType</ph> overrides this policy if the former is specified.''',
},
{
'name': 'DeviceLoginScreenScreenMagnifierType',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Screen magnifier disabled''',
},
{
'name': 'Full-screen',
'value': 1,
'caption': '''Full-screen magnifier enabled''',
},
{
'name': 'Docked',
'value': 2,
'caption': '''Docked magnifier enabled''',
},
],
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 628,
'caption': '''Set the screen magnifier type on the login screen''',
'tags': [],
'desc': '''If this policy is set, it controls the type of screen magnifier that is enabled.
If this policy is set to "Full-screen", the screen magnifier will always be enabled in full-screen magnifier mode on the login screen.
If this policy is set to "Docked", the screen magnifier will always be enabled in docked magnifier mode on the login screen.
If this policy is set to "None", the screen magnifier will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the dictation is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenDictationEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 611,
'caption': '''Enable the dictation on the login screen''',
'tags': [],
'desc': '''Enable the dictation accessibility feature on the login screen.
If this policy is set to true, the dictation will always be enabled on the login screen.
If this policy is set to false, the dictation will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the dictation is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenSelectToSpeakEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 612,
'caption': '''Enable the select to speak on the login screen''',
'tags': [],
'desc': '''Enable the select to speak accessibility feature on the login screen.
If this policy is set to true, the select to speak will always be enabled on the login screen.
If this policy is set to false, the select to speak will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the select to speak is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenCursorHighlightEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 613,
'caption': '''Enable the cursor highlight on the login screen''',
'tags': [],
'desc': '''Enable the cursor highlight accessibility feature on the login screen.
If this policy is set to true, the cursor highlight will always be enabled on the login screen.
If this policy is set to false, the cursor highlight will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the cursor highlight is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenCaretHighlightEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 614,
'caption': '''Enable the caret highlight on the login screen''',
'tags': [],
'desc': '''Enable the caret highlight accessibility feature on the login screen.
If this policy is set to true, the caret highlight will always be enabled on the login screen.
If this policy is set to false, the caret highlight will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the caret highlight is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenMonoAudioEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 615,
'caption': '''Enable the mono audio on the login screen''',
'tags': [],
'desc': '''Enable the mono audio accessibility feature on the login screen.
This feature allows to switch the device mode from the default stereo audio to the mono audio.
If this policy is set to true, the mono audio will always be enabled on the login screen.
If this policy is set to false, the mono audio will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the mono audio is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenAutoclickEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 617,
'caption': '''Enable the autoclick on the login screen''',
'tags': [],
'desc': '''Enable the autoclick accessibility feature on the login screen.
This feature allows to automatically click when the mouse cursor stops, without requiring the user to physically press the mouse or touchpad buttons.
If this policy is set to true, the autoclick will always be enabled on the login screen.
If this policy is set to false, the autoclick will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the autoclick is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenStickyKeysEnabled',
'owners': ['amraboelkher@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'device_only': True,
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
},
'example_value': True,
'id': 618,
'caption': '''Enable the sticky keys on the login screen''',
'tags': [],
'desc': '''Enable the sticky keys accessibility feature on the login screen.
If this policy is set to true, the sticky keys will always be enabled on the login screen.
If this policy is set to false, the sticky keys will always be disabled on the login screen.
If you set this policy, users cannot change or override it.
If this policy is left unset, the sticky keys is disabled on the login screen initially but can be enabled by the user anytime.''',
},
{
'name': 'DeviceLoginScreenKeyboardFocusHighlightEnabled',
'owners': ['amraboelkher@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 619,
'caption': '''Enable the keyboard focus highlighting accessibility feature''',
'tags': [],
'desc': '''Enable the keyboard focus highlighting accessibility feature on the login screen.
This feature is responsible for highlighting the object that is focused by the keyboard.
If this policy is set to enabled, the keyboard focus highlighting will always be enabled.
If this policy is set to disabled, the keyboard focus highlighting will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, the keyboard focus highlighting is disabled initially but can be enabled by the user anytime.'''
},
{
'name': 'HideWebStoreIcon',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/variations/OWNERS'],
'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',
'owners': ['file://components/variations/OWNERS'],
'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': 'ChromeVariations',
'owners': ['pastarmovj@chromium.org', 'asvitkine@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [0,1,2],
},
'items': [
{
'name': 'VariationsEnabled',
'value': 0,
'caption': '''Enable all variations''',
},
{
'name': 'CriticalFixesOnly',
'value': 1,
'caption': '''Enable variations concerning critical fixes only''',
},
{
'name': 'VariationsDisabled',
'value': 2,
'caption': '''Disable all variations''',
},
],
'supported_on': ['chrome.*:83-'],
'future_on': ['ios'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'id': 663,
'caption': '''Determine the availability of variations''',
'tags': [],
'desc': '''Configuring this policy allows to specify which variations are allowed to be applied in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Variations provide a means for offering modifications to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> without shipping a new version of the browser by selectively enabling or disabling already existing features. See https://support.google.com/chrome/a?p=Manage_the_Chrome_variations_framework for more information.
Setting the <ph name="VARIATIONS_ENABLED_OPTION_NAME">VariationsEnabled</ph> (value 0), or leaving the policy not set allows all variations to be applied to the browser.
Setting the <ph name="CRITICAL_VARIATIONS_ONLY_OPTION_NAME">CriticalFixesOnly</ph> (value 1), allows only variations considered critical security or stability fixes to be applied to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Setting the <ph name="VARIATIONS_DISABLED_OPTION_NAME">VariationsDisabled</ph> (value 2), prevent all variations from being applied to the browser. Please note that this mode can potentially prevent the <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> developers from providing critical security fixes in a timely manner and is thus not recommended.'''
},
{
'name': 'DeviceChromeVariations',
'owners': ['pastarmovj@chromium.org', 'asvitkine@chromium.org', 'amraboelkher@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [0,1,2],
},
'device_only': True,
'items': [
{
'name': 'VariationsEnabled',
'value': 0,
'caption': '''Enable all variations''',
},
{
'name': 'CriticalFixesOnly',
'value': 1,
'caption': '''Enable variations concerning critical fixes only''',
},
{
'name': 'VariationsDisabled',
'value': 2,
'caption': '''Disable all variations''',
},
],
'supported_on': ['chrome_os:83-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'id': 674,
'caption': '''Determine the availability of variations on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>''',
'tags': [],
'desc': '''Configuring this policy allows to specify which variations are allowed to be applied on an enterprise-managed <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> device.
Variations provide a means for offering modifications to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> without shipping a new version by selectively enabling or disabling already existing features. See https://support.google.com/chrome/a?p=Manage_the_Chrome_variations_framework for more information.
Setting the <ph name="VARIATIONS_ENABLED_OPTION_NAME">VariationsEnabled</ph> (value 0), or leaving the policy not set allows all variations to be applied to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
Setting the <ph name="CRITICAL_VARIATIONS_ONLY_OPTION_NAME">CriticalFixesOnly</ph> (value 1), allows only variations considered critical security or stability fixes to be applied to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
Setting the <ph name="VARIATIONS_DISABLED_OPTION_NAME">VariationsDisabled</ph> (value 2), will prevent all variations from being applied to the browser on the login screen. Please note that this mode can potentially prevent the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> developers from providing critical security fixes in a timely manner and is thus not recommended.'''
},
{
'name': 'AttestationEnabledForDevice',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'deprecated': True,
'supported_on': ['chrome_os:29-70'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'deprecated': True,
'supported_on': ['chrome.*:29-70'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'deprecated': True,
'supported_on': ['android:49-70'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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-',
],
'future_on': [ 'ios' ],
'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': '''Setting the policy sets up a list of bookmarks where each one is a dictionary with the keys "<ph name="NAME">name</ph>" and "<ph name="URL_LABEL">url</ph>". These keys hold the bookmark's name and target. Admins can set up a subfolder by defining a bookmark without a "<ph name="URL_LABEL">url</ph>" key, but with an additional "<ph name="CHILDREN">children</ph>" key. This key also has a list of bookmarks, some of which can also be folders. Chrome amends incomplete URLs as if they were submitted through the address bar. For example, "<ph name="GOOGLE_COM">google.com</ph>" becomes "<ph name="HTTPS_GOOGLE_COM">https://google.com/</ph>".
Users can't change the folders the bookmarks are placed in (though they can hide it from the bookmark bar). The default folder name for managed bookmarks is "Managed bookmarks" but it can be changed by adding a new sub-dictionary to the policy with a single key named "<ph name="TOPLEVEL_NAME">toplevel_name</ph>" with the desired folder name as its value. Managed bookmarks are not synced to the user account and extensions can't modify them.''',
},
{
'name': 'DataCompressionProxyEnabled',
'owners': ['bolian@chromium.org', 'pmarko@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'external',
'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'
}
},
},
'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.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'external',
'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'
}
},
},
'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': '''If you set the policy, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>
downloads and uses the wallpaper image you set for the user's desktop and sign-in screen background, and users can't change it. Specify the URL (that's accessible without authentication) which <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>
can download the wallpaper image from, as well as a cryptographic hash (in JPEG format with a file size up to 16 MB) to verify its integrity.
If not set, users choose the image for the desktop and sign-in screen background.''',
},
{
'name': 'EnableDeprecatedWebPlatformFeatures',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://src/chrome/browser/chromeos/login/easy_unlock/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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 managed session''',
'tags': [],
'desc': '''Setting the policy (as recommended only) moves recommended locales for a managed session to the top of the list, in the order in which they appear in the policy. The first recommended locale is preselected.
If not set, the current UI locale is preselected.
For more than one recommended locale, the assumption is that users want to choose among these locales. Locale and keyboard layout selection is prominent when starting a managed session. Otherwise, the assumption is that most users want the preselected locale. Locale and keyboard layout selection is less prominent when starting a managed session.
If you set the policy and turn automatic sign-in on (see the <ph name="DEVICE_LOCAL_ACCOUNT_AUTO_LOGIN_ID_POLICY_NAME">DeviceLocalAccountAutoLoginId</ph> and <ph name="DEVICE_LOCAL_ACCOUNT_AUTO_LOGIN_DELAY_POLICY_NAME">DeviceLocalAccountAutoLoginDelay</ph> policies), the managed session uses the first recommended locale and the most popular matching keyboard layout.
The preselected keyboard layout is always the most popular layout matching the preselected locale. Users can always choose any locale supported by <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> for their session.''',
},
{
'name': 'BrowserGuestModeEnabled',
'owners': ['mlerman@chromium.org', 'zmin@chromium.org'],
'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': 'BrowserGuestModeEnforced',
'owners': ['mlerman@chromium.org', 'zmin@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:77-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 574,
'caption': '''Enforce browser guest mode''',
'tags': [],
'desc': '''If this policy is set to enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will enforce guest sessions and prevents profile 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 disabled or not set or browser guest mode is disabled by <ph name="BROWSER_GUEST_MODE_ENABLED_POLICY_NAME">BrowserGuestModeEnabled</ph> policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will allow using new and existing profiles.''',
},
{
'name': 'BrowserAddPersonEnabled',
'owners': ['mlerman@chromium.org', 'zmin@chromium.org'],
'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',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'deprecated': True,
'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': '''This policy is deprecated, consider using BrowserSignin instead.
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': 'BrowserSignin',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Disable',
'value': 0,
'caption': '''Disable browser sign-in''',
},
{
'name': 'Enable',
'value': 1,
'caption': '''Enable browser sign-in''',
},
{
'name': 'Force',
'value': 2,
'caption': '''Force users to sign-in to use the browser''',
'supported_on': ['chrome.win:70-', 'chrome.mac:70-'],
},
],
'supported_on': ['chrome.*:70-', 'android:70-'],
'features': {
'dynamic_refresh': False,
'per_profile': False
},
'example_value': 2,
'id': 487,
'caption': '''Browser sign in settings''',
'tags': [],
'desc': '''This policy controls the sign-in behavior of the browser. It allows you to specify if the user can sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> with their account and use account related services like Chrome sync.
If the policy is set to "Disable browser sign-in" then the user can not sign in to the browser and use account based services. In this case browser level features like Chrome sync can not be used and will be unavailable. If the user was signed in and the policy is set "Disabled" they will be signed out the next time they run Chrome but their local profile data like bookmarks, passwords etc. will stay preserved. The user will still be able to sign into and use Google web services like Gmail.
If the policy is set to "Enable browser sign-in," then the user is allowed to sign in to the browser and is automatically signed in to the browser when signed in to Google web services like Gmail. Being signed in to the browser means the user's account information will be kept by the browser. However, it does not mean that Chrome sync will be turned on per default; the user must separately opt-in to use this feature. Enabling this policy will prevent the user from turning off the setting that allows browser sign-in. To control the availability of Chrome sync, use the "SyncDisabled" policy.
If the policy is set to "Force browser sign-in" the user is presented with an account selection dialog and has to choose and sign in to an account to use the browser. This ensures that for managed accounts the policies associated with the account are applied and enforced. By default this turns on Chrome sync for the account, except for the case when sync was disabled by the domain admin or via the "SyncDisabled" policy. 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: https://support.google.com/chrome/a/answer/7572556. This option does not support Linux and Android, it will fallback to "Enable browser sign-in" if used.
If this policy is not set then the user can decide if they want to enable the browser sign in option and use it as they see fit.''',
},
{
'name': 'SSLVersionMin',
'owners': ['file://src/crypto/OWNERS'],
'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',
'owners': ['file://src/crypto/OWNERS'],
'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',
'owners': ['file://src/crypto/OWNERS'],
'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-74',
'chrome_os:58-74',
'android:58-74',
],
'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 75 (around June 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',
'owners': ['file://src/components/certificate_transparency/OWNERS'],
'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': '''Setting the policy turns off Certificate Transparency disclosure requirements for the hostnames in the specified URLs. While making it harder to detect misissued certificates, hosts can keep using certificates that otherwise wouldn't be trusted (because they weren't properly publicly disclosed).
Leaving the policy unset means that if certificates requiring disclosure through Certificate Transparency aren't disclosed, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> doesn't trust those certificates.
A URL pattern follows this format ( https://www.chromium.org/administrators/url-blacklist-filter-format ). However, because the validity of certificates for a given hostname is independent of the scheme, port, or path, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> only considers the hostname portion of the URL. Wildcard hosts aren't supported.''',
},
{
'name': 'CertificateTransparencyEnforcementDisabledForCas',
'owners': ['file://src/components/certificate_transparency/OWNERS'],
'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': '''Setting the policy turns off enforcement of Certificate Transparency disclosure requirements for a list of <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> hashes. Enterprise hosts can keep using certificates that otherwise wouldn't be trusted (because they weren't properly publicly disclosed). To turn off enforcement, the hash must meet one of these conditions:
* It's of the server certificate's <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph>.
* It's of a <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> that appears in a Certificate Authority (CA) certificate in the certificate chain. That CA certificate is constrained through the X.509v3 nameConstraints extension, one or more directoryName nameConstraints are present in the permittedSubtrees, and the directoryName has an organizationName attribute.
* It's of a <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> 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 has the same number of organizationName attributes, in the same order, and with byte-for-byte identical values.
Specify a <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> hash by linking the hash algorithm name, a slash, and the Base64 encoding of that hash algorithm applied to the DER-encoded <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> of the specified certificate. Base64 encoding format matches that of an SPKI Fingerprint. The only recognized hash algorithm is sha256; others are ignored.
Leaving the policy unset means that if certificates requiring disclosure through Certificate Transparency aren't disclosed, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> doesn't trust those certificates.''',
},
{
'name': 'CertificateTransparencyEnforcementDisabledForLegacyCas',
'owners': ['file://src/components/certificate_transparency/OWNERS'],
'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': '''Setting the policy turns off enforcement of Certificate Transparency disclosure requirements for a list of Legacy Certificate Authorities (CA) for certificate chains with a specified <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> hash. Enterprise hosts can keep using certificates that otherwise wouldn't be trusted (because they weren't properly publicly disclosed). To turn off enforcement, the <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> hash must appear in a CA certificate recognized as a Legacy CA. A Legacy CA is publicly trusted by one or more operating systems supported by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, but not Android Open Source Project or <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.
Specify a <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> hash by linking the hash algorithm name, a slash and the Base64 encoding of that hash algorithm applied to the DER-encoded <ph name="SUBJECT_PUBLIC_KEY_INFO">subjectPublicKeyInfo</ph> of the specified certificate. Base64 encoding format matches that of an SPKI Fingerprint. The only recognized hash algorithm is sha256; others are ignored.
Leaving the policy unset means that if certificates requiring disclosure through Certificate Transparency aren't disclosed, then <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> doesn't trust those certificates.''',
},
{
'name': 'RC4Enabled',
'owners': ['file://src/crypto/OWNERS'],
'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': '''Enable RC4 cipher suites in TLS''',
'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',
'owners': ['file://src/crypto/OWNERS'],
'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': '''Enable DHE cipher suites in TLS''',
'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',
'owners': ['donnd@chromium.org', 'twellington@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [
'android:40-',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 281,
'caption': '''Enable Touch to Search''',
'tags': [],
'desc': '''Setting the policy to True or leaving it unset makes Touch to Search available to the user, and they can turn the feature on or off.
Setting the policy to False turns Touch to Search off completely.''',
},
{
'name': 'DeviceRebootOnShutdown',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting to lower than 1 MB or leaving it unset means <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> uses the default size for caching apps and extensions for installation by multiple users of a single device, avoiding the need to redownload each one for every user.''',
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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.
If the value of the policy is not a valid domain, the policy will not be applied.''',
},
{
'name': 'ForceMaximizeOnFirstRun',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True means Chrome maximizes the first window shown on first run.
Setting the policy to False or leaving it unset means that Chrome might maximize the first window, depending on the screen size.''',
},
{
'name': 'SSLErrorOverrideAllowed',
'owners': ['agl@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['grt@chromium.org'],
'supported_on': ['chrome.win:45-62'],
'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',
'owners': ['zmo@chromium.org', 'kbr@chromium.org'],
'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',
'owners': ['phweiss@chromium.org'],
'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': '''Setting the policy to True turns on Unified Desktop, which allows applications to span multiple displays. Users can turn off Unified Desktop for individual displays.
Setting the policy to False or leaving it unset turns off Unified Desktop, and users can't turn it on.''',
},
{
'name': 'DisplayRotationDefault',
'owners': ['phweiss@chromium.org'],
'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': '''Setting the policy has each display rotate to the specified orientation on every reboot and the first time it's connected after the policy value changes. Users may change the display rotation through the settings page after signing in, but it changes back at the next reboot. This policy applies to primary and secondary displays.
If not set, the default value is 0 degrees and users are free to change it. In this case, the default value isn't reapplied at restart.''',
},
{
'name': 'ArcEnabled',
'owners': ['pbond@chromium.org'],
'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':
'''Unless Ephemeral mode or multiple sign-in is on during the user's session, setting ArcEnabled to True turns ARC on for the user. Setting the policy to False or leaving it unset means enterprise users can't use ARC.''',
},
{
'name': 'ArcPolicy',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'description_schema': {
"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"
}
}
}
}
}
},
'supported_on': ['chrome_os:50-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': '{"applications":[{"packageName":"com.google.android.gm","installType":"FORCE_INSTALLED","defaultPermissionPolicy":"PROMPT","managedConfiguration":{}},{"packageName":"com.google.android.apps.docs","installType":"PRELOAD","defaultPermissionPolicy":"PROMPT","managedConfiguration":{}}]}',
'id': 318,
'caption': '''Configure ARC''',
'tags': [],
'desc':
'''Setting the policy specifies a set of policies to hand over to the ARC runtime. Admins can use it to select the Android apps that autoinstall. Enter value in valid JSON format.
To pin apps to the launcher, see PinnedLauncherApps.'''
},
{
'name': 'AllowKioskAppControlChromeVersion',
'owners': ['xiyuan@chromium.org', 'poromov@chromium.org'],
'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',
'owners': ['afakhry@chromium.org', 'tbarzic@chromium.org'],
'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',
'owners': ['vpalatin@chromium.org', 'poromov@chromium.org'],
'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': '''Setting the policy defines the list of USB devices users can detach from their kernel driver to use through the chrome.usb API directly inside a web app. Entries are pairs of USB Vendor Identifier and Product Identifier to identify specific hardware.
If not set, the list of a detachable USB devices is empty.''',
},
{
'name': 'DeviceAllowBluetooth',
'owners': ['isandrk@chromium.org', 'sinhak@chromium.org'],
'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': '''Setting the policy to Enabled or leaving it unset lets users turn Bluetooth on or off.
Setting the policy to Disabled means <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> turns Bluetooth off, and users can't turn it on.
Note: To turn on Bluetooth, users must sign out and in again.''',
},
{
'name': 'SuppressUnsupportedOSWarning',
'owners': ['grt@chromium.org'],
'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.
If this policy is false or unset, the warnings will appear on such unsupported computers or operating systems.''',
'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',
'owners': ['glevin@chromium.org'],
'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',
'owners': ['alemate@chromium.org', 'michaelpg@chromium.org'],
'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': '''Unless the <ph name="SYSTEM_TIMEZONE_POLICY_NAME">SystemTimezone</ph> policy turns off automatic time zone detection, then setting the policy outlines the automatic time zone detection method, which users can't change.
Setting the policy to:
* <ph name="POLICY_ENUM_SYSTEMTIMEZONEAUTOMATICDETECTION_TIMEZONEAUTOMATICDETECTIONDISABLED">TimezoneAutomaticDetectionDisabled</ph> keeps automatic time zone detection off.
* <ph name="POLICY_ENUM_SYSTEMTIMEZONEAUTOMATICDETECTION_TTIMEZONEAUTOMATICDETECTIONIPONLY">TimezoneAutomaticDetectionIPOnly</ph> keeps automatic time zone detection on, using the IP-only method.
* <ph name="POLICY_ENUM_SYSTEMTIMEZONEAUTOMATICDETECTION_TIMEZONEAUTOMATICDETECTIONSENDWIFIACCESSPOINTS">TimezoneAutomaticDetectionSendWiFiAccessPoints</ph> keeps automatic time zone detection on, continually sending the list of visible Wi-Fi access-points to the Geolocation API server for finer-grained time zone detection.
* <ph name="POLICY_ENUM_SYSTEMTIMEZONEAUTOMATICDETECTION_TIMEZONEAUTOMATICDETECTIONSENDALLLOCATIONINFO">TimezoneAutomaticDetectionSendAllLocationInfo</ph> keeps automatic time zone detection on, continually sending location information (such as Wi-Fi access points, reachable cell towers, GPS) to a server for the most fine-grained time zone detection.
If not set, set to Let users decide, or set to None, then users control automatic time zone detection using normal controls in chrome://settings.''',
},
{
'name': 'TaskManagerEndProcessEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['kirtika@chromium.org', 'pmarko@chromium.org'],
'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': 'DeviceWiFiFastTransitionEnabled',
'owners': ['matthewmwang@chromium.org'],
'device_only': True,
'caption': '''Enable 802.11r Fast Transition''',
'desc': '''Allows enabling or disabling Fast Transition.
This applies to all users, and to all interfaces on the device.
In order for Fast Transition to be used, both this setting and the per-network ONC property need to be enabled.
Once set, Fast Transition persists until the policy is changed to disable it.
If this policy is not set or set to false, Fast Transition is not used.
If set to true, Fast Transition is used when the wireless access point supports it.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:72-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'tags': [],
'id': 501,
},
{
'name': 'DeviceWiFiAllowed',
'owners': ['apotapchuk@chromium.org'],
'device_only': True,
'caption': '''Enable WiFi''',
'desc': '''
If the policy is set to false, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> will disable WiFi and users cannot enable it back.
If the policy is set to true or left unset, users will be able to enable or disable WiFi as they wish.''',
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'tags': [],
'id': 537,
},
{
'name': 'DeviceDockMacAddressSource',
'owners': ['lamzin@google.com'],
'caption': '''Device MAC address source when docked''',
'desc': '''
Configures which MAC (media access control) address will be used when a dock is connected to the device.
When a dock is connected to some device models, the device's designated dock MAC address is used to identify the device on Ethernet by default. This policy allows the administrator to change the source of the MAC address while docked.
If 'DeviceDockMacAddress' is selected or the policy is left unset, the device's designated dock MAC address will be used.
If 'DeviceNicMacAddress' is selected, the device's NIC (network interface controller) MAC address will be used.
If 'DockNicMacAddress' is selected, the dock's NIC MAC address will be used.
This setting can not be changed by the user.''',
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3 ]
},
'items': [
{
'name': 'DeviceDockMacAddress',
'value': 1,
'caption': '''Device's designated dock MAC address'''
},
{
'name': 'DeviceNicMacAddress',
'value': 2,
'caption': '''Device's built-in NIC MAC address'''
},
{
'name': 'DockNicMacAddress',
'value': 3,
'caption': '''Dock's built-in NIC MAC address'''
},
],
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'tags': [],
'id': 547,
},
{
'name': 'LoginVideoCaptureAllowedUrls',
'owners': ['cernekee@chromium.org'],
'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': 'DeviceLoginScreenExtensions',
'owners': ['emaxx@chromium.org', 'hendrich@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:60-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': ['khpfeaanjngmcnplbdlpegiifgpfgdco;https://clients2.google.com/service/update2/crx'],
'id': 336,
'caption': '''Configure the list of installed apps and extensions on the login screen''',
'tags': ['full-admin-access'],
'desc': '''
Specifies a list of apps and extensions that are installed silently on the login screen, without user interaction, and which cannot be uninstalled or disabled by the user.
Permissions requested by the apps/extensions are granted implicitly, without user interaction, including any additional permissions requested by future versions of the app/extension. <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> restricts the set of permissions that the extensions can request.
Note that, for security and privacy reasons, only apps and extensions that belong to the allow list bundled into <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can be installed. All other items will be ignored.
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>.
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.
For example, <ph name="LOGIN_SCREEN_EXTENSION_POLICY_EXAMPLE">khpfeaanjngmcnplbdlpegiifgpfgdco;https://clients2.google.com/service/update2/crx</ph> installs the <ph name="SMART_CARD_CONNECTOR_APP_NAME">Smart Card Connector</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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['pbond@chromium.org', 'edmanp@chromium.org'],
'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': '''Setting the policy to CopyCaCerts makes all ONC-installed CA certificates with <ph name="WEB_TRUSTED_BIT">Web TrustBit</ph> available for ARC-apps.
Setting to None or leaving it unset makes <ph name="PRODUCT_OS_NAME">$2<ex>Chrome OS</ex></ph> certificates unavailable for ARC-apps.''',
},
{
'name': 'AllowedDomainsForApps',
'owners': ['igorcov@chromium.org', 'atwilson@chromium.org'],
'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 to allow
gmail.com/googlemail.com accounts, you should add "consumer_accounts"
(without quotes) to the list of domains).
This setting will prevent the user from logging in, and adding a Secondary
Account, on a managed device that requires Google authentication, if that
account does not belong to the aforementioned list of allowed domains.
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',
'owners': ['eroman@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': [ 'chrome.*:52-74', 'chrome_os:52-74' ],
'deprecated': True,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 332,
'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).
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 policy will be removed in M75.''',
},
{
'name': 'EnableMediaRouter',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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/RFC4193 private addresses.
If this policy is set to false, <ph name="PRODUCT_NAME">Google Cast</ph> will connect to Cast devices on RFC1918/RFC4193 private addresses only.
If this policy is not set, <ph name="PRODUCT_NAME">Google Cast</ph> will connect to Cast devices on RFC1918/RFC4193 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['treib@chromium.org', 'carlosk@chromium.org'],
'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':
'''Setting the policy to True or leaving it unset displays autogenerated content suggestions on the New Tab page, based on the user's browsing history, interests, or location.
Setting the policy to False prevents autogenerated content suggestions from appearing on the New Tab page.''',
},
{
'name': 'NTPCustomBackgroundEnabled',
'owners': ['mahmadi@chromium.org', 'yyushkina@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 653,
'default_for_enterprise_users': True,
'caption': '''Allow users to customize the background on the New Tab page''',
'tags': [],
'desc':
'''If the policy is set to false, the New Tab page won't allow users to customize the background. Any existing custom background will be permanently removed even if the policy is set to true later.
If the policy is set to true or unset, users can customize the background on the New Tab page.''',
},
{
'name': 'WebRtcUdpPortRange',
'owners': ['guidou@chromium.org'],
'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': 'WebRtcLocalIpsAllowedUrls',
'owners': ['qingsi@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': ['https://www.example.com', '*example.com*'],
'id': 640,
'caption': '''URLs for which local IPs are exposed in WebRTC ICE candidates''',
'tags': [],
'desc': '''Patterns in this list will be matched against the security origin of the requesting URL.
If a match is found or chrome://flags/#enable-webrtc-hide-local-ips-with-mdns is Disabled, the local IP addresses are shown in WebRTC ICE candidates.
Otherwise, local IP addresses are concealed with mDNS hostnames.
Please note that this policy weakens the protection of local IPs if needed by administrators.''',
},
{
'name': 'WebRestrictionsAuthority',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://src/components/update_client/OWNERS'],
'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',
'owners': ['file://chromeos/printing/OWNERS'],
'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',
'description': 'This field 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.'
},
'autoconf': {
'type': 'boolean',
'description': 'Boolean flag indicating whether IPP Everywhere should be used to set up the printer. This flag is supported on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 76 and higher.'
}
}
}
}
}
},
'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", "autoconf": false } '
'}'
],
'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.
Either <ph name="PRINTER_EFFECTIVE_MODEL">effective_model</ph> should contain the name of the printer or <ph name="PRINTER_AUTOCONF">autoconf</ph> should be set to true. The printers with both or without any properties will be ignored.
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',
'owners': ['file://chromeos/printing/OWNERS'],
'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',
'owners': ['file://chromeos/printing/OWNERS'],
'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',
'owners': ['file://chromeos/printing/OWNERS'],
'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',
'owners': ['file://chromeos/printing/OWNERS'],
'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',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org'],
'id': 386,
'device_only': True,
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { 'type': 'string' },
'hash': { 'type': 'string' }
},
},
'supported_on': ['chrome_os:73-'],
'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_ALLOWLIST">DevicePrintersAllowlist</ph>, and <ph name="DEVICE_PRINTERS_BLOCKLIST">DevicePrintersBlocklist</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',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org'],
'id': 387,
'device_only': True,
'supported_on': ['chrome_os:73-'],
'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,
},
'deprecated': True,
'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_NATIVE_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_NATIVE_PRINTERS_WHITELIST">DevicePrintersWhitelist</ph> designates only those printers which are selectable.
If this policy is not set, <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is assumed.
This policy is deprecated, please use <ph name="DEVICE_PRINTERS_ACCESS_MODE">DevicePrintersAccessMode</ph> instead.
''',
},
{
'name': 'DeviceNativePrintersBlacklist',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org'],
'supported_on': ['chrome_os:73-'],
'device_only': True,
'id': 388,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'features': {
'dynamic_refresh': True,
},
'deprecated': 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_NATIVE_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>.
This policy is deprecated, please use <ph name="DEVICE_PRINTERS_BLOCKLIST">DevicePrintersBlocklist</ph> instead.
''',
},
{
'name': 'DeviceNativePrintersWhitelist',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org'],
'supported_on': ['chrome_os:73-'],
'device_only': True,
'id': 389,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'deprecated': True,
'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_NATIVE_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>.
This policy is deprecated, please use <ph name="DEVICE_PRINTERS_ALLOWLIST">DevicePrintersAllowlist</ph> instead.
''',
},
{
'name': 'DevicePrintersAccessMode',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org'],
'id': 733,
'device_only': True,
'supported_on': ['chrome_os:86-'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'BlocklistRestriction',
'value': 0,
'caption': '''All printers are shown except those in the blocklist.''',
},
{
'name': 'AllowlistPrintersOnly',
'value': 1,
'caption': '''Only printers in the allowlist 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_BLOCKLIST">BlocklistRestriction</ph> is selected, <ph name="DEVICE_PRINTERS_BLOCKLIST">DevicePrintersBlocklist</ph> is used to restrict access to the specified printers. If <ph name="PRINTERS_ALLOWLIST">AllowlistPrintersOnly</ph> is selected, <ph name="DEVICE_PRINTERS_ALLOWLIST">DevicePrintersAllowlist</ph> designates only those printers which are selectable.
If this policy is not set, <ph name="PRINTERS_ALLOW_ALL">AllowAll</ph> is assumed.
''',
},
{
'name': 'DevicePrintersBlocklist',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org', 'bmalcolm@chromium.org'],
'supported_on': ['chrome_os:86-'],
'device_only': True,
'id': 734,
'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_BLOCKLIST">BlocklistRestriction</ph> is chosen for <ph name="DEVICE_PRINTERS_ACCESS_MODE">DevicePrintersAccessMode</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': 'DevicePrintersAllowlist',
'owners': ['skau@chromium.org', 'nikitapodguzov@chromium.org', 'bmalcolm@chromium.org'],
'supported_on': ['chrome_os:86-'],
'device_only': True,
'id': 735,
'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_ALLOWLIST">AllowlistPrintersOnly</ph> is chosen for <ph name="DEVICE_PRINTERS_ACCESS_MODE">DevicePrintersAccessMode</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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
},
'auto-update-mode': {
'type': 'integer',
'enum': [ 1, 2, 3, 4 ],
},
},
},
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'allow-user-initiated-powerwash': True,
'allow-user-initiated-preserve-device-state': True,
'auto-update-mode': 1,
},
'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.
<ph name="TPM_FIRMWARE_UPDATE_SETTINGS_AUTO_UPDATE_MODE">auto-update-mode</ph>: Controls how automatic <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware updates are enforced for vulnerable <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware. All flows preserve local device state.
If set to 1 or left not set, TPM firmware updates are not enforced.
If set to 2, <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware will be updated at the next reboot after user acknowledges the update.
If set to 3, <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware will be updated at the next reboot.
If set to 4, <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware will be updated after enrollment, before user sign-in.
This option is available starting from version 75.
If the policy is not set, <ph name="TPM_FIRMWARE_UPDATE_TPM">TPM</ph> firmware update functionality will not be available.''',
},
{
'name': 'MinimumRequiredChromeVersion',
'owners': ['antrim@chromium.org'],
'supported_on': ['chrome_os:64-81'],
'device_only': True,
'type': 'string',
'schema': { 'type': 'string' },
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'deprecated': True,
'example_value': '61.0.3163.120',
'id': 394,
'caption': '''Configure minimum allowed Chrome version for the device.''',
'tags': [],
'desc': '''This policy is removed in M82, please use MinimumChromeVersionEnforced instead.
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': 'MinimumChromeVersionEnforced',
'owners': ['snijhara@google.com'],
'supported_on': ['chrome_os:86-'],
'future': True,
'device_only': True,
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'chrome_version': {
'description': '''Minimum allowed Chrome version''',
'type': 'string',
},
'warning_period': {
'description': '''Time in days after which the user will be logged off if Chrome version is less than the "chrome_version"''',
'type': 'integer',
'minimum': 0,
},
'aue_warning_period': {
'description': '''Time in days after auto update expiration post which the user will be logged off''',
'type': 'integer',
'minimum': 0,
},
},
'required': ['chrome_version'],
},
},
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': [
{
"chrome_version" : "78",
"warning_period" : 0,
"aue_warning_period" : 14
}, {
"chrome_version" : "83",
"warning_period" : 10,
"aue_warning_period" : 21
}
],
'id': 670,
'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>.
When this policy is set to a non-empty list :
If none of the entries has a "chrome_version" greater than the current version in the device, then no restrictions are applied and the already existing restrictions are revoked.
If at least one of the entries has a "chrome_version" greater than the current version, the strongest entry is chosen whose version is closest to the current version.
In case of conflict, preference is given to the one with lesser "warning_period" or "aue_warning_period" and the policy is applied using that entry.
If current version becomes obsolete during user session and the current network limits auto updates, an on-screen notification is shown to update the device within the "warning_period" shown in the notification.
No notifications are shown if the current network allows auto updates and the device must be updated within the "warning_period".
The "warning_period" starts from the time the policy is applied.
If the device is not updated till the expiry of the "warning_period", the user is logged out of the session.
If the current version is found to be obsolete at the time of login with expired "warning_period", the user is required to update the device before signing in.
If current version becomes obsolete during user session and the device has reached auto update expiration, an on-screen notification is shown to return the device within "eol_warning_period".
If the device is found to have reached auto update expiration at the time of login with expired "eol_warning_period", the device is blocked for any user to sign in.
If this policy is not set or set to empty, no restrictions are applied, already existing restrictions are revoked and user can sign in regardless of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version.
Here "chrome_version" can be either an exact version like '61.0.3163.120' or a version prefix, like '61.0'.
The "warning_period" and "aue_warning_period" are optional values specified in number of days. Default value for them is 0 days, which means that there is no warning period. ''',
},
{
'name': 'MinimumChromeVersionAueMessage',
'owners': ['snijhara@google.com', 'marcgrimme@chromium.org'],
'future_on': ['chrome_os'],
'device_only': True,
'type': 'string',
'schema': { 'type': 'string' },
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'This device has reached auto update expiration. Kindly return it.',
'id': 714,
'caption': '''Configure auto update expiration message for MinimumChromeVersionEnforced policy''',
'tags': [],
'desc': '''This policy is only effective when the device has reached auto update expiration and does not meet the minimum allowed version of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> set through <ph name="MINIMUM_CHROME_VERSION_ENFORCED_POLICY_NAME">MinimumChromeVersionEnforced</ph> policy.
When this policy is set to a non-empty string :
If the warning time mentioned in <ph name="MINIMUM_CHROME_VERSION_ENFORCED_POLICY_NAME">MinimumChromeVersionEnforced</ph> policy has expired, this message is shown at the login screen when the device is blocked for any user to sign in.
If the warning time mentioned in <ph name="MINIMUM_CHROME_VERSION_ENFORCED_POLICY_NAME">MinimumChromeVersionEnforced</ph> policy has not expired, this message is shown in the Settings page after user sign in.
If this policy is not set or set to empty, the default end-of-life message is shown to the user in both of the above cases.
The end of life message must be plain text without any formatting. No markup is allowed. ''',
},
{
'name': 'QuickUnlockModeWhitelist',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [
'all',
'PIN',
'FINGERPRINT',
],
},
'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", "FINGERPRINT". 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 allow PIN and fingerprint, use ["PIN", "FINGERPRINT"]. To disable all quick unlock modes, use [].
By default, no quick unlock modes are available for managed devices.''',
},
{
'name': 'QuickUnlockTimeout',
'owners': ['file://components/policy/resources/OWNERS'],
'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': 'TwoDays',
'value': 2,
'caption': '''Password entry is required every two days (48 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['xdai@chromium.org', 'maybelle@chromium.org'],
'type': 'external',
'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'
}
},
},
'supported_on': ['chrome_os:61-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': { "url": "https://example.com/device_wallpaper.jpg", "hash": "1337c0ded00d84b1dbadf00dd15ea5eb000deaddeaddeaddeaddeaddeaddead0" },
'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.
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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:58-'],
'device_only': True,
'features': {
'dynamic_refresh': False,
},
'example_value': [ "en-US" ],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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" ],
'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': 'DeviceLoginScreenSystemInfoEnforced',
'owners': ['anqing@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:79-'],
'supported_chrome_os_management': ['google_cloud'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 609,
'caption': '''Force the sign-in screen to show or hide system information.''',
'tags': [],
'desc': '''Specify whether the system information (e.g. Chrome OS version, device serial
number) is always shown (or hidden) on the login screen.
If the policy is set to true, the system information will be shown forcedly.
If the policy is set to false, the system information will be hidden forcedly.
If the policy is unset, default hehavior (being shown for Canary / Dev channel)
is effective. Users can toggle the visibility by specific operations (e.g., Alt-V).'''
},
{
'name': 'SmsMessagesAllowed',
'owners': ['jlklein@chromium.org', 'jonmann@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 469,
'caption': '''Allow SMS Messages to be synced from phone to Chromebook.''',
'tags': ['local-data-access', 'google-sharing'],
'desc': '''If this setting is enabled, users will be allowed to set up their devices to sync SMS messages between their phones and Chromebooks. Note that if this policy is allowed, users must explicitly opt into this feature by completing a setup flow. Once the setup flow is complete, users will be able to send and receive SMS messages on their Chromebooks.
If this setting is disabled, users will not be allowed to set up SMS syncing.
If this policy is left not set, the default is not allowed for managed users and allowed for non-managed users.''',
},
{
'name': 'SmartLockSigninAllowed',
'owners': ['hansberry@chromium.org', 'jhawkins@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:71-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 488,
'caption': '''Allow Smart Lock Signin to be used.''',
'tags': ['local-data-access', 'google-sharing'],
'desc': '''If this setting is enabled, users will be allowed to sign into their account with Smart Lock. This is more permissive than usual Smart Lock behavior which only allows users to unlock their screen.
If this setting is disabled, users will not be allowed to use Smart Lock Signin.
If this policy is left not set, the default is not allowed for enterprise-managed users and allowed for non-managed users.''',
},
{
'name': 'InstantTetheringAllowed',
'owners': ['hansberry@chromium.org', 'khorimoto@chromium.org'],
'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',
'owners': ['estark@chromium.org', 'mab@chromium.org'],
'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',
'owners': ['vpalatin@chromium.org'],
'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',
'owners': ['file://printing/OWNERS'],
'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',
'owners': ['igorcov@chromium.org', 'pmarko@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 4],
},
'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': '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.''',
},
],
'supported_on': ['chrome_os:61-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 2,
'id': 376,
'caption': '''Migration strategy for ecryptfs''',
'tags': [],
'desc': '''Setting the policy specifies the action to take when the user's home directory was created with ecryptfs encryption. Unless ecryptfs-encrypted home directories migrate to ext4-encryption, Android apps might stop running.
Setting the policy to:
* Migrate (or an unsupported option such as AskUser or AskForEcryptfsArcUsers) means directories automatically migrate to ext4 at sign-in, without asking for user consent.
* Wipe or MinimalMigrate means that, at sign-in, new ext4-encrypted home directories replace old ecryptfs-encrypted directories. To help the user avoid repeated sign-ins, MinimalMigrate tries to preserve sign-in tokens.
* DisallowArc or leaving it unset prevents migration, and the user's Android apps stop running.
This policy doesn't apply to kiosk users.
Warning: Wipe and MinimalMigrate remove local data.''',
},
{
'name': 'SchedulerConfiguration',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'conservative',
'performance',
],
},
'items': [
{
'name': 'Conservative',
'value': 'conservative',
'caption': '''Optimize for stability.''',
},
{
'name': 'Performance',
'value': 'performance',
'caption': '''Optimize for performance.''',
},
],
'supported_on': ['chrome_os:74-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'performance',
'id': 522,
'caption': '''Select task scheduler configuration''',
'tags': [],
'desc': '''Instructs <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> to use the task scheduler configuration identified by the specified name.
This policy can be set to "conservative" and "performance", which select task scheduler configurations that are tuned for stability vs. maximum performance, respectively.
If the policy is left unset, the user can make their own choice.''',
},
{
'name': 'NoteTakingAppsLockScreenWhitelist',
'owners': ['tbarzic@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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',
'id': 'WeekDay',
'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': 'CloudPolicyOverridesPlatformPolicy',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean'},
'supported_on': ['chrome.*:75-'],
'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 Platform policy.''',
'tags': [],
'desc': '''
If the policy is set to true, cloud policy takes precedence if it conflicts with platform policy.
If the policy is set to false or not configured, platform policy takes precedence if it conflicts with cloud policy.
This policy is only available as a mandatory machine platform policy and it only affects machine scope cloud policies.
''',
},
{
'name': 'PromptForDownloadLocation',
'owners': ['macourteau@chromium.org', 'zmin@chromium.org'],
'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',
'owners': ['phweiss@chromium.org'],
'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': '''Unless ARC is turned off by other means, then setting the policy to True or leaving it unset lets users use ARC. Setting the policy to False means unaffiliated users may not use ARC.
Changes to the policy only apply while ARC isn't running, for example, while starting Chrome OS.''',
},
{
'name': 'IsolateOrigins',
'owners': ['palmer@chromium.org', 'creis@chromium.org'],
'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 not configured or disabled, the user will be able to change this setting.
NOTE: This policy does not apply on Android. To enable IsolateOrigins on Android, use the IsolateOriginsAndroid policy setting.
''',
},
{
'name': 'SitePerProcess',
'owners': ['palmer@chromium.org', 'creis@chromium.org'],
'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': '''
This setting, SitePerProcess, may be used to disallow users from opting out of the default behavior of isolating all sites. Note that the IsolateOrigins policy may also be useful for isolating additional, finer-grained origins.
If the policy is enabled, users will be unable to opt out of the default behavior where each site runs in its own process.
If the policy is not configured or disabled, the user will be able to opt out of site isolation
(e.g. using "Disable site isolation" entry in chrome://flags). Setting the policy to disabled and/or not configuring the policy does not turn off Site Isolation.
On <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 76 and earlier, 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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:66-76'],
'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 was removed in M77.
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.
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 not configured or disabled, the platform default site isolation settings will be used for the sign-in screen.
''',
},
{
'name': 'DeviceLoginScreenSitePerProcess',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:66-76'],
'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 was removed in M77.
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.
''',
},
{
'name': 'IsolateOriginsAndroid',
'owners': ['palmer@chromium.org', 'creis@chromium.org'],
'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, via command line flag.
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',
'owners': ['palmer@chromium.org', 'creis@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:65-79'],
'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 was removed in M80, because it is not necessary anymore as
WebDriver is now compatible with all existing policies.
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',
'owners': ['vogelheim@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'deprecated': True,
'supported_on': ['chrome.*:65-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': ['http://testserver.example.com/','*.example.org'],
'id': 400,
'caption': '''Origins or hostname patterns for which restrictions on
insecure origins should not apply''',
'tags': ['system-security'],
'desc': '''Deprecated in M69. Use
OverrideSecurityRestrictionsOnInsecureOrigin instead.
The policy specifies a list of origins (URLs) or hostname patterns (such
as "*.example.com") for which security restrictions on insecure origins
will not apply.
The intent is to allow organizations to whitelist origins for legacy
applications that cannot deploy TLS, or 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. This policy will also prevent the origin from being labeled
"Not Secure" in the omnibox.
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.
This policy is deprecated in M69 in favor of
OverrideSecurityRestrictionsOnInsecureOrigin. If both policies are
present, OverrideSecurityRestrictionsOnInsecureOrigin will override this
policy.
For more information on secure contexts, see
https://www.w3.org/TR/secure-contexts/
'''
},
{
'name': 'DefaultDownloadDirectory',
'owners': ['macourteau@chromium.org', 'zmin@chromium.org'],
'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',
'owners': ['antrim@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome_os:65-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'chromebook-${ASSET_ID}',
'id': 403,
'caption': '''Device network hostname template''',
'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 <ph name="ASSET_ID_PLACEHOLDER">${ASSET_ID}</ph>, <ph name="SERIAL_NUM_PLACEHOLDER">${SERIAL_NUM}</ph>, <ph name="MAC_ADDR_PLACEHOLDER">${MAC_ADDR}</ph>, <ph name="MACHINE_NAME_PLACEHOLDER">${MACHINE_NAME}</ph>, <ph name="LOCATION_PLACEHOLDER">${LOCATION}</ph> 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',
'owners': ['shivanisha@chromium.org', 'csharrison@chromium.org'],
'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',
'owners': ['macourteau@chromium.org', 'zmin@chromium.org'],
'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 the 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 <ph name="SPELLCHECK_ENABLED_POLICY_NAME">SpellcheckEnabled</ph> policy is set to false, this policy will have no effect.
If a language is included in both this policy and the <ph name="SPELLCHECK_LANGUAGE_BLACKLIST_POLICY_NAME">SpellcheckLanguageBlacklist</ph> policy, this policy is prioritized and the spellcheck language is enabled.
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': 'SpellcheckLanguageBlacklist',
'owners': ['gujen@google.com'],
'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:75-', 'chrome.linux:75-', 'chrome_os:75-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['fr', 'es'],
'id': 536,
'caption': '''Force disable spellcheck languages''',
'tags': [],
'desc': '''Force-disables spellcheck languages. Unrecognized languages in that list will be ignored.
If you enable this policy, spellcheck will be disabled for the languages specified. The user can still enable or disable spellcheck for languages not in the list.
If you do not set this policy, or disable it, there will be no change to the user's spellcheck preferences.
If the <ph name="SPELLCHECK_ENABLED_POLICY_NAME">SpellcheckEnabled</ph> policy is set to false, this policy will have no effect.
If a language is included in both this policy and the <ph name="SPELLCHECK_LANGUAGE_POLICY_NAME">SpellcheckLanguage</ph> policy, the latter is prioritized and the spellcheck language will be enabled.
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',
'owners': ['chrisha@chromium.org', 'pastarmovj@chromium.org'],
'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.
Regardless of the value of this policy, the browser will not currently block third party software from injecting executable code into its processes on a machine that is joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain.''',
},
{
'name': 'SpellcheckEnabled',
'owners': ['macourteau@chromium.org', 'zmin@chromium.org'],
'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, the user can enable or disable spellcheck in the language settings.
If this policy is set to true, spellcheck is enabled and the user cannot disable it. On <ph name="MS_WIN_NAME">Microsoft® Windows</ph>, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> and <ph name="LINUX_OS_NAME">Linux</ph>, spellcheck languages can be individually toggled on or off, so the user can still effectively disable spellcheck by toggling off every spellcheck language. To avoid that, the <ph name="SPELLCHECK_LANGUAGE_POLICY_NAME">SpellcheckLanguage</ph> policy can be used to force specific spellcheck languages to be enabled.
If this policy is set to false, spellcheck is disabled and the user cannot enable it. The <ph name="SPELLCHECK_LANGUAGE_POLICY_NAME">SpellcheckLanguage</ph> and <ph name="SPELLCHECK_LANGUAGE_BLACKLIST_POLICY_NAME">SpellcheckLanguageBlacklist</ph> policies have no effect when this policy is set to false.
'''
},
{
'name': 'AdsSettingForIntrusiveAdsSites',
'owners': ['shivanisha@chromium.org', 'csharrison@chromium.org'],
'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': '''Unless <ph name="SAFE_BROWSING_ENABLED_POLICY_NAME">SafeBrowsingEnabled</ph> is set to False, then setting <ph name="ADS_SETTINGS_FOR_INTRUSIVE_ADS_SITES_POLICY_NAME">AdsSettingForIntrusiveAdsSites</ph> to 1 or leaving it unset allows ads on all sites.
Setting the policy to 2 blocks ads on sites with intrusive ads.''',
},
{
'name': 'RestrictAccountsToPatterns',
'owners': ['bsazonov@chromium.org', 'file://src/components/signin/OWNERS'],
'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 visibility 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',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'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 password 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',
'owners': ['grt@chromium.org'],
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome.*:66-', 'chrome_os:70-'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2 ],
},
'caption': '''Notify a user that a browser relaunch or device restart 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 or <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> must be restarted to apply a pending update.
This policy setting enables notifications to inform the user that a browser relaunch or device restart 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, while <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> indicates such via a notification in the system tray. 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. The default period is seven days for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> and four days for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, 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/restart.''',
},
{
'id': 420,
'name': 'RelaunchNotificationPeriod',
'owners': ['grt@chromium.org'],
'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 according to the <ph name="RELAUNCH_HEADS_UP_PERIOD_POLICY_NAME">RelaunchHeadsUpPeriod</ph> policy. 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 follow this same schedule.
If not set, the default period of 604800000 milliseconds (one week) is used.''',
},
{
'id': 567,
'name': 'RelaunchHeadsUpPeriod',
'owners': ['file://components/policy/resources/OWNERS'],
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome_os:76-'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 3600000 },
'caption': '''Set the time of the first user relaunch notification''',
'label': '''Time period (milliseconds)''',
'example_value': 86400000,
'desc': '''Allows you to set the time period, in milliseconds, between the first notification that a <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> device must be restarted to apply a pending update and the end of the time period specified by the <ph name="RELAUNCH_NOTIFICATION_PERIOD_POLICY_NAME">RelaunchNotificationPeriod</ph> policy.
If not set, the default period of 259200000 milliseconds (three days) is used for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices.''',
},
{
'name': 'VirtualMachinesAllowed',
'owners': ['timzheng@chromium.org', 'aoldemeier@chromium.org'],
'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.
All three policies, VirtualMachinesAllowed, CrostiniAllowed, and DeviceUnaffiliatedCrostiniAllowed need to be true when they apply for Crostini to be allowed to run.
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': 'CrostiniAllowed',
'owners': ['timzheng@chromium.org', 'aoldemeier@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 481,
'caption': '''User is enabled to run Crostini''',
'tags': ['system-security'],
'desc': '''Enable this user to run Crostini.
If the policy is set to false, Crostini is not enabled for the user.
If set to true or left unset, Crostini is enabled for the user as long as other settings also allow it.
All three policies, VirtualMachinesAllowed, CrostiniAllowed, and DeviceUnaffiliatedCrostiniAllowed need to be true when they apply for Crostini to be allowed to run.
When this policy is changed to false, it applies to starting new Crostini containers but does not shut down containers which are already running.''',
},
{
'name': 'DeviceUnaffiliatedCrostiniAllowed',
'owners': ['timzheng@chromium.org', 'aoldemeier@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': False,
'id': 482,
'caption': '''Allow unaffiliated users to use Crostini''',
'tags': ['system-security'],
'desc': '''If the policy is set to false, unaffiliated users will not be allowed to use Crostini.
If the policy is unset or set to true, all users are allowed to use Crostini as long as other settings also allow it.
All three policies, VirtualMachinesAllowed, CrostiniAllowed, and DeviceUnaffiliatedCrostiniAllowed need to be true when they apply for Crostini to be allowed to run.
When this policy is changed to false, it applies to starting new Crostini containers but does not shut down containers which are already running.''',
},
{
'name': 'CrostiniExportImportUIAllowed',
'owners': ['joelhockey@chromium.org', 'aoldemeier@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:74-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 523,
'caption': '''User is enabled to export / import Crostini containers via the UI''',
'tags': ['system-security'],
'desc': '''If the policy is set to false, the export / import UI will not be available to users, however it is still possible to use 'lxc' commands directly in the virtual machine to export and import container images.''',
},
{
'name': 'CrostiniRootAccessAllowed',
'owners': ['aoldemeier@chromium.org', 'okalitova@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:77-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 576,
'caption': '''User is allowed to have root access to Crostini containers''',
'tags': ['system-security'],
'desc': '''Allow this user root access to Crostini containers.
If the policy is set to true or left unset root access to Crostini containers will be granted to the user.
If the policy is set to false, root access to both existing and new Crostini containers will not be granted to the user.''',
},
{
'name': 'CrostiniAnsiblePlaybook',
'owners': ['aoldemeier@chromium.org', 'okalitova@chromium.org'],
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': {
'description': 'The URL from which the Ansible playbook can be downloaded.',
'type': 'string'
},
'hash': {
'description': 'The SHA-256 hash of the Ansible playbook.',
'type': 'string'
}
},
},
'supported_on': ['chrome_os:80-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
"url": "https://example.com/ansibleplaybook",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
},
'max_size': 1000000,
'id': 639,
'caption': '''Crostini Ansible playbook''',
'tags': [],
'desc': '''Provides an Ansible playbook that should be executed in the default Crostini container.
This policy allows to provide an Ansible playbook to be applied to the default Crostini container if it is available on the given device and allowed by policies.
The size of the data must not exceed 1MB (1000000 bytes) and must be encoded in YAML. The cryptographic hash is used to verify the integrity of the download.
The configuration is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
If you set the policy, users can't change it. If not set, users can continue using default Crostini container in its ongoing configuration if Crostini is allowed by policies.''',
},
{
'name': 'CrostiniArcAdbSideloadingAllowed',
'owners': ['janagrill@chromium.org', 'okalitova@chromium.org'],
'future': True,
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'Disallow',
'value': 0,
'caption': '''Prevent the user from using Android apps from untrusted sources''',
},
{
'name': 'Allow',
'value': 1,
'caption': '''Allow the user to use Android apps from untrusted sources''',
},
],
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 1,
'id': 690,
'caption': '''Control usage of Android apps from untrusted sources for the user''',
'tags': ['system-security'],
'desc': '''This policy controls the usage of Android apps from untrusted sources (other than Google Play Store) on a per-user basis.
If the value for this policy is not set, then the functionality is treated as disallowed.
If the user's device is managed, the availability of this functionality is additionally dependant on the corresponding device policy.
If the user's device is not managed, the availability of this functionality is additionally dependant on whether the user is the device owner.''',
},
{
'name': 'DeviceCrostiniArcAdbSideloadingAllowed',
'owners': ['janagrill@chromium.org', 'okalitova@chromium.org'],
'device_only': True,
'future': True,
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'Disallow',
'value': 0,
'caption': '''Prevent users of this device from using ADB sideloading, without forcing a powerwash, which might leave the device in a questionable state security-wise''',
},
{
'name': 'DisallowWithPowerwash',
'value': 1,
'caption': '''Prevent users of this device from using ADB sideloading and force a device powerwash if sideloading was enabled before''',
},
{
'name': 'AllowForAffiliatedUsers',
'value': 2,
'caption': '''Allow affiliated users of this device to use ADB sideloading''',
},
],
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
},
'example_value': 1,
'id': 695,
'caption': '''Control usage of Android apps from untrusted sources for the device''',
'tags': ['system-security'],
'desc': '''This policy controls the usage of Android apps from untrusted sources (other than Google Play Store) for a device.
If the value for this policy is not set, then the functionality is treated as disallowed.
The availability of this functionality is additionally dependant on the corresponding user policy.''',
},
{
'name': 'CrostiniPortForwardingAllowed',
'owners': ['danielng@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 716,
'caption': '''Allow users to [enable/configure] Crostini port forwarding''',
'tags': ['system-security'],
'desc': '''Specifies whether port forwarding into Crostini containers is allowed.
If this policy is set to True or not set, users will be able to configure port forwarding into their Crostini containers.
If this policy is set to False, port forwarding into Crostini containers will be disabled.''',
},
{
'name': 'SafeBrowsingWhitelistDomains',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:68-', 'chrome_os:68-'],
'deprecated': True,
'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': '''This policy is deprecated, please use <ph name="SAFE_BROWSING_ALLOWLIST_DOMAINS_POLICY_NAME">SafeBrowsingAllowlistDomains</ph> instead.
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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'SafeBrowsingAllowlistDomains',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:86-', 'chrome_os:86-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['mydomain.com', 'myuniversity.edu'],
'id': 732,
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'PasswordProtectionLoginURLs',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'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 salted hashes of passwords.''',
'tags': [],
'desc': '''Configure the list of enterprise login URLs (HTTP and HTTPS schemes only). Password protection service will capture salted hashes of passwords on these URLs and use them for password reuse detection.
In order for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to correctly capture password salted hashes, 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 salted hashes 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 salted hashes on https://accounts.google.com.
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'PasswordProtectionChangePasswordURL',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'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 salted hash of the new password 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://myaccount.google.com to change their password.
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'SafeBrowsingExtendedReportingEnabled',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'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',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org', 'rogerta@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:66-80'],
'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': [],
'deprecated': True,
'desc': '''
This policy is deprecated in M72. Please use CloudManagementEnrollmentToken instead.
''',
},
{
'name': 'CloudManagementEnrollmentToken',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org', 'rogerta@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'supported_on': ['chrome.*:72-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': '37185d02-e055-11e7-80c1-9a214cf093ae',
'id': 510,
'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': 'CloudManagementEnrollmentMandatory',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:72-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 505,
'caption': '''Enable mandatory cloud management enrollment''',
'tags': [],
'desc': '''
If this policy is set to True, cloud management enrollment is mandatory and blocks Chrome launch process if failed.
If this policy is left unset or set to False, cloud management enrollment is optional and does not blocks Chrome launch process if failed.
This policy is used by machine scope cloud policy enrollment on desktop and can be set by Registry or GPO on Windows, plist on Mac and JSON policy file on Linux.''',
},
{
'name': 'AutoplayAllowed',
'owners': ['fbeaufort@chromium.org', 'beccahughes@chromium.org'],
'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': '''Setting the policy to True lets <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> autoplay media. Setting the policy to False stops <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from autoplaying media.
By default, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> doesn't autoplay media. But, for certain URL patterns, you can use the <ph name="AUTOPLAY_WHITELIST_POLICY_NAME">AutoplayWhitelist</ph> policy to change this setting.
If this policy changes while <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running, it only applies to newly opened tabs.''',
},
{
'name': 'AutoplayWhitelist',
'owners': ['fbeaufort@chromium.org', 'beccahughes@chromium.org'],
'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://www.example.com', '[*.]example.edu'],
'id': 431,
'caption': '''Allow media autoplay on a whitelist of URL patterns''',
'tags': [],
'desc': '''Setting the policy lets videos play automatically (without user consent) with audio content in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. If <ph name="AUTOPLAY_ALLOWED_POLICY_NAME">AutoplayAllowed</ph> policy is set to True, then this policy has no effect. If <ph name="AUTOPLAY_ALLOWED_POLICY_NAME">AutoplayAllowed</ph> is set to False, then any URL patterns set in this policy can still play. If this policy changes while <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is running, it only applies to newly opened tabs.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'TabUnderAllowed',
'owners': ['chrisha@chromium.org', 'pastarmovj@chromium.org'],
'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',
'owners': ['valleau@chromium.org', 'skau@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:67-'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'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''',
},
],
'future_on': ['chrome_os'],
'device_only': 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 DeviceLoginScreenExtensions policy).
This policy affects only users who authenticate using SAML.''',
},
{
'name': 'ChromeCleanupEnabled',
'owners': ['proberge@chromium.org'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management.''',
},
{
'name': 'ChromeCleanupReportingEnabled',
'owners': ['proberge@chromium.org'],
'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 available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management.''',
},
{
'name': 'AllowedLanguages',
'owners': ['hendrich@chromium.org', 'voit@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:72-'],
'device_only': False,
'features': {
'dynamic_refresh': False,
'per_profile': True
},
'example_value': [ 'en-US' ],
'id': 444,
'caption': '''Configure the allowed languages in a user session''',
'tags': [],
'desc': '''Setting the policy lets users add only one of the languages listed in this policy to the list of preferred languages.
If not set or set to an empty list, users can specify languages as preferred.
If set to a list with invalid values, those values are ignored. If users added languages not allowed by this policy to the list of preferred languages, they're removed. If they had <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> displayed in a language not allowed by this policy, the next time they sign in, the display language switches to an allowed UI language. Otherwise, if this policy only has invalid entries, <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> switches to the first valid value specified by this policy or a fallback locale such as en-US.'''
},
{
'name': 'AllowedInputMethods',
'owners': ['hendrich@chromium.org', 'pmarko@chromium.org'],
'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' ],
'id': 456,
'caption': '''Configure the allowed input methods in a user session''',
'tags': [],
'desc': '''Setting the policy lets users choose one of the input methods (keyboard layouts) for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> sessions that you specify.
If you leave it unset or set to an empty list, users can select all supported input methods.
Note: If the current input method is unsupported, it switches to the hardware keyboard layout (if allowed) or the first valid entry in this list. Invalid or unsupported methods are ignored.'''
},
{
'name': 'ArcAppInstallEventLoggingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'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': '''Setting the policy to True sends reports of key, policy-triggered Android app installation events to Google. Setting the policy to False means no events are captured.''',
},
{
'name': 'ExtensionInstallEventLoggingEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 727,
'caption': '''Log events for policy based extension installs''',
'tags': ['google-sharing'],
'desc': '''Setting the policy to True sends reports of key, policy-triggered extension installation events to Google. Setting the policy to False means no events are captured. If the policy is unset, default value is set to True.''',
},
{
'name': 'UsageTimeLimit',
'owners': ['hgrandinetti@chromium.org', 'vtrmc@chromium.org'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'time_window_limit': {
'type': 'object',
'properties': {
'entries': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'effective_day': { '$ref': 'WeekDay' },
'starts_at': {
'type': 'object',
'id': 'Time',
'properties': {
'hour': {
'type': 'integer',
'minimum': 0,
'maximum': 23
},
'minute': {
'type': 'integer',
'minimum': 0,
'maximum': 59
},
},
'required': ['hour', 'minute']
},
'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',
'minimum': 0
},
'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',
'minimum': 0
}
}
}
}
}
}
}
},
'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'
},
'tuesday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'wednesday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'thursday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'friday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'saturday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'sunday': {
'usage_quota_mins': 120,
'last_updated_millis': '1200000'
},
'reset_at': {
'hour': 6,
'minute': 0
}
},
'overrides': [{
'action': 'UNLOCK',
'created_at_millis': '1250000',
'action_specific_data': {
'duration_mins': 30
}
}]
},
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'BackupAndRestoreDisabled',
'value': 0,
'caption': '''Backup and restore disabled''',
},
{
'name': 'BackupAndRestoreUnderUserControl',
'value': 1,
'caption': '''User decides whether to enable backup and restore''',
},
{
'name': 'BackupAndRestoreEnabled',
'value': 2,
'caption': '''Backup and restore enabled''',
},
],
'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':
'''Setting the policy to <ph name="BR_ENABLED">BackupAndRestoreEnabled</ph> means Android backup and restore is initially on. Setting the policy to <ph name="BR_DISABLED">BackupAndRestoreDisabled</ph> or leaving it unset keeps backup and restore off during setup.
Setting the policy to <ph name="BR_UNDER_USER_CONTROL">BackupAndRestoreUnderUserControl</ph> means users see prompts to use backup and restore. If they turn on backup and restore, Android app data is uploaded to Android backup servers and restored during reinstallations of compatible apps.
After initial setup, users can turn backup and restore on or off.''',
},
{
'name': 'ArcGoogleLocationServicesEnabled',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'GoogleLocationServicesDisabled',
'value': 0,
'caption': '''Google location services disabled''',
},
{
'name': 'GoogleLocationServicesUnderUserControl',
'value': 1,
'caption': '''User decides whether to enable Google location services''',
},
{
'name': 'GoogleLocationServicesEnabled',
'value': 2,
'caption': '''Google location services enabled''',
},
],
'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':
'''Unless the <ph name="DEFAULT_GEOLOCATION_SETTING_POLICY_NAME">DefaultGeolocationSetting</ph> policy is set to <ph name="BLOCK_GEOLOCATION_SETTING">BlockGeolocation</ph>, then setting <ph name="GLS_ENABLED">GoogleLocationServicesEnabled</ph> turns Google location services on during initial setup. Setting the policy to <ph name="GLS_DISABLED">GoogleLocationServicesDisabled</ph> or leaving it unset keeps location services off during setup.
Setting policy to <ph name="BR_UNDER_USER_CONTROL">BackupAndRestoreUnderUserControl</ph> prompts users about whether or not to use Google location services. If they turn it on, Android apps use the services to search the device location and send anonymous location data to Google.
After initial setup, users can turn Google location services on or off.''',
},
{
'name': 'EnableSyncConsent',
'owners': ['agawronska@chromium.org', 'alemate@chromium.org'],
'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',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['android:69-75'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 452,
'caption': '''Enable contextual suggestions of related web pages''',
'tags': ['google-sharing'],
'desc':
'''This feature never launched, therefore the policy is deprecated. 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',
'owners': ['file://components/policy/resources/OWNERS'],
'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. This feature is only enabled on Chrome devices configured as auto-launch kiosks. Other devices will not be restricted by this policy.''',
},
{
'id': 454,
'name': 'PromotionalTabsEnabled',
'owners': ['grt@chromium.org'],
'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': '''Setting the policy to True or leaving it unset lets <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> show users product information as full-tab content.
Setting the policy to False prevents <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from showing product information as full-tab content.
Setting the policy controls the presentation of the welcome pages that help users sign in to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, set <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> as users' default browser, or otherwise inform them of product features.'''
},
{
'name': 'SafeSitesFilterBehavior',
'owners': ['bdea@chromium.org', 'nparker@chromium.org'],
'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',
'owners': ['estark@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' }
},
'supported_on': ['chrome.*:69-', 'chrome_os:69-', 'android:69-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': ['http://testserver.example.com/','*.example.org'],
'id': 457,
'caption': '''Origins or hostname patterns for which restrictions on
insecure origins should not apply''',
'tags': ['system-security'],
'desc': '''
The policy specifies a list of origins (URLs) or hostname patterns (such
as "*.example.com") for which security restrictions on insecure origins
will not apply.
The intent is to allow organizations to set whitelist origins for legacy
applications that cannot deploy TLS, or 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. This policy will also prevent the origin from being labeled
"Not Secure" in the omnibox.
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.
This policy will override UnsafelyTreatInsecureOriginAsSecure, if present.
For more information on secure contexts, see
https://www.w3.org/TR/secure-contexts/.
'''
},
{
'name': 'DeviceUpdateStagingSchedule',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'description': 'Contains the number of days and the percentage of the fleet that should be updated after those days have passed.',
'id': 'DayPercentagePair',
'properties': {
'days': {
'description': 'Days from update discovery.',
'type': 'integer',
'minimum': 1,
'maximum': 28,
},
'percentage': {
'description': 'Percentage of the fleet that should be updated after the given days.',
'type': 'integer',
'minimum': 0,
'maximum': 100,
}
}
},
},
'supported_on': ['chrome_os:69-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': [{'days': 7, 'percentage': 50}, {'days': 10, 'percentage': 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 day 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.
Each (day, percentage) pair contains which percentage of the fleet has to be updated by the given number of days since the update has been discovered. For example, if we have the pairs [(4, 40), (10, 70), (15, 100)], then 40% of the fleet should have been updated 4 days after seeing the update. 70% should be updated after 10 days, 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': 'TabFreezingEnabled',
'owners': ['catan-team@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:79-79', 'chrome_os:79-79'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 460,
'caption': '''Allow background tabs freeze''',
'tags': [],
'desc': '''Controls whether <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can freeze tabs that have been in the background for at least 5 minutes.
If the policy is set to true, tabs that have been in the background for at least 5 minutes may be frozen. Tab freezing reduces CPU, battery and memory usage. <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses heuristics to avoid freezing tabs that do useful work in the background (e.g. display notifications, play sound, stream video). Web developers can also opt-out their site from freezing (https://chromium.googlesource.com/chromium/src/+/HEAD/chrome/browser/performance_manager/docs/freezing_opt_out_opt_in.md).
If the policy is set to false, no tabs will be frozen.''',
},
{
'name': 'UrlKeyedAnonymizedDataCollectionEnabled',
'owners': ['file://base/metrics/OWNERS'],
'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.''',
},
{
'id': 462,
'name': 'NetworkFileSharesAllowed',
'owners': ['amistry@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean', },
'tags': [],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'supported_on': ['chrome_os:70-'],
'caption': '''Contorls Network File Shares for ChromeOS availability''',
'example_value': True,
'desc': '''This policy controls whether the Network File Shares feature for <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> is allowed for a user.
When this policy is not configured or set to True, users will be able to use Network File Shares.
When this policy is set to False, users will be unable to use Network File Shares.''',
},
{
'name': 'WebRtcEventLogCollectionAllowed',
'owners': ['eladalon@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:70-', 'chrome_os:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 464,
'caption': '''Allow collection of WebRTC event logs from Google services''',
'tags': ['google-sharing'],
'desc': '''
Setting the policy to True allows <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to collect WebRTC event logs from Google services such as Hangouts Meet and upload them to Google. These logs have diagnostic information for debugging issues with audio or video meetings in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, such as the time and size of RTP packets, feedback about congestion on the network, and metadata about time and quality of audio and video frames. These logs have no audio or video content from the meeting. To make debugging easier, Google might associate these logs, by means of a session ID, with other logs collected by the Google service itself.
Setting the policy to False results in no collection or uploading of such logs.
Leaving the policy unset on versions up to and including M76 means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> defaults to not being able to collect and upload these logs. Starting at M77, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> defaults to being able to collect and upload these logs from most profiles affected by cloud-based user-level enterprise policies. From M77 up to and including M80, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> can also collect and upload these logs by default from profiles affected by <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> on-premise management.''',
},
{
'name': 'PowerSmartDimEnabled',
'owners': ['jiameng@chromium.org', 'ejcaruso@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:70-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 465,
'caption': '''Enable smart dim model to extend the time until the screen is dimmed''',
'tags': [],
'desc': '''Specifies whether a smart dim model is allowed to extend the time until the screen is dimmed.
When the screen is about to be dimmed, the smart dim model evaluates if dimming the screen should be deferred. If the smart dim model defers dimming the screen, it effectively extends the time until the screen is dimmed. In this case, 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 set to True or left not set, the smart dim model will be enabled and allowed to extend the time until the screen is dimmed. If this policy is set to False, the smart dim model will not influence screen dimming.''',
},
{
'name': 'CoalesceH2ConnectionsWithClientCertificatesForHosts',
'owners': ['nharper@chromium.org', 'rsleevi@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:70-','android:70-','chrome_os:70-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['example.com'],
'id': 466,
'caption': '''Allow coalescing of HTTP/2 connections for these hosts even when client certificates are used''',
'tags': [],
'desc': '''This policy allows HTTP/2 connection coalescing when client certificates are in use. In order to coalesce, both the hostname of the potential new connection and the hostname of an existing connection must match one or more patterns described by this policy. The policy is a list of hosts using the <ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph> filter format: "example.com" matches "example.com" and all subdomains (e.g. "sub.example.com"), while ".example.net" matches exactly "example.net".
Coalescing requests to different hosts over connections that use client certificates can create security and privacy issues, as the ambient authority will be conveyed to all requests, even if the user did not explicitly authorize this. This policy is temporary and will be removed in a future release. See https://crbug.com/855690.
If this policy is left unset, then the default behavior of not allowing any HTTP/2 connection coalescing on connections using client certificates will be used.''',
},
{
'id': 467,
'name': 'NetBiosShareDiscoveryEnabled',
'owners': ['amistry@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean', },
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome_os:70-'],
'caption': '''Controls Network File Share discovery via <ph name="NETBIOS_NAME">NetBIOS</ph>''',
'example_value': True,
'default_for_enterprise_users': False,
'desc': '''This policy controls whether the Network File Shares feature for <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> should use the <ph name="NETBIOS_PROTOCOL">NetBIOS Name Query Request protocol</ph> to discover shares on the network.
When this policy is set to True, share discovery will use the <ph name="NETBIOS_PROTOCOL">NetBIOS Name Query Request protocol</ph> protocol to discover shares on the network.
When this policy is set to False, share discovery will not use the <ph name="NETBIOS_PROTOCOL">NetBIOS Name Query Request protocol</ph> protocol to discover shares.
If the policy is left not set, the default is disabled for enterprise-managed users and enabled for non-managed users.''',
},
{
'name': 'WebAppInstallForceList',
'owners': ['file://chrome/browser/web_applications/OWNERS'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url': { 'type': 'string' },
'default_launch_container': {
'type': 'string',
'enum': [
'tab',
'window'
]
},
'create_desktop_shortcut': { 'type': 'boolean' }
},
'required': ['url']
}
},
'supported_on': ['chrome.*:75-', 'chrome_os:75-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [{
'url': 'https://www.google.com/maps',
'default_launch_container': 'window',
'create_desktop_shortcut': True
}, {
'url': 'https://docs.google.com',
'default_launch_container': 'tab'
}],
'id': 468,
'caption': '''Configure list of force-installed Web Apps''',
'tags': [],
'desc': '''Setting the policy specifies a list of web apps that install silently, without user interaction, and which users can't uninstall or turn off.
Each list item of the policy is an object with a mandatory member: <ph name="URL_LABEL">url</ph> (the URL of the web app to install) and 2 optional members: <ph name="DEFAULT_LAUNCH_CONTAINER_LABEL">default_launch_container</ph> (for how the web app opensa new tab is the default) and <ph name="CREATE_DESKTOP_SHORTCUT_LABEL">create_desktop_shortcut</ph> (True if you want to create <ph name="LINUX_OS_NAME">Linux</ph> and Windows® desktop shortcuts).
See <ph name="PINNED_LAUNCHER_APPS_POLICY_NAME">PinnedLauncherApps</ph> for pinning apps to the <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> shelf.''',
'label': '''URLs for Web Apps to be silently installed.''',
},
{
'id': 470,
'name': 'ReportVersionData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:70-'],
'future': True,
'caption': '''Report OS and <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Version Information''',
'example_value': False,
'desc': '''This policy controls whether to report version information, such as OS version, OS platform, OS architecture, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version and <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> channel.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, version information is gathered.
When this policy is set to False, version information is not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 471,
'name': 'ReportPolicyData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:70-'],
'future': True,
'caption': '''Report <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Policy Information''',
'example_value': False,
'desc': '''This policy controls whether to report policy data and time of policy fetch.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, policy data and time of policy fetch are gathered.
When this policy is set to False, policy data and time of policy fetch are not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 472,
'name': 'ReportMachineIDData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:70-'],
'future': True,
'caption': '''Report Machine Identification information''',
'example_value': False,
'desc': '''This policy controls whether to report information that can be used to identify machines, such as machine name and network addresses.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, information that can be used to identify machines is gathered.
When this policy is set to False, information that can be used to identify machines is not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.'''
},
{
'id': 473,
'name': 'ReportUserIDData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:70-'],
'future': True,
'caption': '''Report User Identification information''',
'example_value': False,
'desc': '''This policy controls whether to report information that can be used to identify users, such as OS login, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Profile login, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Profile name, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> Profile path and <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> executable path.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, information that can be used to identify users is gathered.
When this policy is set to False, information that can be used to identify users is not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 499,
'name': 'ReportExtensionsAndPluginsData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:72-'],
'future': True,
'caption': '''Report Extensions and Plugins information''',
'example_value': False,
'desc': '''This policy controls whether to report extensions and plugins information.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, extension and plugins data are gathered.
When this policy is set to False, extensions and plugins data are not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 500,
'name': 'ReportSafeBrowsingData',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:72-84'],
'deprecated': True,
'caption': '''Report Safe Browsing information''',
'example_value': False,
'desc': '''This policy controls whether to report Safe Browsing information including the number of Safe Browsing warning and the number of safe browsering warning click through.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored.
When this policy is left unset or set to True, Safe Browsing data are gathered.
When this policy is set to False, Safe Browsing data are not gathered.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 608,
'name': 'CloudExtensionRequestEnabled',
'owners': ['zmin@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing', 'google-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'supported_on': ['chrome.*:85-', 'chrome_os:85-'],
'caption': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> extension installation requests''',
'example_value': True,
'desc': '''This policy controls <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> extension installation requests which allows users to send the requests to the Google Admin console for approval.
When the policy <ph name="CLOUD_REPORTING_ENABLED_POLICY_NAME">CloudReportingEnabled</ph> is left unset or set to disabled, this policy will be ignored, extension installation requests are not created or uploaded.
When this policy is left unset or set to disabled, extension installation requests are not created or uploaded.
When this policy is set to enabled, extension installation requests are created and uploaded to Google Admin console.
Extension installation requests are created when users try to install an extension that is not whitelisted by <ph name="EXTENSION_INSTALL_WHITELIST">ExtesionInstallWhitelist</ph> or <ph name="EXTENSION_SETTINGS">ExtensionSettings</ph>.
This policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph> for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
This policy is always effective for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.'''
},
{
'id': 493,
'name': 'CloudReportingEnabled',
'owners': ['zmin@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean' },
'tags': ['admin-sharing', 'google-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'supported_on': ['chrome.*:72-', 'chrome_os:81-'],
'caption': '''Enables <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> cloud reporting''',
'example_value': True,
'desc': '''This policy controls <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> cloud reporting which uploads information about the browser operation to Google Admin console.
When this policy is left unset or set to False, there is no data collected or uploaded.
When this policy is set to True, the data is collected and uploaded to Google Admin console.
For <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>, this policy is only effective when the machine is enrolled with <ph name="CLOUD_MANAGEMENT_ENROLLMENT_TOKEN">CloudManagementEnrollmentToken</ph>.
For <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, this policy is always effective.'''
},
{
'name': 'EnterpriseHardwarePlatformAPIEnabled',
'owners': ['guidou@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:71-', 'chrome_os:71-', 'android:71-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 483,
'caption': '''Enables managed extensions to use the Enterprise Hardware Platform API''',
'tags': [],
'desc': '''Setting the policy to True lets extensions installed by enterprise policy use the Enterprise Hardware Platform API.
Setting the policy to False or leaving it unset prevents extensions from using this API.
Note: This policy also applies to component extensions, such as the Hangout Services extension.''',
},
{
'name': 'VpnConfigAllowed',
'owners': ['phweiss@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:71-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 485,
'caption': '''Allow the user to manage VPN connections''',
'tags': [],
'desc': '''Allow the user to manage VPN connections.
If this policy is set to false, all <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> user interfaces that would allow the user to disconnect or modify VPN connections are disabled.
If this policy is unset or set to true, users can disconnect or modify VPN connections as usual.
If the VPN connection is created via a VPN app, the UI inside the app remains unaffected by this policy. Therefore, the user might still be able to use the app to modify the VPN connection.
This policy is meant to be used together with the "Always on VPN" feature, that lets the admin decide to establish a VPN connection on boot.''',
},
{
'id': 489,
'name': 'NTLMShareAuthenticationEnabled',
'owners': ['amistry@chromium.org'],
'type': 'main',
'schema': {'type': 'boolean', },
'tags': [],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'supported_on': ['chrome_os:71-'],
'caption': '''Controls enabling NTLM as an authentication protocol for SMB mounts''',
'example_value': True,
'default_for_enterprise_users': False,
'desc': '''This policy controls whether the Network File Shares feature for <ph name="PRODUCT_NAME">$2<ex>Google Chrome OS</ex></ph> will use NTLM for authentication.
When this policy is set to True, NTLM will be used for authentication to SMB shares if necessary.
When this policy is set to False, NTLM authentication to SMB shares will be disabled.
If the policy is left not set, the default is disabled for enterprise-managed users and enabled for non-managed users.''',
},
{
'name': 'NetworkFileSharesPreconfiguredShares',
'owners': ['amistry@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'share_url': { 'type': 'string' },
'mode': {
'type': 'string',
'enum': [
'drop_down', 'pre_mount',
]
}
},
'required': ['share_url', 'mode'],
}
},
'supported_on': ['chrome_os:71-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': [{
'share_url': 'smb://server/share',
'mode': 'drop_down'
}, {
'share_url': '\\\\server\\share',
'mode': 'drop_down'
}],
'id': 490,
'caption': '''List of preconfigured network file shares.''',
'tags': [],
'desc': '''Specifies a list of preconfigued network file shares.
Each list item of the policy is an object with two members: "share_url" and "mode". "share_url" should be the URL of the share and "mode" should be either "drop_down" or "pre_mount". "drop_down" mode indicates that "share_url" will be added to the share discovery drop down. "pre_mount" mode indicates that "share_url" will be mounted.''',
},
{
'name': 'ScreenBrightnessPercent',
'owners': ['file://src/chrome/browser/chromeos/login/demo_mode/OWNERS'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'BrightnessAC': {
'description': 'Screen brightness percent when running on AC power',
'type': 'integer',
'minimum': 0,
'maximum': 100
},
'BrightnessBattery': {
'description': 'Screen brightness percent when running on battery power',
'type': 'integer',
'minimum': 0,
'maximum': 100
}
}
},
'supported_on': ['chrome_os:72-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'BrightnessAC': 90,
'BrightnessBattery': 75
},
'id': 492,
'caption': '''Screen brightness percent''',
'tags': [],
'desc': '''Specifies screen brightness percent.
When this policy is set initial screen brightness is adjusted to the policy value, but the user can change it later on. Auto-brightness features are disabled.
When this policy is unset user screen controls and auto-brightness features are not affected.
The policy values should be specified in percents in range 0-100.''',
},
{
'id': 494,
'name': 'AlternativeBrowserPath',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'string',
'schema': {'type': 'string'},
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '${ie}',
'supported_on': ['chrome.*:71-'],
'caption': '''Alternative browser to launch for configured websites.''',
'tags': [],
'desc': '''This policy controls which command to use to open URLs in an alternative browser.
When this policy is left unset, a platform-specific default is used: Internet Explorer for Windows, or Safari for Mac OS X. On Linux, launching an alternative browser will fail when this is unset.
When this policy is set to one of <ph name="INTERNET_EXPLORER_VALUE_PLACEHOLDER">${ie}</ph>, <ph name="FIREFOX_VALUE_PLACEHOLDER">${firefox}</ph>, <ph name="SAFARI_VALUE_PLACEHOLDER">${safari}</ph> or
<ph name="OPERA_VALUE_PLACEHOLDER">${opera}</ph>, that browser will launch if it is installed. <ph name="INTERNET_EXPLORER_VALUE_PLACEHOLDER">${ie}</ph> is only
available on Windows, and <ph name="SAFARI_VALUE_PLACEHOLDER">${safari}</ph> is only available on Windows and Mac
OS X.
When this policy is set to a file path, that file is used as an executable
file.''',
},
{
'id': 495,
'name': 'AlternativeBrowserParameters',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string'},
},
'example_value': [
'-foreground',
'-new-window',
'${url}',
'-profile',
'%HOME%\\browser_profile',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:71-'],
'caption': '''Command-line parameters for the alternative browser.''',
'tags': [],
'desc': '''This policy controls command-line parameters to launch to the alternative browser.
When this policy is left unset, only the URL is passed as a command-line parameters.
When this policy is set to a list of strings, each string is passed to the alternative browser as a separate command-line parameters. On Windows, the parameters are joined with spaces. On Mac OS X and Linux, a parameter may contain spaces, and still be treated as a single parameter.
If an element contains <ph name="URL_PLACEHOLDER"> ${url}</ph>, it gets replaced with the URL of the page to open.
If no element contains <ph name="URL_PLACEHOLDER"> ${url}</ph>, the URL is appended at the end of the command line.
Environment variables are expanded. On Windows, <ph name="ENV_VARIABLE_WIN_EXAMPLE">%ABC%</ph> is replaced with the value of the <ph name="ENV_VARIABLE_VALUE">ABC</ph> environment variable. On Mac OS X and Linux, <ph name="ENV_VARIABLE_UNIX_EXAMPLE">${ABC}</ph> is replaced with the value of the <ph name="ENV_VARIABLE">ABC</ph> environment variable.''',
},
{
'id': 530,
'name': 'BrowserSwitcherChromePath',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'string',
'schema': {'type': 'string'},
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': '${chrome}',
'supported_on': ['chrome.win:74-'],
'caption': '''Path to Chrome for switching from the alternative browser.''',
'tags': [],
'desc': '''This policy controls the command to use to open URLs in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> when switching from Internet Explorer.
If the 'Legacy Browser Support' add-in for Internet Explorer is not installed, this policy has no effect.
When this policy is left unset, Internet Explorer will auto-detect <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s own executable path when launching <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from Internet Explorer.
When this policy is set, it will be used to launch <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> when launching <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from Internet Explorer.
This policy can be set to an executable file path, or <ph name="PRODUCT_NAME_PLACEHOLDER">${chrome}</ph> to auto-detect Chrome's install location.''',
},
{
'id': 531,
'name': 'BrowserSwitcherChromeParameters',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string'},
},
'example_value': [
'--force-dark-mode',
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.win:74-'],
'caption': '''Command-line parameters for switching from the alternative browser.''',
'tags': [],
'desc': '''This policy controls command-line parameters for Chrome from Internet Explorer.
If the 'Legacy Browser Support' add-in for Internet Explorer is not installed, this policy has no effect.
When this policy is left unset, Internet Explorer only passes the URL to Chrome as a command-line parameter.
When this policy is set to a list of strings, the strings are joined with spaces and passed to Chrome as command-line parameters.
If an element contains <ph name="URL_PLACEHOLDER"> ${url}</ph>, it gets replaced with the URL of the page to open.
If no element contains <ph name="URL_PLACEHOLDER"> ${url}</ph>, the URL is appended at the end of the command line.
Environment variables are expanded. On Windows, <ph name="ENV_VARIABLE_WIN_EXAMPLE">%ABC%</ph> is replaced with the value of the ABC environment variable.''',
},
{
'id': 496,
'name': 'BrowserSwitcherUrlList',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string'},
},
'example_value': [
'ie.com',
'!open-in-chrome.ie.com',
'foobar.com/ie-only/'
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:71-'],
'caption': '''Websites to open in alternative browser''',
'tags': [],
'desc': '''This policy controls the list of websites to open in an alternative browser.
Note that elements can also be added to this list through the <ph name="USE_IE_SITELIST_POLICY_NAME">BrowserSwitcherUseIeSitelist</ph> and <ph name="EXTERNAL_SITELIST_URL_POLICY_NAME">BrowserSwitcherExternalSitelistUrl</ph> policies.
When this policy is left unset, no websites are added to the list.
When this policy is set, each item is treated as a rule for something to open in an alternative browser. <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses those rules when choosing if a URL should open in an alternative browser.
When the Internet Explorer add-in is present and enabled, Internet Explorer switches back to <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> when the rules do not match.
If rules contradict eachother, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> uses the most specific rule.''',
},
{
'id': 497,
'name': 'BrowserSwitcherUrlGreylist',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {'type': 'string'},
},
'example_value': [
'ie.com',
'!open-in-chrome.ie.com',
'foobar.com/ie-only/'
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:71-'],
'caption': '''Websites that should never trigger a browser switch.''',
'tags': [],
'desc': '''This policy controls the list of websites that will never cause a browser switch.
Note that elements can also be added to this list through the <ph name="EXTERNAL_SITELIST_URL_POLICY_NAME">BrowserSwitcherExternalGreylistUrl</ph> policy.
When this policy is left unset, no websites are added to the list.
When this policy is set, each item is treated as a rule, similar to the <ph name="URL_LIST_POLICY_NAME">BrowserSwitcherUrlList</ph> policy. However, the logic is reversed: rules that match will not open an alternative browser.
Unlike <ph name="URL_LIST_POLICY_NAME">BrowserSwitcherUrlList</ph>, rules apply to both directions. That is, when the Internet Explorer add-in is present and enabled, it also controls whether <ph name="IE_PRODUCT_NAME">Internet Explorer</ph> should open these URLs in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.''',
},
{
'id': 498,
'name': 'BrowserSwitcherUseIeSitelist',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.win:71-'],
'caption': '''Use Internet Explorer's SiteList policy for Legacy Browser Support.''',
'tags': [],
'desc': '''This policy controls whether to load rules from Internet Explorer's SiteList policy.
When this policy is left unset, or set to false, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> does not use Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy as a source of rules for switching browsers.
When this policy is set to true, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> reads Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> to obtain the site list's URL. <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> then downloads the site list from that URL, and applies the rules as if they had been configured with the <ph name="SITELIST_POLICY_NAME">BrowserSwitcherUrlList</ph> policy.
For more information on Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy: https://docs.microsoft.com/internet-explorer/ie11-deploy-guide/what-is-enterprise-mode''',
},
{
'id': 511,
'name': 'BrowserSwitcherExternalSitelistUrl',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'example_value': 'http://example.com/sitelist.xml',
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:72-'],
'caption': '''URL of an XML file that contains URLs to load in an alternative browser.''',
'tags': [],
'desc': '''This policy is a URL, that points to an XML file in the same format as Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy. This loads rules from an XML file, without sharing those rules with Internet Explorer.
When this policy is left unset, or not set to a valid URL, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> does not use it as a source of rules for switching browsers.
When this policy is set to a valid URL, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> downloads the site list from that URL, and applies the rules as if they had been configured with the <ph name="SITELIST_POLICY_NAME">BrowserSwitcherUrlList</ph> policy.
For more information on Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy: https://docs.microsoft.com/internet-explorer/ie11-deploy-guide/what-is-enterprise-mode''',
},
{
'id': 564,
'name': 'BrowserSwitcherExternalGreylistUrl',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'string',
'schema': { 'type': 'string' },
'example_value': 'http://example.com/greylist.xml',
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:77-'],
'caption': '''URL of an XML file that contains URLs that should never trigger a browser switch.''',
'tags': [],
'desc': '''This policy is a URL, that points to an XML file in the same format as Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy. This loads rules from an XML file, without sharing those rules with Internet Explorer.
The rules in this XML file apply in the same way as <ph name="GREYLIST_POLICY_NAME">BrowserSwitcherUrlGreylist</ph>. That is, these rules prevent <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> from opening the alternative browser, and also prevent the alternative browser from opening <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
When this policy is left unset, or not set to a valid URL, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> does not use it as a source of rules that don't trigger a browser switch.
When this policy is set to a valid URL, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> downloads the site list from that URL, and applies the rules as if they had been configured with the <ph name="SITELIST_POLICY_NAME">BrowserSwitcherUrlGreylist</ph> policy.
For more information on Internet Explorer's <ph name="IEEM_SITELIST_POLICY">SiteList</ph> policy: https://docs.microsoft.com/internet-explorer/ie11-deploy-guide/what-is-enterprise-mode''',
},
{
'id': 524,
'name': 'BrowserSwitcherDelay',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'int',
'schema': { 'type': 'integer' },
'example_value': 10000,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:74-'],
'caption': '''Delay before launching alternative browser (milliseconds)''',
'tags': [],
'desc': '''This policy controls how long to wait before launching an alternative browser, in milliseconds.
When this policy is left unset, or set to 0, navigating to a designated URL immediately opens it in an alternative browser.
When this policy is set to a number, Chrome shows a message for that many milliseconds, and then opens the alternative browser.''',
},
{
'id': 517,
'name': 'BrowserSwitcherEnabled',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:73-'],
'caption': '''Enable the Legacy Browser Support feature.''',
'tags': [],
'desc': '''This policy controls whether to enable Legacy Browser Support.
When this policy is left unset, or is set to false, Chrome will not attempt to launch designated URLs in an alternate browser.
When this policy is set to true, Chrome will attempt to launch some URLs in an alternate browser (such as Internet Explorer). This feature is configured using the policies in the <ph name="LEGACY_BROWSER_SUPPORT_POLICY_GROUP">Legacy Browser support</ph> group.
This feature is a replacement for the <ph name="LEGACY_BROWSER_SUPPORT_EXTENSION_NAME">'Legacy Browser Support'</ph> extension. Configuration from the extension will carry over to this feature, but it is strongly advised to use the Chrome policies instead. This ensures better compatibility in the future.''',
},
{
'id': 519,
'name': 'BrowserSwitcherKeepLastChromeTab',
'owners': ['nicolaso@chromium.org', 'pastarmovj@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'example_value': False,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:74-'],
'caption': '''Keep last tab open in Chrome.''',
'tags': [],
'desc': '''This policy controls whether to close Chrome completely when the last tab would switch to another browser.
When this policy is left unset, or is set to true, Chrome will keep at least one tab open, after switching to an alternate browser.
When this policy is set to false, Chrome will close the tab after switching to an alternate browser, even if it was the last tab. This will cause Chrome to exit completely.''',
},
{
'name': 'DeviceDisplayResolution',
'owners': ['voit@chromium.org'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'external_width': { 'type': 'integer', 'minimum': 1 },
'external_height': { 'type': 'integer', 'minimum': 1 },
'external_scale_percentage': { 'type': 'integer', 'minimum': 1 },
'external_use_native': { 'type': 'boolean' },
'internal_scale_percentage': { 'type': 'integer', 'minimum': 1 },
'recommended': { 'type': 'boolean' }
}
},
'supported_on': [ 'chrome_os:72-' ],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'device_only': True,
'example_value': {
'external_width': 1920,
'external_height': 1080,
'external_use_native': False,
'external_scale_percentage': 100,
'internal_scale_percentage': 150,
'recommended': True
},
'id': 502,
'caption': '''Set display resolution and scale factor''',
'tags': [],
'desc': '''Setting the policy sets the resolution and scale factor for each display. External display settings apply to connected displays. (The policy doesn't apply if a display doesn't support the specified resolution or scale.)
Setting <ph name="EXTERNAL_USE_NATIVE">external_use_native</ph> to True means the policy ignores <ph name="EXTERNAL_WIDTH">external_width</ph> and <ph name="EXTERNAL_HEIGHT">external_height</ph> and sets external displays to their native resolution. Setting <ph name="EXTERNAL_USE_NATIVE">external_use_native</ph> to False or leaving it and <ph name="EXTERNAL_WIDTH">external_width</ph> or <ph name="EXTERNAL_HEIGHT">external_height</ph> unset means the policy doesn't affect external displays.
Setting the recommended flag to True lets users change resolution and scale factor of any display through the settings page, but their settings change back at the next reboot. Setting the recommended flag to False or leaving it unset means users can't change the display settings.
Note: Set <ph name="EXTERNAL_WIDTH">external_width</ph> and <ph name="EXTERNAL_HEIGHT">external_height</ph> in pixels and <ph name="EXTERNAL_SCALE_PERCENTAGE">external_scale_percentage</ph> and <ph name="INTERNAL_SCALE_PERCENTAGE">internal_scale_percentage</ph> in percents.''',
},
{
'name': 'PluginVmAllowed',
'owners': ['okalitova@chromium.org', 'aoldemeier@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:72-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 503,
'caption': '''Allow devices to use a <ph name="PLUGIN_VM_NAME">PluginVm</ph> on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>''',
'tags': [],
'desc': '''Allow this device to run PluginVm.
If the policy is set to false or left unset, <ph name="PLUGIN_VM_NAME">PluginVm</ph> is not enabled for the device.
If set to true, <ph name="PLUGIN_VM_NAME">PluginVm</ph> is enabled for the device as long as other settings also allow it. <ph name="PLUGIN_VM_ALLOWED_POLICY_NAME">PluginVmAllowed</ph> and <ph name="USER_PLUGIN_VM_ALLOWED_POLICY_NAME">UserPluginVmAllowed</ph> need to be true, and either <ph name="PLUGIN_VM_LICENSE_KEY_POLICY_NAME">PluginVmLicenseKey</ph> or <ph name="PLUGIN_VM_USER_ID_POLICY_NAME">PluginVmUserId</ph> need to be set for <ph name="PLUGIN_VM_NAME">PluginVm</ph> to be allowed to run.''',
},
{
'name': 'UserPluginVmAllowed',
'owners': ['okalitova@chromium.org', 'janagrill@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 705,
'caption': '''Allow users to use a <ph name="PLUGIN_VM_NAME">PluginVm</ph> on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>''',
'tags': [],
'desc': '''Allow this user to run PluginVm.
If the policy is set to false or left unset, <ph name="PLUGIN_VM_NAME">PluginVm</ph> is not enabled for the user.
If set to true, <ph name="PLUGIN_VM_NAME">PluginVm</ph> is enabled for the user as long as other settings also allow it. <ph name="PLUGIN_VM_ALLOWED_POLICY_NAME">PluginVmAllowed</ph> and <ph name="USER_PLUGIN_VM_ALLOWED_POLICY_NAME">UserPluginVmAllowed</ph> need to be true, and either <ph name="PLUGIN_VM_LICENSE_KEY_POLICY_NAME">PluginVmLicenseKey</ph> or <ph name="PLUGIN_VM_USER_ID_POLICY_NAME">PluginVmUserId</ph> need to be set for <ph name="PLUGIN_VM_NAME">PluginVm</ph> to be allowed to run.''',
},
{
'name': 'PluginVmLicenseKey',
'owners': ['okalitova@chromium.org', 'aoldemeier@chromium.org'],
'type': 'string',
'schema': {
'sensitiveValue': True,
'type': 'string'
},
'supported_on': ['chrome_os:73-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': "LICENSE_KEY",
'id': 515,
'caption': '''<ph name="PLUGIN_VM_NAME">PluginVm</ph> license key''',
'tags': [],
'desc': '''This policy specifies the <ph name="PLUGIN_VM_NAME">PluginVm</ph> license key for this device.''',
},
{
'name': 'PluginVmUserId',
'owners': ['traciechan@google.com', 'zatrudo@google.com'],
'type': 'string',
'schema': {
'sensitiveValue': True,
'type': 'string'
},
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': "USER_ID",
'id': 698,
'caption': '''<ph name="PLUGIN_VM_NAME">PluginVm</ph> user id''',
'tags': [],
'desc': '''This policy specifies the <ph name="PLUGIN_VM_NAME">PluginVm</ph> licensing user id for this device.''',
},
{
'name': 'PluginVmImage',
'owners': ['okalitova@chromium.org', 'aoldemeier@chromium.org'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'url': {
'description': 'The URL from which the <ph name="PLUGIN_VM_NAME">PluginVm</ph> image can be downloaded.',
'type': 'string'
},
'hash': {
'description': 'The SHA-256 hash of the <ph name="PLUGIN_VM_NAME">PluginVm</ph> image.',
'type': 'string'
}
},
},
'supported_on': ['chrome_os:72-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
"url": "https://example.com/plugin_vm_image",
"hash": "842841a4c75a55ad050d686f4ea5f77e83ae059877fe9b6946aa63d3d057ed32"
},
'id': 504,
'caption': '''<ph name="PLUGIN_VM_NAME">PluginVm</ph> image''',
'tags': [],
'desc': '''This policy specifies the <ph name="PLUGIN_VM_NAME">PluginVm</ph> image for a user. The policy is set by specifying the URL from which the device can download the image and a SHA-256 hash used to verify the integrity of the download.
The policy should be specified as a string that expresses the URL and hash in the JSON format.''',
},
{
'name': 'PluginVmDataCollectionAllowed',
'owners': ['okalitova@chromium.org', 'janagrill@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'future': True,
'example_value': False,
'id': 712,
'caption': '''Allow <ph name="PLUGIN_VM_NAME">PluginVm</ph> Product Analytics''',
'tags': [],
'desc': '''Allow <ph name="PLUGIN_VM_NAME">PluginVm</ph> to collect <ph name="PLUGIN_VM_NAME">PluginVm</ph> usage data.
If the policy is set to false or left unset, <ph name="PLUGIN_VM_NAME">PluginVm</ph> is not allowed to collect data.
If set to true, <ph name="PLUGIN_VM_NAME">PluginVm</ph> might collect <ph name="PLUGIN_VM_NAME">PluginVm</ph> usage data that is then combined and thoroughly analyzed to improve <ph name="PLUGIN_VM_NAME">PluginVm</ph> experience.''',
},
{
'name': 'PluginVmRequiredFreeDiskSpace',
'owners': ['okalitova@chromium.org', 'janagrill@chromium.org'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0,
'maximum': 1000
},
'supported_on': ['chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 20,
'id': 724,
'caption': '''Required free disk space for <ph name="PLUGIN_VM_NAME">PluginVm</ph>''',
'tags': [],
'desc': '''Free disk space (in GB) required to install <ph name="PLUGIN_VM_NAME">PluginVm</ph>.
If this policy is left unset, <ph name="PLUGIN_VM_NAME">PluginVm</ph> installation fails if free disk space available on the device is less than 20 GB (default value).
If this policy is set, <ph name="PLUGIN_VM_NAME">PluginVm</ph> installation fails if free disk space available on the device is less than required by policy.''',
},
{
'name': 'ParentAccessCodeConfig',
'owners': ['file://src/chrome/browser/chromeos/child_accounts/OWNERS'],
'type': 'dict',
'schema': {
'sensitiveValue': True,
'type': 'object',
'properties': {
'current_config': {
'id': 'Config',
'type': 'object',
'description': 'Configuration used to generate and verify Parent Access Code.',
'properties': {
'shared_secret': {
'type': 'string',
'description': 'Secret shared between child and parent devices.'
},
'access_code_ttl': {
'type': 'integer',
'minimum': 60,
'maximum': 3600,
'description': 'Time that access code is valid for (in seconds).'
},
'clock_drift_tolerance': {
'type': 'integer',
'minimum': 0,
'maximum': 1800,
'description': 'The allowed difference between the clock on child and parent devices (in seconds).'
}
}
},
'future_config': {
'$ref': 'Config',
},
'old_configs': {
'type': 'array',
'items': { '$ref': 'Config'},
}
},
},
'supported_on': ['chrome_os:73-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': {
'current_config': {
'shared_secret': 'oOA9nX02LdhYdOzwMsGof+QA3wUKP4YMNlk9S/W3o+w=',
'access_code_ttl': 600,
'clock_drift_tolerance': 300
},
'future_config': {
'shared_secret': 'KMsoIjnpvcWmiU1GHchp2blR96mNyJwS',
'access_code_ttl': 600,
'clock_drift_tolerance': 300
},
'old_configs': [{
'shared_secret': 'sTr6jqMTJGCbLhWI5plFTQb/VsqxwX2Q',
'access_code_ttl': 600,
'clock_drift_tolerance': 300
}],
},
'id': 507,
'caption': '''Parent Access Code Configuration''',
'tags': [],
'desc': '''This policy specifies configuration that is used to generate and verify Parent Access Code.
|current_config| is always used for generating access code and should be used for validating access code only when it cannot be validated with |future_config|.
|future_config| is the primary config used for validating access code.
|old_configs| should be used for validating access code only when it cannot be validated with |future_config| nor |current_config|.
The expected way of using this policy is to gradually rotate access code configuration. New configuration is always put into |future_config| and at the same
time the existing value is moved into |current_config|. |current_config|'s previous values are moved into |old_configs| and removed after rotation cycle is finished.
This policy applies only to child user.
When this policy is set Parent Access Code can be verified on child user's device.
When this policy is unset it is not possible to verify Parent Access Code on child user's device.'''
},
{
'name': 'ClientCertificateManagementAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'All',
'value': 0,
'caption': '''Allow users to manage all certificates''',
},
{
'name': 'UserOnly',
'value': 1,
'caption': '''Allow users to manage user certificates''',
},
{
'name': 'None',
'value': 2,
'caption': '''Disallow users from managing certificates''',
},
],
'supported_on': ['chrome_os:74-'],
'tags' : [],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': 1,
'id': 518,
'caption': '''Allow users to manage installed client certificates.''',
'desc': '''Setting the policy to None or leaving it unset lets users manage certificates. Setting the policy to 2 means users can only view (not manage) certificates.
Setting the policy to 1 lets users manage user certificates, but not device-wide certificates.''',
},
{
'id': 520,
'name': 'DeviceRebootOnUserSignout',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3, 4 ],
},
'items': [
{
'name': 'Never',
'value': 1,
'caption': '''Do not reboot on user sign out.''',
},
{
'name': 'ArcSession',
'value': 2,
'caption': '''Reboot on user sign out if Android has started.''',
},
{
'name': 'Always',
'value': 3,
'caption': '''Always reboot on user sign out.''',
},
{
'name': 'ArcSessionOrVMStart',
'value': 4,
'caption': '''Reboot on user sign out if Android or a VM has started.''',
},
],
'device_only': True,
'example_value': 2,
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'supported_on': ['chrome_os:76-'],
'caption': '''Force device reboot when user sign out''',
'tags': ['system-security'],
'desc': '''
This policy, when set to ArcSession, forces the device to reboot when a user sign out if Android has started.
This policy, when set to ArcSessionOrVMStart, forces the device to reboot when a user sign out if Android or a VM has started.
When set to Always, it forces the device to reboot on every user sign out.
If left unset, it has no effect and no reboot is forced on user sign out. The same applies if set to Never.
This policy has effect only for unaffiliated users.
''',
},
{
'name': 'ForceNetworkInProcess',
'owners': ['services/network/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:72-83'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'deprecated': True,
'example_value': False,
'id': 521,
'caption': '''Force networking code to run in the browser process''',
'tags': [],
'desc': '''This policy is deprecated.''',
},
{
'name': 'AssistantOnboardingMode',
'owners': ['xiaohuic@chromium.org', 'croissant-eng@google.com'],
'type': 'string-enum',
'schema': {
'type': 'string',
'enum': [
'Default',
'Education',
],
},
'items': [
{
'name': 'Default',
'value': 'Default',
'caption': '''Use the default mode of the Assistant onboarding experience''',
},
{
'name': 'Education',
'value': 'Education',
'caption': '''Use the EDU mode of the Assistant onboarding experience''',
},
],
'supported_on': ['chrome_os:85-'],
'tags': [],
'future': True,
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': 'Default',
'id': 729,
'caption': '''Mode of the Assistant onboarding experience''',
'desc': '''This policy controls the mode of the Assistant onboarding experience.
If the policy is unset or is set to <ph name="ASSISTANT_ONBOARDING_MODE_DEFAULT">"Default"</ph>, the default mode of the Assistant onboarding experience is used.
If the policy is set to <ph name="ASSISTANT_ONBOARDING_MODE_EDUCATION">"Education"</ph>, the EDU mode of the Assistant onboarding experience is used.''',
},
{
'name': 'VoiceInteractionContextEnabled',
'owners': ['yanxiao@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:74-'],
'tags' : ['google-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 527,
'caption': '''"Allow Google Assistant to access screen context"''',
'desc': '''This policy gives Google Assistant permission to access screen context and send the info to server.
If the policy is enabled, Google Assistant will be allowed to access screen context.
If the policy is disabled, Google Assistant will not be allowed to access screen context.
If not set, users can decide whether to allow Google Assistant to access screen context or not''',
},
{
'name': 'VoiceInteractionHotwordEnabled',
'owners': ['yanxiao@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:74-'],
'tags' : [],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 529,
'caption': '''Allow Google Assistant to listen for the voice activation phrase''',
'desc': '''This policy gives Google Assistant permission to listen for the voice activation phrase.
If the policy is enabled, Google Assistant would listen for the voice activation phrase.
If the policy is disabled, Google Assistant would not listen for the voice activation phrase.
If the policy is not set, users can decide whether to allow Google Assistant to listen for the voice activation phrase.
''',
},
{
'name': 'VoiceInteractionQuickAnswersEnabled',
'owners': ['llin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-'],
'tags' : ['google-sharing'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 694,
'caption': '''"Allow Quick Answers to access selected content"''',
'desc': '''This policy gives Quick Answers permission to access selected content and send the info to server.
If the policy is enabled, Quick Answers will be allowed to access selected content.
If the policy is disabled, Quick Answers will not be allowed to access selected content.
If the policy is not set, users can decide whether to allow Quick Answers to access selected content.''',
},
{
'name': 'DeviceWilcoDtcAllowed',
'owners': ['pbond@chromium.org', 'lamzin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:74-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 532,
'caption': '''Allows wilco diagnostics and telemetry controller''',
'tags': [],
'desc': '''Allows an admin to control if telemetry and diagnostics data should be collected, processed and reported by wilco diagnostics and telemetry controller (DTC).
If the policy is set to false or left unset, DTC is switched off and is not able to collect, process and report telemetry and diagnostics data from the device.
If wilco DTC is available on the given device and the policy is set to true, collecting, processing and reporting of telemetry and diagnostics data is switched on.''',
},
{
'name': 'AllowPopupsDuringPageUnload',
'owners': ['avi@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:74-', 'chrome_os:74-', 'android:74-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'default_for_enterprise_users': True,
'example_value': False,
'id': 533,
'caption': '''Allows a page to show popups during its unloading''',
'tags': [],
'desc': '''Setting the policy to True allows pages to show pop-ups while the pages unload.
Setting the policy to False or leaving it unset prevents pages from showing pop-ups while the pages unload.
This policy will be removed in Chrome 88.
See https://www.chromestatus.com/feature/5989473649164288.''',
},
{
'name': 'DeviceWilcoDtcConfiguration',
'owners': ['pbond@chromium.org', 'lamzin@google.com'],
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': { 'type': 'string' },
'hash': { 'type': 'string' }
},
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
"url": "https://example.com/wilcodtcconfig",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
},
'max_size': 1000000,
'id': 535,
'caption': '''Wilco DTC configuration''',
'tags': [],
'desc': '''Provides a wilco DTC (diagnostics and telemetry controller) configuration.
This policy allows to provide wilco DTC configuration that is allowed to be applied if wilco DTC is available on the given device and allowed by policy. The size of the configuration must not exceed 1MB (1000000 bytes) and must be encoded in JSON. The wilco DTC is responsible for handling it. The cryptographic hash is used to verify the integrity of the download.
The configuration is downloaded and cached. It will be re-downloaded whenever the URL or the hash changes.
If you set this policy, users cannot change or override it.''',
},
{
'name': 'DevicePowerPeakShiftEnabled',
'owners': ['lamzin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': False,
'id': 538,
'caption': '''Enable peak shift power management''',
'tags': [],
'desc': '''Enable the power peak shift power management policy.
Peak Shift is power saving policy that minimizes alternating current usage during the peak usage times during the day. For each weekday a start and end time to run in power Peak Shift mode can be set. During these times the system will run from the battery even if the alternating current is attached as long as the battery stays above the threshold specified. After the end time specified the system will run from alternating current if attached but will not charge the battery. The system will again function normally using alternating current and recharging the battery after the specified Charge Start time.
If this policy is set to true, and <ph name="DEVICE_POWER_PEAK_SHIFT_BATTERY_THRESHOLD_NAME">DevicePowerPeakShiftBatteryThreshold</ph>, <ph name="DEVICE_POWER_PEAK_SHIFT_DAY_CONFIG_NAME">DevicePowerPeakShiftDayConfig</ph> are set, then power peak shift will always be enabled if supported on the device.
If this policy is set to false, power peak shift will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, power peak shift is disabled initially and cannot be enabled by the user.'''
},
{
'name': 'DevicePowerPeakShiftBatteryThreshold',
'owners': ['lamzin@google.com'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 15,
'maximum': 100
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': 20,
'id': 539,
'caption': '''Set power peak shift battery threshold in percent''',
'tags': [],
'desc': '''Set power peak shift battery threshold in percent.
This policy is only used if <ph name="DEVICE_POWER_PEAK_SHIFT_ENABLED_NAME">DevicePowerPeakShiftEnabled</ph> is set to true.
If this policy is not configured or left unset, power peak shift will always be disabled.'''
},
{
'name': 'DevicePowerPeakShiftDayConfig',
'owners': ['lamzin@google.com'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'entries': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'day': { '$ref': 'WeekDay' },
'start_time': {
'description': '''Time when the device will start running from the battery, interpreted in the device's local time zone.''',
'$ref': 'Time'
},
'end_time': {
'description': '''Time when the device will run from alternating current, interpreted in the device's local time zone.''',
'$ref': 'Time'
},
'charge_start_time': {
'description': '''Time when the device will use alternating current to charge battery, interpreted in the device's local time zone.''',
'$ref': 'Time'
}
}
}
}
}
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': {
'entries': [
{
'day': 'MONDAY',
'start_time': {
'hour': 9,
'minute': 0
},
'end_time': {
'hour': 15,
'minute': 15
},
'charge_start_time': {
'hour': 20,
'minute': 45
}
},
{
'day': 'FRIDAY',
'start_time': {
'hour': 2,
'minute': 30
},
'end_time': {
'hour': 21,
'minute': 0
},
'charge_start_time': {
'hour': 23,
'minute': 45
}
}
],
},
'id': 540,
'caption': '''Set power peak shift day config''',
'tags': [],
'desc': '''Set power peak shift day config.
This policy is only used if <ph name="DEVICE_POWER_PEAK_SHIFT_ENABLED_NAME">DevicePowerPeakShiftEnabled</ph> is set to true.
If this policy is not configured or left unset, power peak shift will always be disabled.
Note: allowed values for <ph name="MINUTE_FIELD_NAME">minute</ph> field in <ph name="START_TIME_FIELD_NAME">start_time</ph>, <ph name="END_TIME_FIELD_NAME">end_time</ph> and <ph name="CHARGE_START_TIME_FIELD_NAME">charge_start_time</ph> are 0, 15, 30, 45.'''
},
{
'name': 'DeviceBootOnAcEnabled',
'owners': ['lamzin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': False,
'id': 541,
'caption': '''Enable boot on AC (alternating current)''',
'tags': [],
'desc': '''Enable the boot on AC power management policy.
Boot on AC provides an opportunity for system to automatically boot up from OFF/Hibernate state when line power is inserted.
If this policy is set to true then boot on AC will always be enabled if supported on the device.
If this policy is set to false, boot on AC will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, boot on AC is disabled and cannot be enabled by the user.'''
},
{
'name': 'DeviceUsbPowerShareEnabled',
'owners': ['lamzin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': True,
'id': 553,
'caption': '''Enable USB power share''',
'tags': [],
'desc': '''Enable the USB power share power management policy.
Certain devices have a specific USB port marked with a lightning bolt or battery icon that can be used to charge devices like a mobile phone using the system battery. This policy affects the charging behavior of this port while the system is in the sleep and shut down modes. This policy does not affect the other USB ports and the charging behavior while the system is awake.
When awake, the USB port will always provide power.
When sleeping, if this policy is set to true, then power will be supplied to the USB port when the device is plugged into the wall charger or if the battery level is > 50%. Otherwise no power is supplied.
When shut down, if this policy is set to true, then power will be supplied to the USB port when the device is plugged into the wall charger. Otherwise no power is supplied.
If this policy is left unset, the policy is enabled and cannot be disabled by the user.'''
},
{
'name': 'SignedHTTPExchangeEnabled',
'owners': ['file://content/browser/web_package/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:75-', 'chrome_os:75-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 542,
'caption': '''Enable Signed HTTP Exchange (SXG) support''',
'tags': ['filtering'],
'desc': '''Setting the policy to True or leaving it unset means <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will accept web contents served as Signed HTTP Exchanges.
Setting the policy to False prevents Signed HTTP Exchanges from loading.''',
},
{
'name': 'DeviceQuickFixBuildToken',
'owners': ['askaraitzhan@chromium.org', 'ultrotter@chromium.org'],
'type': 'string',
'schema': {
'type': 'string',
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 'sometoken',
'id': 543,
'caption': '''Provide users with Quick Fix Build''',
'desc': '''This policy controls whether or not the device should be updated to a Quick Fix Build.
If policy value is set to a token that maps to a Quick Fix Build, the device will be updated to the corresponding Quick Fix Build if the update is not blocked by another policy.
If this policy is not set, or if its value does not map to a Quick Fix Build, then the device won't be updated to a Quick Fix Build. If the device is already running a Quick Fix Build and the policy is not set anymore or its value does not map to a Quick Fix Build anymore, then the device will be updated to a regular build if the update is not blocked by another policy.''',
},
{
'name': 'SamlInSessionPasswordChangeEnabled',
'owners': ['olsen@chromium.org', 'rsorokin@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:76-'],
'future': True,
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 545,
'caption': '''Enables a page for in-session change of password for SAML users''',
'desc': '''Enables a page at chrome://password-change that lets SAML users change their SAML passwords while in-session, which ensures that the SAML password and the device lockscreen password are kept in-sync.
This policy also enables notifications that warn SAML users if their SAML passwords are soon to expire so that they can deal with this immediately by doing an in-session password change.
But, these notifications will only be shown if password expiry information is sent to the device by the SAML identity provider during the SAML login flow.
If this policy is set, the user cannot change or override it.''',
},
{
'name': 'SamlLockScreenReauthenticationEnabled',
'owners': ['mslus@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'future': True,
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 719,
'caption': '''Enables online re-authentication on lock screen for SAML users''',
'desc': '''Enables online user signin on a lock screen. If the policy is set to true online re-authentication on the lock screen is triggered e.g. by <ph name="POLICY">SAMLOfflineSigninTimeLimit</ph>.
The re-authentication is enforced immediately when on the lock screen or next time a user locks the screen after the condition is met.
If the policy is set to false or unset users can always unlock the screen with their local credentials.''',
},
{
'name': 'UserFeedbackAllowed',
'owners': ['apotapchuk@chromium.org', 'emaxx@chromium.org'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'supported_on': ['chrome.*:77-', 'chrome_os:77-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 570,
'caption': '''Allow user feedback''',
'tags': [],
'desc': '''Allow user feedback.
If the policy is set to false, users can not send feedback to Google.
If the policy is unset or set to true, users can send feedback to Google via Menu->Help->Report an Issue or key combination.'''
},
{
'name': 'SamlPasswordExpirationAdvanceWarningDays',
'owners': ['olsen@chromium.org', 'rsorokin@chromium.org'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 0,
'maximum': 90
},
'supported_on': ['chrome_os:76-'],
'future': True,
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 14,
'id': 555,
'caption': '''How many days in advance to notify SAML users when their password is due to expire''',
'desc': '''This policy has no effect unless SamlInSessionPasswordChangeEnabled is true.
If that policy is true, and this policy is set to (for example) 14, that means SAML users will be notified 14 days in advance that their password is due to expire on a certain date.
Then they can deal with this immediately by doing an in-session password change and updating their password before it expires.
But, these notifications will only be shown if password expiry information is sent to the device by the SAML identity provider during the SAML login flow.
Setting this policy to zero means the users will not be notified in advance - they will only be notified once the password has already expired.
If this policy is set, the user cannot change or override it.''',
},
{
'name': 'DeviceAdvancedBatteryChargeModeEnabled',
'owners': ['lamzin@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': False,
'id': 548,
'caption': '''Enable advanced battery charge mode''',
'tags': [],
'desc': '''Enable the advanced battery charge mode power management policy.
Advanced Battery Charging Mode allows the user to maximize the battery health. In Advanced Charging Mode the system will use standard charging algorithm and other techniques during non-work hours to maximize battery health. During work hours, an express charge is used. This express charge allows the battery to be charged faster; therefore, the battery is at full charge sooner. For each day the time in which the system will be most heavily used is specified by the start time and the duration.
If this policy is set to true, and <ph name="DEVICE_ADVANCED_BATTERY_CHARGE_MODE_DAY_CONFIG_NAME">DeviceAdvancedBatteryChargeModeDayConfig</ph> is set, then advanced battery charge mode will always be enabled if supported on the device.
If this policy is set to false, advanced battery charge mode will always be disabled.
If you set this policy, users cannot change or override it.
If this policy is left unset, advanced battery charge mode is disabled and cannot be enabled by the user.'''
},
{
'name': 'DeviceAdvancedBatteryChargeModeDayConfig',
'owners': ['lamzin@google.com'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'entries': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'day': { '$ref': 'WeekDay' },
'charge_start_time': {
'description': '''Time when the device will start charging, interpreted in the device's local time zone.''',
'$ref': 'Time'
},
'charge_end_time': {
'description': '''Time when the device will stop charging, interpreted in the device's local time zone.''',
'$ref': 'Time'
}
}
}
}
}
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'entries': [
{
'day': 'TUESDAY',
'charge_start_time': {
'hour': 20,
'minute': 30,
},
'charge_end_time': {
'hour': 23,
'minute': 0,
},
},
{
'day': 'FRIDAY',
'charge_start_time': {
'hour': 4,
'minute': 15,
},
'charge_end_time': {
'hour': 6,
'minute': 45,
},
}
],
},
'id': 549,
'caption': '''Set advanced battery charge mode day config''',
'tags': [],
'desc': '''Set advanced battery charge mode day config.
This policy is only used if <ph name="DEVICE_ADVANCED_BATTERY_CHARGE_MODE_ENABLED_NAME">DeviceAdvancedBatteryChargeModeEnabled</ph> is set to true.
If this policy is not configured or left unset, advanced battery charge mode will always be disabled.
Note: <ph name="CHARGE_START_TIME_FIELD_NAME">charge_start_time</ph> must be less than <ph name="CHARGE_END_TIME_FIELD_NAME">charge_end_time</ph>.
Note: allowed values for <ph name="MINUTE_FIELD_NAME">minute</ph> field in <ph name="CHARGE_START_TIME_FIELD_NAME">charge_start_time</ph> and <ph name="CHARGE_END_TIME_FIELD_NAME">charge_end_time</ph> are 0, 15, 30, 45.'''
},
{
'name': 'DeviceBatteryChargeMode',
'owners': ['lamzin@google.com'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 1, 2, 3, 4, 5 ]
},
'items': [
{
'name': 'Standard',
'value': 1,
'caption': '''Fully charge battery at a standard rate.'''
},
{
'name': 'ExpressCharge',
'value': 2,
'caption': '''Charge battery using fast charging technology.'''
},
{
'name': 'PrimarilyAcUse',
'value': 3,
'caption': '''Charge battery for devices that are primarily connected to an external power source.'''
},
{
'name': 'Adaptive',
'value': 4,
'caption': '''Adaptive charge battery based on battery usage pattern.'''
},
{
'name': 'Custom',
'value': 5,
'caption': '''Charge battery while it is within a fixed range.'''
}
],
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': 1,
'id': 550,
'caption': '''Battery charge mode''',
'tags': [],
'desc': '''Specifies battery charge mode power management policy.
Dynamically control battery charging to minimize battery wear-out due to battery stress and extend battery life.
If custom battery charge mode is selected then <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_START_CHARGING_NAME">DeviceBatteryChargeCustomStartCharging</ph> and <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_STOP_CHARGING_NAME">DeviceBatteryChargeCustomStopCharging</ph> must be specified.
If this policy is set then battery charge mode will be applied if supported on the device.
If this policy is left unset and policy is supported on the device, the standard battery charge mode will be applied and cannot be changed by the user.
Note: <ph name="DEVICE_ADVANCED_BATTERY_CHARGE_MODE_ENABLED_NAME">DeviceAdvancedBatteryChargeModeEnabled</ph> overrides this policy if the former is specified.'''
},
{
'name': 'DeviceBatteryChargeCustomStartCharging',
'owners': ['lamzin@google.com'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 50,
'maximum': 95
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': 60,
'id': 551,
'caption': '''Set battery charge custom start charging in percent''',
'tags': [],
'desc': '''Set battery charge custom start charging in percent.
Battery starts charging when it depletes the battery charge custom start charging value.
<ph name="DEVICE_BATTERY_CHARGE_CUSTOM_START_CHARGING_NAME">DeviceBatteryChargeCustomStartCharging</ph> must be at least five percentage points below <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_STOP_CHARGING_NAME">DeviceBatteryChargeCustomStopCharging</ph>.
This policy is only used if <ph name="DEVICE_BATTERY_CHARGE_MODE_NAME">DeviceBatteryChargeMode</ph> is set to <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_MODE_NAME">"custom"</ph>.
If this policy is not configured or left unset, the <ph name="DEVICE_BATTERY_CHARGE_STANDARD_MODE_NAME">"standard"</ph> battery charge mode will be applied.'''
},
{
'name': 'DeviceBatteryChargeCustomStopCharging',
'owners': ['lamzin@google.com'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 55,
'maximum': 100
},
'supported_on': ['chrome_os:75-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False
},
'example_value': 90,
'id': 552,
'caption': '''Set battery charge custom stop charging in percent''',
'tags': [],
'desc': '''Set battery charge custom stop charging in percent.
Battery stops charging when it reaches the battery charge custom stop charging value.
<ph name="DEVICE_BATTERY_CHARGE_CUSTOM_START_CHARGING_NAME">DeviceBatteryChargeCustomStartCharging</ph> must be at least five percentage points below <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_STOP_CHARGING_NAME">DeviceBatteryChargeCustomStopCharging</ph>.
This policy is only used if <ph name="DEVICE_BATTERY_CHARGE_MODE_NAME">DeviceBatteryChargeMode</ph> is set to <ph name="DEVICE_BATTERY_CHARGE_CUSTOM_MODE_NAME">"custom"</ph>.
If this policy is not configured or left unset, the <ph name="DEVICE_BATTERY_CHARGE_STANDARD_MODE_NAME">"standard"</ph> battery charge mode will be applied.'''
},
{
'name': 'DeviceScheduledUpdateCheck',
'owners': ['abhishekbh@chromium.org', 'pmarko@chromium.org'],
'device_only': True,
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'update_check_time': {
'description': '''Time when the update check should happen, interpreted in the device's local time zone.''',
'$ref': 'Time'
},
'frequency': {
'description': 'Frequency with which the update check should recur.',
'type': 'string',
'enum': [
'DAILY',
'WEEKLY',
'MONTHLY'
]
},
'day_of_week': {
'description': '''Day of week when the update check should happen, interpreted in the device's local time zone. Only used when 'frequency' is 'WEEKLY'.''',
'$ref': 'WeekDay'
},
'day_of_month': {
'description': '''Day of month [1-31] when the update check should happen, interpreted in the device's local time zone. Only used when 'frequency' is 'MONTHLY'. If this is more than the maximum number of days in a given month then the last day of the month will be chosen.''',
'type': 'integer',
'minimum': 1,
'maximum': 31
}
},
'required': ['update_check_time', 'frequency']
},
'supported_on': ['chrome_os:75-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {'update_check_time' : {'hour': 23, 'minute': 35}, 'frequency': 'WEEKLY', 'day_of_week': 'MONDAY', 'day_of_month': 11},
'tags': [],
'id': 556,
'caption': '''Set custom schedule to check for updates''',
'desc': '''Allows setting a custom schedule to check for updates. This applies to all users, and to all interfaces on the device. Once set, the device will check for updates according to the schedule. The policy must be removed to cancel any more scheduled update checks.'''
},
{
'name': 'KerberosEnabled',
'owners': ['file://chrome/browser/chromeos/kerberos/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'future': True,
'example_value': True,
'id': 557,
'caption': '''Enable Kerberos functionality''',
'tags': ['website-sharing'],
'desc': '''Controls whether the Kerberos functionality is enabled. Kerberos is an authentication protocol that can be used to authenticate to web apps and file shares.
If this policy is enabled, Kerberos functionality is enabled. Kerberos accounts can be added either through the 'Configure Kerberos accounts' policy or through the Kerberos Accounts settings in the People settings page.
If this policy disabled or not set, the Kerberos Accounts settings are disabled. No Kerberos accounts can be added and Kerberos authentication cannot be used. All existing Kerberos accounts are deleted, all stored passwords are deleted.''',
},
{
'name': 'KerberosRememberPasswordEnabled',
'owners': ['file://chrome/browser/chromeos/kerberos/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'future': True,
'example_value': True,
'id': 558,
'caption': '''Enable 'Remember password' feature''',
'tags': ['website-sharing'],
'desc': '''Controls whether the 'Remember password' feature is enabled in the Kerberos authentication dialog. Passwords are stored encryped on disk, only accessible to the Kerberos system daemon and during a user session.
If this policy is enabled or not set, users can decide whether Kerberos passwords are remembered, so that they do not have to be entered again. Kerberos tickets are automatically fetched unless additional authentication is required (two-factor authentication).
If this policy is disabled, passwords are never remembered and all previously stored passwords are removed. Users have to enter their password every time they need to authenticate with the Kerberos system. Depending on server settings, this usually happens between every 8 hours to several months.''',
},
{
'name': 'KerberosAddAccountsAllowed',
'owners': ['file://chrome/browser/chromeos/kerberos/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:75-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'future': True,
'example_value': True,
'id': 559,
'caption': '''Users can add Kerberos accounts''',
'tags': ['website-sharing'],
'desc': '''Controls whether users may add Kerberos accounts.
If this policy is enabled or not set, users may add Kerberos accounts via the Kerberos Accounts settings in the People settings page. Users have full control over accounts they added and may modify or remove them.
If this policy is disabled, users may not add Kerberos accounts. Accounts can only be added via the 'Configure Kerberos accounts' policy. This is an effective way to lock down accounts.''',
},
{
'name': 'KerberosAccounts',
'owners': ['file://chrome/browser/chromeos/kerberos/OWNERS'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'principal': {
'description': '''User principal 'user@realm'. The placeholder <ph name="LOGIN_ID_PLACEHOLDER">${{LOGIN_ID}}</ph> is replaced by the username 'user'. The placeholder <ph name="LOGIN_EMAIL_PLACEHOLDER">${{LOGIN_EMAIL}}</ph> is replaced by the full principal 'user@realm'.''',
'type': 'string',
'pattern': '^(?:[^@]+@[^@]+)|(?:\\${LOGIN_ID})|(?:\\${LOGIN_EMAIL})$',
},
'password': {
'description': '''Kerberos password. The placeholder <ph name="PASSWORD_PLACEHOLDER">${{PASSWORD}}</ph> is replaced by the login password.''',
'type': 'string',
'sensitiveValue': True,
},
'remember_password': {
'description': '''Whether to remember the Kerberos password. If not set or set to false, the password is not remembered. Ignored if the password is not specified.''',
'type': 'boolean',
},
'krb5conf': {
'description': '''Kerberos configuration (one line per array item), see https://web.mit.edu/kerberos/krb5-1.12/doc/admin/conf_files/krb5_conf.html.''',
'type': 'array',
'items': {
'type': 'string',
},
},
},
'required': ['principal'],
},
},
'supported_on': ['chrome_os:75-'],
'supported_chrome_os_management': ['google_cloud'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'future': True,
'example_value': [
{
"principal":"${LOGIN_EMAIL}",
"password":"${PASSWORD}"
},
{
"principal":"user1@REALM.COM",
"remember_password": True
},
{
"principal":"user2@REALM.COM",
"password":"p4zzw0rd!",
"krb5conf":[
"[libdefaults]",
" default_tgs_enctypes = aes256-cts-hmac-sha1-96",
" default_tkt_enctypes = aes256-cts-hmac-sha1-96",
" permitted_enctypes = aes256-cts-hmac-sha1-96",
" default_realm = REALM.COM",
"",
"[realms]",
" REALM.COM = {",
" kdc = us-west.realm.com",
" master_kdc = us-west.realm.com",
" kpasswd_server = us-west.realm.com",
" }"
]
}
],
'id': 560,
'caption': '''Configure Kerberos accounts''',
'tags': ['website-sharing'],
'desc': '''Adds prefilled Kerberos accounts. If the Kerberos credentials match the login credentials, an account can be configured to reuse the login credentials by specifying '<ph name="LOGIN_EMAIL_PLACEHOLDER">${{LOGIN_EMAIL}}</ph>' and <ph name="PASSWORD_PLACEHOLDER">${{PASSWORD}}</ph>' for principal and password, respectively, so that the Kerberos ticket can be retrieved automatically unless two-factor authentication is configured. Users cannot modify accounts added via this policy.
If this policy is enabled, the list of accounts defined by the policy is added to the Kerberos Accounts settings.
If this policy is disabled or not set, no accounts are added to the Kerberos Accounts settings and all accounts previously added with this policy are removed. Users may still add accounts manually if the 'Users can add Kerberos accounts' policy is enabled.''',
},
{
'name': 'CommandLineFlagSecurityWarningsEnabled',
'owners': ['proberge@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:76-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 566,
'caption': '''Enable security warnings for command-line flags''',
'tags': ['system-security'],
'desc': '''If disabled, prevents security warnings from appearing when Chrome is launched with some potentially dangerous command-line flags.
If enabled or unset, security warnings are displayed when some command-line flags are used to launch Chrome.
This policy is available only on Windows instances that are joined to a <ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> domain. or Windows 10 Pro or Enterprise instances that enrolled for device management and macOS instances that are that are managed via MDM or joined to a domain via MCX.''',
},
{
'name': 'StartupBrowserWindowLaunchSuppressed',
'owners': ['jityao@chromium.org', 'hendrich@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:76-'],
'tags': [],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': True,
'id': 568,
'caption': '''Suppress launching of browser window''',
'desc': '''Setting the policy to True prevents the browser window from launching at the start of the session.
Setting the policy to False or leaving it unset allows the window to launch.
Note: The browser window might not launch due to other policies or command-line flags.''',
},
{
'id': 571,
'name': 'DevicePowerwashAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'device_only': True,
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'supported_on': ['chrome_os:77-'],
'caption': '''Allow the device to request powerwash''',
'tags': [],
'desc': '''
This policy when set to False, does not allow the device to trigger powerwash. An exception is if <ph name="TPM_FIRMWARE_UPDATE_SETTINGS_NAME">TPMFirmwareUpdateSettings</ph> policy is set to a value that allows the TPM firmware update and the TPM firmware was not updated yet.
When set to True, it allows the device to trigger powerwash.
If left unset, it defaults to True, meaning it allows the device to powerwash.
'''
},
{
'name': 'ExternalPrintServers',
'owners': ['file://chromeos/printing/OWNERS'],
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': {
'description': 'URL to a JSON file with a list of print servers.',
'type': 'string',
},
'hash': {
'description': 'The SHA-256 hash of the file.',
'type': 'string',
},
},
},
'id': 572,
'supported_on': ['chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': {
"url": "https://example.com/printserverpolicy",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeafdeadbeefdeadbeef"
},
'max_size': 1048576,
'caption': '''External print servers''',
'tags': [],
'desc': '''Provides configurations of available print servers.
This policy allows you to provide configuration of external print servers to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices as JSON file.
The size of the file must not exceed 1MB and must contain an array of records (JSON objects). Each record must contain fields "id", "url" and "display_name" with strings as values. Values of "id" fields must be unique.
The file is downloaded and cached. The cryptographic hash is used to verify the integrity of the download. The file will be re-downloaded whenever the URL or the hash changes.
When this policy is set to correct value, devices will try to query specified print servers for available printers using IPP protocol.
If this policy is unset or set to incorrect value, none of the provided server printers are visible to users.
Currently, the number of print servers is limited to 16. Only the first 16 print servers from the list will be queried.
''',
},
{
'name': 'DeviceExternalPrintServers',
'owners': ['mattme@google.com', 'file://chromeos/printing/OWNERS'],
'type': 'external',
'schema': {
'type': 'object',
'properties': {
'url': {
'description': 'URL to a JSON file with a list of print servers.',
'type': 'string',
},
'hash': {
'description': 'The SHA-256 hash of the file.',
'type': 'string',
},
},
},
'id': 730,
'future_on': ['chrome_os'],
# TODO(https://crbug.com/1100777): Remove |future|.
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
"url": "https://example.com/printserverpolicy",
"hash": "deadbeefdeadbeefdeadbeefdeadbeefdeafdeadbeefdeadbeef"
},
'max_size': 1048576,
'caption': '''External print servers''',
'tags': [],
'desc': '''Provides configurations of available print servers.
This policy allows you to provide configuration of external print servers to <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> devices as JSON file.
The size of the file must not exceed 1MB and must contain an array of records (JSON objects). Each record must contain fields "id", "url" and "display_name" with strings as values. Values of "id" fields must be unique.
The file is downloaded and cached. The cryptographic hash is used to verify the integrity of the download. The file will be re-downloaded whenever the URL or the hash changes.
When this policy is set to correct value, devices will try to query specified print servers for available printers using IPP protocol.
If this policy is unset or set to incorrect value, none of the provided server printers are visible to users.
Currently, the number of print servers is limited to 16. Only the first 16 print servers from the list will be queried.
This policy is similar to <ph name="EXTERNAL_PRINT_SERVERS_POLICY">ExternalPrintServers</ph>, except this policy is applied by device.
''',
},
{
'name': 'VmManagementCliAllowed',
'owners': ['aoldemeier@chromium.org', 'okalitova@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:77-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 577,
'caption': '''Specify VM CLI permission''',
'tags': [],
'desc': '''Instructs <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> to enable or disable virtual machine management console tools.
If the policy is set to true or left unset, the user will be able to use VM management CLI.
Otherwise, all of VM management CLI is disabled and hidden.
''',
},
{
'name': 'CACertificateManagementAllowed',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2 ],
},
'items': [
{
'name': 'All',
'value': 0,
'caption': '''Allow users to manage all certificates''',
},
{
'name': 'UserOnly',
'value': 1,
'caption': '''Allow users to manage user certificates''',
},
{
'name': 'None',
'value': 2,
'caption': '''Disallow users from managing certificates''',
},
],
'supported_on': ['chrome_os:78-'],
'tags': [],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': 1,
'id': 579,
'caption': '''Allow users to manage installed CA certificates.''',
'desc': '''This policy controls whether user are able to import and remove CA certificates via Certificate Manager.
If this policy is set to ''Allow users to manage all certificates'' or left not set, users will be able to edit trust settings for all CA certificates, remove user-imported certificates and import certificates.
If this policy is set to ''Allow users to manage user certificates'', users will be able to manage only user-imported certificates and will not be able to change trust settings of built-in certificates.
If this policy is set to ''Disallow users to manage certificates'', users will not be able to manage CA certificates, they can only view CA certificates.''',
},
{
'id': 581,
'name': 'LockScreenMediaPlaybackEnabled',
'owners': ['file://services/media_session/OWNERS'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome_os:78-'],
'caption': '''Allows users to play media when the device is locked''',
'tags': [],
'desc': '''This policy controls whether users are able to play media when the device is locked.
If this policy is set to False, then media controls on the lock screen are disabled.
If this policy is set to True or not set, then media controls will be displayed on the lock screen if the user locks the device when media is playing.
'''
},
{
'id': 583,
'name': 'SendFilesForMalwareCheck',
'type': 'int-enum',
'owners': ['drubery@chromium.org', 'chrome-safebrowsing-team@chromium.org'],
'schema': {
'type': 'integer',
'enum': [0, 2, 3, 4],
},
'items': [
{
'name': 'DoNotScan',
'value': 0,
'caption': '''Do not scan files'''
},
{
'name': 'SendDownloads',
'value': 2,
'caption': '''Send user downloads for scanning'''
},
{
'name': 'SendUploads',
'value': 3,
'caption': '''Send user uploads for scanning'''
},
{
'name': 'SendUploadsAndDownloads',
'value': 4,
'caption': '''Send user uploads and downloads for scanning'''
},
],
'supported_on': ['chrome.*:78-', 'chrome_os:78-'],
'future': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
'cloud_only': True,
},
'example_value': 2,
'caption': '''Scan users downloads with Safe Browsing''',
'tags': ['google-sharing', 'admin-sharing'],
'desc': '''This policy controls the deep scanning of user downloads with Safe Browsing. If unset, or set to the default, 'Do not scan files', user downloads will not be scanned by Safe Browsing.
If set to 'Send user downloads for scanning', users downloads will be sent over the network to Safe Browsing for malware scanning.
If set to 'Send user uploads for scanning', users uploads will be sent over the network to Safe Browsing for malware scanning.
If set to 'Send user uploads and downloads for scanning', behaves according to the rules described under 'Send user uploads for scanning' and 'Send user downloads for scanning'.
See the <ph name="DELAY_DELIVER_UNTIL_VERDICT_POLICY_NAME">DelayDeliveryUntilVerdict</ph> and <ph name="UNSAFE_EVENTS_REPORTING_ENABLED">UnsafeEventsReportingEnabled</ph> policies for details of how the results of scanning are displayed to the user and admin.'''
},
{
'name': 'UnsafeEventsReportingEnabled',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 585,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''Allows Chrome to report unsafe events to Google''',
'tags': [],
'desc': '''When this policy is set to enabled, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> reports unsafe events such as password reuse, malware downloads, interstitials, sensitive data protection rule violations etc. to Google for analysis. Some unsafe events such as sensitive data protection rule violations depend on other policies that enable such checks.
If this policy is set to disabled or not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not report unsafe events.
'''
},
{
'name': 'BlockLargeFileTransfer',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Don't block large files''',
},
{
'name': 'Block-large-downloads',
'value': 1,
'caption': '''Block large file downloads''',
},
{
'name': 'Block-large-uploads',
'value': 2,
'caption': '''Block large file uploads''',
},
{
'name': 'Block-large-uploads-and-downloads',
'value': 3,
'caption': '''Block large file uploads and downloads''',
},
],
'example_value': 0,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 586,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''Prevent user to transfer large files''',
'tags': [],
'desc': '''This policy controls how <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves when a user attempts to either upload or download files that are too large to send for either malware or sensitive data protection scanning (50MB or larger). This restriction only applies to files that would need scanning as determined by <ph name="SEND_FILES_FOR_MALWARE_CHECK_POLICY_NAME">SendFilesForMalwareCheck</ph>, <ph name="CHECK_CONTENT_COMPLIANCE_POLICY_NAME">CheckContentCompliance</ph> and the policies that control the list of domains for which checks are enabled.
If this policy is not set or set to 'None', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows the user to upload or download files of any size.
If this policy is set to 'Block large downloads', files that are too large to be scanned are deleted beforing making them available to the user. Because the size cannot always be determined before downloading, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> may download files and then determine that they surpass the allowed size limit.
If this policy is set to 'Block large uploads', files that are too large to be scanned cannot be selected for upload.
If this policy is set to 'Block large file uploads and downloads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves according to the rules described under 'Block large downloads' and 'Block large uploads'.
'''
},
{
'name': 'DelayDeliveryUntilVerdict',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Don't delay any deliveries''',
},
{
'name': 'Delay-downloads',
'value': 1,
'caption': '''Delay downloads until scan verdict is known''',
},
{
'name': 'Delay-uploads',
'value': 2,
'caption': '''Delay uploads until scan verdict is known''',
},
{
'name': 'Delay-uploads-and-downloads',
'value': 3,
'caption': '''Delay both uploads and downloads until scan verdict is known''',
},
],
'example_value': 0,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 587,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''Delay delivery of files until scanning verdicts are known''',
'tags': [],
'desc': '''Controls how <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves with uploaded and downloaded data that is deemed to require scanning. Delaying delivery means that <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not permit the user to access a downloaded file, select a file for uploading, paste from the clipboard, or drag and drop data until it has been scanned and the verdict of that scan is known. This restriction only applies to files or data that would need scanning as determined by <ph name="SEND_FILES_FOR_MALWARE_CHECK_POLICY_NAME">SendFilesForMalwareCheck</ph>, <ph name="CHECK_CONTENT_COMPLIANCE_POLICY_NAME">CheckContentCompliance</ph> and the policies that control the list of domains for which checks are enabled.
If this policy is not set or set to 'None', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not delay any files for uploading, paste from the clipboard, drag and drop data or delay access to any downloaded files. The scan will proceed in the background.
If this policy is set to 'Delay downloads', users will not be able to access downloaded files until they have been scanned and the verdict of scan is known.
If this policy is set to 'Delay uploads' and the user attempts to upload a file, paste from the clipboard, or drag and drop data the operation will not proceed until the data has been scanned and the verdict of scan is known.
If this policy is set to 'Delay both uploads and downloads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves according to the rules described under 'Delay downloads' and 'Delay uploads'.
'''
},
{
'name': 'AllowPasswordProtectedFiles',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Don't allow password protected files''',
},
{
'name': 'Allow-downloads',
'value': 1,
'caption': '''Allow downloads of password protected files''',
},
{
'name': 'Allow-uploads',
'value': 2,
'caption': '''Allow uploads of password protected files''',
},
{
'name': 'Allow-uploads-and-downloads',
'value': 3,
'caption': '''Allow both uploads and downloads of password protected files''',
},
],
'example_value': 0,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 588,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''Allow users to upload or download password protected files''',
'tags': [],
'desc': '''Controls whether users are allowed to upload or download password protected files when scanning is required. This restriction only applies to files that would need scanning as determined by <ph name="SEND_FILES_FOR_MALWARE_CHECK_POLICY_NAME">SendFilesForMalwareCheck</ph>, <ph name="CHECK_CONTENT_COMPLIANCE_POLICY_NAME">CheckContentCompliance</ph> and the policies that control the list of domains for which checks are enabled.
If this policy is set to 'None', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> blocks the user from upload or download password protected files.
If this policy is set to 'Allow downloads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows the user to download password protected files.
If this policy is set to 'Allow uploads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows the user to upload password protected files.
If this policy is not set or set to 'Allow uploads and downloads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves according to the rules described under 'Allow downloads' and 'Allow uploads'.
'''
},
{
'name': 'BlockUnsupportedFiletypes',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'Block-unsupported-filetypes-none',
'value': 0,
'caption': '''Do not block unsupported filetypes''',
},
{
'name': 'Block-unsupported-filetypes-downloads',
'value': 1,
'caption': '''Block download of unsupported filetypes''',
},
{
'name': 'Block-unsupported-filetypes-uploads',
'value': 2,
'caption': '''Block upload of unsupported filetypes''',
},
{
'name': 'Block-unsupported-filetypes-uploads-and-downloads',
'value': 3,
'caption': '''Block uploads and downloads of unsupported filetypes''',
},
],
'example_value': 0,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 668,
'supported_on': ['chrome.*:81-', 'chrome_os:81-'],
'future': True,
'caption': '''Block users from uploading or downloading files that are presently unsupported for a DLP or malware scan.''',
'tags': [],
'desc': '''Controls how <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> handles data that is uploaded, downloaded, pasted from the clipboard, or dragged and dropped that have unsupported filetypes regarding DLP or malware scan.
If this policy is not set or set to 'Block unsupported filetypes none' (0), <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> allows upload or download for data with unsupported filetypes regarding DLP or malware scan.
If this policy is set to 'Block unsupported filetypes downloads' (1) and the user attempts to download a file from a URL in the <ph name="DOMAINS_TO_CHECK_COMPLIANCE_OF_DOWNLOADED_CONTENT_POLICTY_NAME">URLsToCheckComplianceOfDownloadedContent</ph> policy and has unsupported filetypes regarding DLP or malware scan, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will block the data downloaded.
If this policy is set to 'Block unsupported filetypes uploads' (2) and the user attempts to upload a file to a domain not in the <ph name="DOMAINS_TO_NOT_CHECK_COMPLIANCE_OF_UPLOADED_CONTENT_POLICY_NAME">URLsToNotCheckComplianceOfUploadedContent</ph> and the file has unsupported filetype regarding DLP or malware scan, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will block the file uploaded, data pasted from the clipboard, or data dragged and dropped.
If this policy is set to 'Block unsupported filetypes uploads and downloads' (3), <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves according to the rules described under 'Block unsupported filetypes uploads' and 'Block unsupported filetypes downloads'.
'''
},
{
'name': 'CheckContentCompliance',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1, 2, 3 ],
},
'items': [
{
'name': 'None',
'value': 0,
'caption': '''Don't check for sensitive data protection rule violations''',
},
{
'name': 'Check-downloads',
'value': 1,
'caption': '''Check sensitive data protection rule violations for downloads''',
},
{
'name': 'Check-uploads',
'value': 2,
'caption': '''Check sensitive data protection rule violations for uploads''',
},
{
'name': 'Check-uploads-and-downloads',
'value': 3,
'caption': '''Check sensitive data protection rule violations for uploads and downloads''',
},
],
'example_value': 0,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 589,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''Send files for sensitive data protection rule violation inspection''',
'tags': [],
'desc': '''Controls how <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> checks data that is uploaded, downloaded, pasted from the clipboard, or dragged and dropped for sensitive data protection rule violations.
If this policy is not set or set to 'None', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not check any data for sensitive data protection rule violations.
If this policy is set to 'Check downloads' and the user attempts to download a file from a URL in the <ph name="DOMAINS_TO_CHECK_COMPLIANCE_OF_DOWNLOADED_CONTENT_POLICTY_NAME">URLsToCheckComplianceOfDownloadedContent</ph> policy, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will check the data downloaded for compiance with enterprise rules.
If this policy is set to 'Check uploads' and the user attempts to upload a file to a domain not in the <ph name="DOMAINS_TO_NOT_CHECK_COMPLIANCE_OF_UPLOADED_CONTENT_POLICY_NAME">URLsToNotCheckComplianceOfUploadedContent</ph>, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will check the file uploaded, data pasted from the clipboard, or data dragged and dropped for compiance with enterprise rules.
If this policy is set to 'Check uploads and downloads', <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> behaves according to the rules described under 'Check downloads' and 'Check uploads'.
'''
},
{
'name': 'URLsToCheckComplianceOfDownloadedContent',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ['my-awesome-domain.com', 'https://ssl.server.com', 'hosting.com/bad_path', 'https://server:8080/path', '.exact.hostname.com', 'file://*', 'custom_scheme:*', '*'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 590,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''URL patterns to check downloaded content against sensitive data protection rules''',
'tags': [],
'desc': '''List of url patterns for which downloaded content needs to be checked for sensitive data protection rule violations before being saved on local storage. This policy is used only if <ph name="CHECK_CONTENT_COMPLIANCE_POLICY_NAME">CheckContentCompliance</ph> is set to enabled.
If this policy is not set or set to an empty list of url patterns, no downloaded content is checked for sensitive data protection rule violations.
The URL patterns have the same format as the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy, which is documented at https://www.chromium.org/administrators/url-blacklist-filter-format.
'''
},
{
'name': 'URLsToNotCheckComplianceOfUploadedContent',
'owners': ['rogerta@chromium.org', 'mad@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ['my-awesome-domain.com', 'https://ssl.server.com', 'hosting.com/bad_path', 'https://server:8080/path', '.exact.hostname.com', 'file://*', 'custom_scheme:*', '*'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 591,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''URL patterns to not check uploaded content against sensitive data protection rules''',
'tags': [],
'desc': '''List of url patterns for which uploaded files, data pasted from the clipboard, or data dragged and dropped does not need to be checked for sensitive data protection rule violations. This policy is used only if <ph name="CHECK_CONTENT_COMPLIANCE_POLICY_NAME">CheckContentCompliance</ph> is set to enabled.
If this policy is not set or set to an empty list of url patterns, all content is checked for sensitive data protection rule violations.
The URL patterns have the same format as the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy, which is documented at https://www.chromium.org/administrators/url-blacklist-filter-format.
'''
},
{
'name': 'OnFileDownloadedEnterpriseConnector',
'owners': ['drubery@chromium.org', 'rogerta@chromium.org', 'mad@chromium.org', 'domfc@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'service_provider': { 'type': 'string' },
'enable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
}
},
'disable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
},
},
'block_until_verdict': { 'type': 'integer' },
'block_password_protected': { 'type': 'boolean' },
'block_large_files': { 'type': 'boolean' },
},
},
},
'example_value': [{
'service_provider': 'Google',
'enable': [
{
'url_list': ['*'],
'tags': ['malware']
},
{
'url_list': ['*.them.com', '*.others.com'],
'tags': ['dlp']
},
],
'disable': [
{
'url_list': ['*.us.com'],
'tags': ['malware']
},
],
'block_until_verdict': 1,
'block_password_protected': False,
'block_large_files': True,
}],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 696,
'supported_on': ['chrome.*:84-', 'chrome_os:84-'],
'future': True,
'caption': '''Configuration policy for the OnFileDownloaded Chrome Enterprise Connector''',
'tags': [],
'desc': '''List of Chrome Enterprise Connectors services settings to be applied to the <ph name="ON_FILE_DOWNLOADED_ENTERPRISE_CONNECTOR">OnFileDownloaded</ph> Enterprise Connector, which triggers when a file is downloaded in Chrome.
The <ph name="ENTERPRISE_CONNECTOR_URL_LIST_FIELD">url_list</ph>, <ph name="ENTERPRISE_CONNECTOR_TAGS_FIELD">tags</ph>, <ph name="ENTERPRISE_CONNECTOR_ENABLE_FIELD">enable</ph> and <ph name="ENTERPRISE_CONNECTOR_DISABLE_FIELD">disable</ph> fields are used to determine if the connector should send a file for analysis when it is downloaded from a specific page and what tags to include in the analysis request for that file. A tag corresponding to an 'enable' pattern will be included in the analysis request if the page URL matches a pattern associated to that tag as long as no 'disable' pattern with that same tag matches the page URL. The analysis occurs if at least 1 tag is to be included in the request.
The <ph name="ENTERPRISE_CONNECTOR_SERVICE_PROVIDER_FIELD">service_provider</ph> field identifies which analysis service provider the settings correspond to.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_UNTIL_VERDICT_FIELD">block_until_verdict</ph> field being set to 1 means Chrome will wait to get a response from the analysis service before giving the user access to the downloaded file. Any other integer value means Chrome gives the user access to the file immediately.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_PASSWORD_PROTECTED_FIELD">block_password_protected</ph> field controls whether Chrome blocks or allows files that are password protected.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_LARGE_FILES_FIELD">block_large_files</ph> fields controls whether Chrome blocks or allows files that are too large to be analyzed (50+ MB).
This policy can only be set from the Google Admin console.'''
},
{
'name': 'OnFileAttachedEnterpriseConnector',
'owners': ['rogerta@chromium.org', 'mad@chromium.org', 'domfc@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'service_provider': { 'type': 'string' },
'enable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
}
},
'disable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
},
},
'block_until_verdict': { 'type': 'integer' },
'block_password_protected': { 'type': 'boolean' },
'block_large_files': { 'type': 'boolean' },
},
},
},
'example_value': [{
'service_provider': 'Google',
'enable': [
{
'url_list': ['*'],
'tags': ['malware']
},
{
'url_list': ['*.them.com', '*.others.com'],
'tags': ['dlp']
},
],
'disable': [
{
'url_list': ['*.us.com'],
'tags': ['malware']
},
],
'block_until_verdict': 0,
'block_password_protected': True,
'block_large_files': False,
}],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 693,
'supported_on': ['chrome.*:84-', 'chrome_os:84-'],
'future': True,
'caption': '''Configuration policy for the OnFileAttached Chrome Enterprise Connector''',
'tags': [],
'desc': '''List of Chrome Enterprise Connectors services settings to be applied to the <ph name="ON_FILE_ATTACHED_ENTERPRISE_CONNECTOR">OnFileAttached</ph> Enterprise Connector, which triggers when a file is attached to Chrome.
The <ph name="ENTERPRISE_CONNECTOR_URL_LIST_FIELD">url_list</ph>, <ph name="ENTERPRISE_CONNECTOR_TAGS_FIELD">tags</ph>, <ph name="ENTERPRISE_CONNECTOR_ENABLE_FIELD">enable</ph> and <ph name="ENTERPRISE_CONNECTOR_DISABLE_FIELD">disable</ph> fields are used to determine if the connector should send a file for analysis when it is attached to a specific page and what tags to include in the analysis request for that file. A tag corresponding to an 'enable' pattern will be included in the analysis request if the page URL matches a pattern associated to that tag as long as no 'disable' pattern with that same tag matches the page URL. The analysis occurs if at least 1 tag is to be included in the request.
The <ph name="ENTERPRISE_CONNECTOR_SERVICE_PROVIDER_FIELD">service_provider</ph> field identifies which analysis service provider the settings correspond to.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_UNTIL_VERDICT_FIELD">block_until_verdict</ph> field being set to 1 means Chrome will wait to get a response from the analysis service before giving the page access to the file. Any other integer value means Chrome gives the page access to the file immediately.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_PASSWORD_PROTECTED_FIELD">block_password_protected</ph> field controls whether Chrome blocks or allows files that are password protected.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_LARGE_FILES_FIELD">block_large_files</ph> fields controls whether Chrome blocks or allows files that are too large to be analyzed (50+ MB).
This policy can only be set from the Google Admin console.'''
},
{
'name': 'OnBulkDataEntryEnterpriseConnector',
'owners': ['rogerta@chromium.org', 'mad@chromium.org', 'domfc@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'service_provider': { 'type': 'string' },
'enable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
}
},
'disable': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': { 'type': 'string' },
},
'tags': {
'type': 'array',
'items': { 'type': 'string' },
}
},
},
},
'block_until_verdict': { 'type': 'integer' },
'minimum_data_size': { 'type': 'integer', 'minimum': 0 },
},
},
},
'example_value': [{
'service_provider': 'Google',
'enable': [
{
'url_list': ['*'],
'tags': ['malware']
},
{
'url_list': ['*.them.com', '*.others.com'],
'tags': ['dlp']
},
],
'disable': [
{
'url_list': ['*.us.com'],
'tags': ['malware']
},
],
'block_until_verdict': 0,
'minimum_data_size': 100,
}],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'id': 697,
'supported_on': ['chrome.*:84-', 'chrome_os:84-'],
'future': True,
'caption': '''Configuration policy for the OnBulkDataEntry Chrome Enterprise Connector''',
'tags': [],
'desc': '''List of Chrome Enterprise Connectors services settings to be applied to the <ph name="ON_BULK_DATA_ENTRY_ENTERPRISE_CONNECTOR">OnBulkDataEntry</ph> Enterprise Connector, which triggers when data is entered in Chrome from the clipboard or by drag and dropping web content.
The <ph name="ENTERPRISE_CONNECTOR_URL_LIST_FIELD">url_list</ph>, <ph name="ENTERPRISE_CONNECTOR_TAGS_FIELD">tags</ph>, <ph name="ENTERPRISE_CONNECTOR_ENABLE_FIELD">enable</ph> and <ph name="ENTERPRISE_CONNECTOR_DISABLE_FIELD">disable</ph> fields are used to determine if the connector should send data for analysis when it is entered in a specific page and what tags to include in the analysis request for that data. A tag corresponding to an 'enable' pattern will be included in the analysis request if the page URL matches a pattern associated to that tag as long as no 'disable' pattern with that same tag matches the page URL. The analysis occurs if at least 1 tag is to be included in the request.
The <ph name="ENTERPRISE_CONNECTOR_SERVICE_PROVIDER_FIELD">service_provider</ph> field identifies which analysis service provider the settings correspond to.
The <ph name="ENTERPRISE_CONNECTOR_BLOCK_UNTIL_VERDICT_FIELD">block_until_verdict</ph> field being set to 1 means Chrome will wait to get a response from the analysis service before giving the page access to the data. Any other integer value means Chrome gives the page access to the data immediately.
The <ph name="ENTERPRISE_CONNECTOR_MINIMUM_DATA_SIZE">minimum_data_size</ph> field indicates the minimum size (in bytes) data entered in Chrome must equal or surpass to be scanned. The default value is 100 bytes if the field is unset.
This policy can only be set from the Google Admin console.'''
},
{
'name': 'OnSecurityEventEnterpriseConnector',
'owners': ['rogerta@chromium.org', 'mad@chromium.org', 'domfc@chromium.org'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'service_provider': { 'type': 'string' },
},
},
},
'example_value': [{
'service_provider': 'Google',
}],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'id': 699,
'supported_on': ['chrome.*:84-', 'chrome_os:84-'],
'future': True,
'caption': '''Configuration policy for the OnSecurityEvent Chrome Enterprise Connector''',
'tags': [],
'desc': '''List of Chrome Enterprise Connectors services settings to be applied to the <ph name="ON_SECURITY_EVENT_ENTERPRISE_CONNECTOR">OnSecurityEvent</ph> Enterprise Connector, which triggers when a security event occurs in Chrome. This includes negative verdicts from analysis Enterprise Connectors, password reuse, navigations to unsafe pages and other security sensitive user actions.
The <ph name="ENTERPRISE_CONNECTOR_SERVICE_PROVIDER_FIELD">service_provider</ph> field identifies which reporting service provider the settings correspond to.
This policy can only be set from the Google Admin console.'''
},
{
'name': 'EnterpriseRealTimeUrlCheckMode',
'owners': ['xinghuilu@chromium.org', 'file://components/safe_browsing/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'Disabled',
'value': 0,
'caption': '''Real time URL check is disabled.''',
},
{
'name': 'Enabled',
'value': 1,
'caption': '''Real time check for main frame URLs is enabled.''',
},
],
'supported_on': [
'chrome.*:86-',
'chrome_os:86-'
],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 728,
'caption': '''Check Safe Browsing status of URLs in real time''',
'tags': [],
'desc': '''This policy controls checking URLs in real time to identify unsafe URLs.
If this policy is left not set or set to Disabled’, the consumer Safe Browsing checks will be applied. Consumer Safe Browsing checks can still include real time lookups, depending on the value of the Make searches and browsing better setting and the value of the UrlKeyedAnonymizedDataCollectionEnabled policy.
If this policy is set to Enabled’, URLs will be sent to be scanned in real time under enterprise ToS. It will result in Chrome sending URLs to Google Cloud or third parties of your choosing to check them in real time. The consumer version of Safe Browsing real time lookup will be switched off.
This policy can only be set from the Google Admin console.''',
},
{
'name': 'RendererCodeIntegrityEnabled',
'owners': ['wfh@chromium.org', 'adetaylor@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:78-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': False,
'id': 598,
'caption': '''Enable Renderer Code Integrity''',
'tags': ['system-security'],
'desc': '''If this policy is enabled or left unset, then Renderer Code Integrity is enabled. This should only be disabled if compatibility issues are encountered with third party software that must run inside Chrome's renderer processes.
Disabling this policy has a detrimental effect on Chrome's security and stability as unknown and potentially hostile code will be allowed to load inside Chrome's renderer processes. See https://chromium.googlesource.com/chromium/src/+/master/docs/design/sandbox.md#Process-mitigation-policies for more info.''',
},
{
# TODO(rogerta): Use a custom policy handler to show in chrome://policy that this policy depends on the state of SendFilesForMalwareCheck.
'name': 'URLsToCheckForMalwareOfUploadedContent',
'owners': ['rogerta@chromium.org', 'drubery@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ['my-awesome-domain.com', 'https://ssl.server.com', 'hosting.com/bad_path', 'https://server:8080/path', '.exact.hostname.com', 'file://*', 'custom_scheme:*', '*'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 600,
'supported_on': ['chrome.*:78-', 'chrome_os:81-'],
'future': True,
'caption': '''URL patterns to check uploaded content for malware''',
'tags': [],
'desc': '''List of url patterns for which uploaded content needs to be checked for malware. This policy is used only if <ph name="SEND_FILES_FOR_MALWARE_CHECK_POLICY_NAME">SendFilesForMalwareCheck</ph> is set to a value allowing or enforcing malware checks for uploads.
If this policy is not set or set to an empty list of url patterns, no uploaded content is checked for malware.
The URL patterns have the same format as the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy, which is documented at https://www.chromium.org/administrators/url-blacklist-filter-format.
'''
},
{
# TODO(rogerta): Use a custom policy handler to show in chrome://policy that this policy depends on the state of SendFilesForMalwareCheck.
'name': 'URLsToNotCheckForMalwareOfDownloadedContent',
'owners': ['rogerta@chromium.org', 'drubery@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ['my-awesome-domain.com', 'https://ssl.server.com', 'hosting.com/bad_path', 'https://server:8080/path', '.exact.hostname.com', 'file://*', 'custom_scheme:*', '*'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
'cloud_only': True,
},
'id': 669,
'supported_on': ['chrome.*:81-', 'chrome_os:81-'],
'future': True,
'caption': '''URL patterns to not check downloaded content for malware''',
'tags': [],
'desc': '''List of url patterns for which downloaded content does not need to be checked for malware. This policy is used only if <ph name="SEND_FILES_FOR_MALWARE_CHECK_POLICY_NAME">SendFilesForMalwareCheck</ph> is set to a value allowing or enforcing malware checks for downloads.
If this policy is not set or set to an empty list of url patterns, all downloaded content is checked for malware.
The URL patterns have the same format as the '<ph name="URL_BLOCKLIST_POLICY_NAME">URLBlocklist</ph>' policy, which is documented at https://www.chromium.org/administrators/url-blacklist-filter-format.
'''
},
{
'name': 'HSTSPolicyBypassList',
'owners': ['nharper@chromium.org', 'rsleevi@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'pattern': '^[a-z0-9-]*$',
},
},
'supported_on': ['chrome.*:78-','android:78-','chrome_os:78-'],
'features': {
'per_profile': True,
'dynamic_refresh': False,
},
'example_value': ['meet'],
'id': 601,
'caption': '''List of names that will bypass the HSTS policy check''',
'tags': ['system-security'],
'desc': '''Hostnames specified in this list will be exempt from the HSTS policy check that could potentially upgrade requests from http to https. Only single-label hostnames are allowed in this policy. Hostnames must be canonicalized: any IDNs must be converted to their A-label format, and all ASCII letters must be lowercase. This policy only applies to the specific hostnames specified; it does not apply to subdomains of the names specified.''',
},
{
'name': 'AllowSyncXHRInPageDismissal',
'owners': ['kdillon@chromium.org, panicker@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:78-', 'chrome_os:78-', 'android:78-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'default_for_enterprise_users': True,
'example_value': False,
'id': 604,
'caption': '''Allows a page to perform synchronous XHR requests during page dismissal.''',
'tags': [],
'desc': '''This policy allows an admin to specify that a page may send synchronous XHR requests during page dismissal.
When the policy is set to enabled, pages are allowed to send synchronous XHR requests during page dismissal.
When the policy is set to disabled or not set, pages are not allowed to send synchronous XHR requests during page dismissal.
This policy will be removed in Chrome 88.
See https://www.chromestatus.com/feature/4664843055398912 .''',
},
{
'name': 'TotalMemoryLimitMb',
'owners': ['catan-team@chromium.org'],
'type': 'int',
'schema': {
'type': 'integer',
'minimum': 1024,
},
'supported_on': ['chrome.win:79-', 'chrome.mac:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 2048,
'id': 616,
'caption': '''Set limit on megabytes of memory a single Chrome instance can use.''',
'tags': [],
'desc': '''Configures the amount of memory that a single <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> instance can use before tabs start being discarded (I.E. the memory used by the tab will be freed and the tab will have to be reloaded when switched to) to save memory.
If the policy is set, browser will begin to discard tabs to save memory once the limitation is exceeded. However, there is no guarantee that the browser is always running under the limit. Any value under 1024 will be rounded up to 1024.
If this policy is not set, the browser will only begin attempts to save memory once it has detected that the amount of physical memory on its machine is low.''',
'label': '''Set memory limit for Chrome instances''',
},
{
# TODO(https://crbug.com/1012400): Remove this policy in M86.
'id': 626,
'name': 'TLS13HardeningForLocalAnchorsEnabled',
'owners': ['file://net/ssl/OWNERS'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'example_value': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'supported_on': ['chrome.*:79-', 'chrome_os:79-', 'android:79-'],
'caption': '''Enable a TLS 1.3 security feature for local trust anchors.''',
'tags': ['system-security'],
'desc': '''This policy controls a security feature in TLS 1.3 which protects connections against downgrade attacks. It is backwards-compatible and will not affect connections to compliant TLS 1.2 servers or proxies. However, older versions of some TLS-intercepting proxies have an implementation flaw which causes them to be incompatible.
If this policy is set to True or not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will enable these security protections for all connections.
If this policy is set to False, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will disable these security protections for connections authenticated with locally-installed CA certificates. These protections are always enabled for connections authenticated with publicly-trusted CA certificates.
The default value for this policy was changed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 81 from false to true. Affected proxies are expected to fail connections with an error code of ERR_TLS13_DOWNGRADE_DETECTED. Administrators who need more time to upgrade affected proxies may use this policy to temporarily disable this security feature. This policy will be removed after version 85.
'''
},
{
'name': 'AudioSandboxEnabled',
'owners': ['services/audio/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.win:79-', 'chrome.linux:79-', 'chrome.mac:79-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': True,
'id': 627,
'caption': '''Allow the audio sandbox to run''',
'tags': ['system-security'],
'desc': '''This policy controls the audio process sandbox.
If this policy is enabled, the audio process will run sandboxed.
If this policy is disabled, the audio process will run unsandboxed and the WebRTC audio-processing module will run in the renderer process.
This leaves users open to security risks related to running the audio subsystem unsandboxed.
If this policy is not set, the default configuration for the audio sandbox will be used, which may differ per platform.
This policy is intended to give enterprises flexibility to disable the audio sandbox if they use security software setups that interfere with the sandbox.'''
},
{
'name': 'CorsMitigationList',
'owners': ['toyoshim@chromium.org', 'yhirano@chromium.org', 'kinuko@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': ['x-googapps-allowed-domains', 'youtube-restrict'],
'id': 629,
'caption': '''Enable <ph name="CORS">CORS</ph> check mitigations in the new <ph name="CORS">CORS</ph> implementation''',
'tags': [],
'desc': '''Enable <ph name="CORS">CORS</ph> check mitigations in the new <ph name="CORS">CORS</ph> implementation, allowing Extensions to keep compatible behavior, and allowing <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> to send specified headers without <ph name="CORS">CORS</ph> checks.
If this list is set to empty, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> tries to run Extensions in compatible manners, and does not introduce <ph name="API">API</ph> changes for <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 79 as explained at <ph name="WEB_REQUEST_API_MANUAL">https://developer.chrome.com/extensions/webRequest</ph>.
If this list is set to have <ph name="HTTP">HTTP</ph> request header names, <ph name="CORS">CORS</ph> inspection will ignore the listed headers in addition to enable the mitigation for Extensions.
If this list is not set, both mitigations explained above are not applied.
For details on <ph name="CORS">CORS</ph>, visit: <ph name="CORS_HELP_URL">https://www.chromestatus.com/feature/5768642492891136</ph>.
Note that this policy was announced to be removed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 82, but the plan was changed to be removed in version 84.'''
},
{
'name': 'CorsLegacyModeEnabled',
'owners': ['toyoshim@chromium.org', 'yhirano@chromium.org', 'kinuko@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'deprecated': True,
'example_value': False,
'id': 630,
'caption': '''Use the legacy <ph name="CORS">CORS</ph> implementation rather than new <ph name="CORS">CORS</ph>''',
'tags': [],
'desc': '''Use the legacy <ph name="CORS">CORS</ph> implementation rather than new <ph name="CORS">CORS</ph>.
If this setting is set to True, the legacy implementation is used that should be compatible with previous versions.
If this setting is set to False, or is not set, the new implementation is used that might cause enterprise specific compatibility issues potentially.
This policy will be removed after a couple of milestones.
For details on <ph name="CORS">CORS</ph>, visit: <ph name="CORS_HELP_URL">https://www.chromestatus.com/feature/5768642492891136</ph>.
Note that this policy was announced to be removed in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 82, but the plan was changed to be removed in version 84.'''
},
{
'name': 'ExternalPrintServersWhitelist',
'owners': ['file://chromeos/printing/OWNERS'],
'supported_on': ['chrome_os:79-'],
'id': 631,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Enabled external print servers''',
'tags': [],
'desc': '''Specifies the subset of print servers that will be queried for server printers.
If this policy is used, only the server printers with ids matching the values in this policy are available to the user.
The ids must correspond to the "id" field in the file specified in <ph name="EXTERNAL_PRINT_SERVERS_POLICY">ExternalPrintServers</ph>.
If this policy is not set, filtering is omitted and all print servers are taken into account.'''
},
{
'name': 'DeviceExternalPrintServersAllowlist',
'owners': ['mattme@google.com', 'file://chromeos/printing/OWNERS'],
'future_on': ['chrome_os'],
# TODO(https://crbug.com/1100777): Remove |future|.
'id': 731,
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'example_value': ["id1", "id2", "id3"],
'caption': '''Enabled external print servers''',
'tags': [],
'desc': '''Specifies the subset of print servers that will be queried for server printers. This applies only to the <ph name="DEVICE_EXTERNAL_PRINT_SERVERS_POLICY">DeviceExternalPrintServers</ph> policy.
If this policy is used, only the server printers with ids matching the values in this policy are available to the user through device policy.
The ids must correspond to the "id" field in the file specified in <ph name="DEVICE_EXTERNAL_PRINT_SERVERS_POLICY">DeviceExternalPrintServers</ph>.
If this policy is not set, filtering is omitted and all print servers provided by <ph name="DEVICE_EXTERNAL_PRINT_SERVERS_POLICY">DeviceExternalPrintServers</ph> are taken into account.'''
},
{
'name': 'ExternalProtocolDialogShowAlwaysOpenCheckbox',
'owners': ['ydago@chromium.org', 'mkwst@chromium.org'],
'type': 'main',
'schema': {
'type': 'boolean',
},
'example_value': True,
'id': 632,
'supported_on': ['chrome.*:79-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'caption': '''Show an "Always open" checkbox in external protocol dialog.''',
'tags': [],
'desc': ''' This policy controls whether or not the "Always open" checkbox is shown on external protocol launch confirmation prompts.
If this policy is set to True or not set, when an external protocol confirmation is shown, the user can select "Always allow" to skip all future confirmation prompts for the protocol on this site.
If this policy is set to False, the "Always allow" checkbox is not displayed and the user will be prompted each time an external protocol is invoked.'''
},
{
'name': 'DefaultInsecureContentSetting',
'owners': ['carlosil@chromium.org', 'estark@chromium.org'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 2, 3 ],
},
'items': [
{
'name': 'BlockInsecureContent',
'value': 2,
'caption': '''Do not allow any site to load mixed content''',
},
{
'name': 'AllowExceptionsInsecureContent',
'value': 3,
'caption': '''Allow users to add exceptions to allow mixed content''',
},
],
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 2,
'id': 633,
'caption': '''Control use of insecure content exceptions''',
'tags': [],
'desc': '''Allows you to set whether users can add exceptions to allow mixed content for specific sites.
This policy can be overridden for specific URL patterns using the 'InsecureContentAllowedForUrls' and 'InsecureContentBlockedForUrls' policies.
If this policy is left not set, users will be allowed to add exceptions to allow blockable mixed content and disable autoupgrades for optionally blockable mixed content.''',
},
{
'name': 'InsecureContentAllowedForUrls',
'owners': ['carlosil@chromium.org', 'estark@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 634,
'caption': '''Allow insecure content on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are allowed to display blockable (i.e. active) mixed content (i.e. HTTP content on HTTPS sites) and for which optionally blockable mixed content upgrades will be disabled.
If this policy is left not set blockable mixed content will be blocked and optionally blockable mixed content will be upgraded, and users will be allowed to set exceptions to allow it for specific sites.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'InsecureContentBlockedForUrls',
'owners': ['carlosil@chromium.org', 'estark@chromium.org'],
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['https://www.example.com', '[*.]example.edu'],
'id': 635,
'caption': '''Block insecure content on these sites''',
'tags': [],
'desc': '''Allows you to set a list of url patterns that specify sites which are not allowed to display blockable (i.e. active) mixed content (i.e. HTTP content on HTTPS sites), and for which optionally blockable (i.e. passive) mixed content will be upgraded.
If this policy is left not set blockable mixed content will be blocked and optionally blockable mixed content will be upgraded, but users will be allowed to set exceptions to allow it for specific sites.
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.''',
},
{
'name': 'DeviceWebBasedAttestationAllowedUrls',
'owners': ['miersh@google.com', 'pmarko@chromium.org', 'file://chrome/browser/chromeos/login/OWNERS'],
'device_only': True,
'type': 'list',
'schema': {
'type': 'array',
'items': { 'type': 'string' },
},
'supported_on': ['chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': ['https://www.example.com/', 'https://[*.]example.edu/'],
'id': 636,
'caption': '''URLs that will be granted access to perform the device attestation during SAML authentication''',
'tags': [],
'desc': '''This policy configures which URLs will be granted access to use remote attestation of device identity during the SAML flow on the sign-in screen.
Specifically, if a URL matches one of the patterns provided through this policy, it will be allowed to receive a HTTP header containing a response to a remote attestation challenge, attesting device identity and device state.
If this policy is not set or is set to an empty list, no URL is allowed to use remote attestation on the sign-in screen.
URLs must have HTTPS scheme, e.g. "https://example.com".
For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.'''
},
{
'name': 'DeviceShowNumericKeyboardForPassword',
'owners': ['raleksandrov@google.com', 'file://chrome/browser/chromeos/login/OWNERS'],
'type' : 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:80-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
},
'example_value': True,
'id': 638,
'caption': '''Show numeric keyboard for password''',
'tags': [],
'desc': '''Setting the policy to true displays numeric keyboard by default for entering password on the login screen. Users still could switch to the normal keyboard.
If you set the policy, users can't change it. If not set or set to false, it has no effect.'''
},
{
'name': 'PerAppTimeLimits',
'owners': ['agawronska@chromium.org', 'cros-families-eng@google.com'],
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'app_limits': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'app_info': {
'type': 'object',
'properties': {
'app_id': {
'type': 'string'
},
'app_type': {
'type': 'string',
'enum': [
'ARC',
'BUILT-IN',
'EXTENSION',
'WEB',
'CROSTINI'
]
}
}
},
'restriction': {
'type': 'string',
'enum': [
'BLOCK',
'TIME_LIMIT'
]
},
'daily_limit_mins': {
'type': 'integer',
'minimum': 0,
'maximum': 1440,
},
'last_updated_millis': {
'type': 'string',
'description': '''UTC timestamp for the last time this entry was updated. Sent as a string because the timestamp would not fit in an integer''',
}
}
}
},
'reset_at': {
'type': 'object',
'description' : '''The time of the day in local time when usage quota is renewed.''',
'properties': {
'hour': {
'type': 'integer',
'minimum': 0,
'maximum': 23
},
'minute': {
'type': 'integer',
'minimum': 0,
'maximum': 59
}
}
},
'activity_reporting_enabled' : {
'type': 'boolean',
'description': '''The value of app activity collection toggle. If set to true user app activity will be reported to the server with purpose of being displayed in child and parent <ph name="PRODUCT_NAME">$1<ex>Family Link</ex></ph> app. If set to false Per-app time limits feature will still work, but no data will be reported to the server and therefore displayed in <ph name="PRODUCT_NAME">$1<ex>Family Link</ex></ph>.'''
},
}
},
'supported_on': ['chrome_os: 80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'example_value': {
'app_limits': [
{
'app_info': {
'app_id': 'com.example.myapp',
'app_type': 'ARC'
},
'restriction': 'TIME_LIMIT',
'daily_limit_mins': 30,
'last_updated_millis': '1570223060437'
},
{
'app_info': {
'app_id': 'pjkljhegncpnkpknbcohdijeoejaedia',
'app_type': 'EXTENSION'
},
'restriction': 'TIME_LIMIT',
'daily_limit_mins': 10,
'last_updated_millis': '1570223000000'
},
{
'app_info': {
'app_id': 'iniodglblcgmngkgdipeiclkdjjpnlbn',
'app_type': 'BUILT-IN'
},
'restriction': 'BLOCK',
'last_updated_millis': '1570223000000'
}
],
'reset_at': {
'hour': 6,
'minute': 0
},
'activity_reporting_enabled': False
},
'id': 641,
'caption': '''Per-App Time Limits''',
'tags': [],
'desc': '''Allows to set per-app usage restrictions.
Usage restrictions can be applied to the apps installed on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> for the given user.
Restrictions should be passed in |app_limits| list. Only one entry per-app is allowed. Apps not included in the list have no restrictions.
It is not possible to block apps that are essential for the operating system, the restrictions for such apps will be ignored.
App is uniquely identified by |app_id|. Since different types of apps can use different id format |app_type| needs to be specified next to |app_id|.
Per-App Time Limits only support |ARC| apps currently. Android package name is used as |app_id|.
Support for other types of applications will be added in the future, for now they can be specified in the policy, but the restrictions will take no effect.
There are two types of available restrictions: |BLOCK| and |TIME_LIMIT|.
|BLOCK| makes app unavailable for the user. If |daily_limit_mins| is specified with |BLOCK| restriction |daily_limit_mins| will be ignored.
|TIME_LIMITS| applies daily usage limit and makes app unavailable after the limit is reached on the given day. Usage limit is specified in |daily_limit_mins|. Usage limit is reset daily at the UTC time passed in |reset_at|.
This policy is only used for child users.
This policy is complementary to 'UsageTimeLimit'. Restrictions specified in 'UsageTimeLimit' like screen time and bedtime will be enforced regardless of 'PerAppTimeLimits'.'''
},
{
'name': 'WebComponentsV0Enabled',
'owners': ['masonfreed@chromium.org', 'chrishtr@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'example_value': True,
'id': 644,
'supported_on': ['chrome.*:80-84', 'chrome_os:80-84', 'android:80-84', 'webview_android:80-84'],
'deprecated': True,
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'caption': '''Re-enable Web Components v0 API until M84.''',
'tags': [],
'desc': ''' The Web Components v0 APIs (Shadow DOM v0, Custom Elements v0, and HTML Imports) were deprecated in 2018, and have been disabled by default starting in M80. This policy allows these features to be selectively re-enabled until M84.
If this policy is set to True, the Web Components v0 features will be enabled for all sites.
If this policy is set to False or not set, the Web Components v0 features will be disabled by default, starting in M80.
This policy will be removed after Chrome 84.'''
},
{
'name': 'UseLegacyFormControls',
'owners': ['masonfreed@chromium.org', 'chrishtr@chromium.org', 'hwi@chromium.org', 'nsull@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'example_value': True,
'id': 683,
'supported_on': ['chrome.*:81-84', 'chrome_os:81-84', 'android:81-84', 'webview_android:81-84'],
'deprecated': True,
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'caption': '''Use Legacy Form Controls until M84.''',
'tags': [],
'desc': ''' Starting in M81, the standard form control elements (e.g. &lt;select&gt;, &lt;button&gt;, &lt;input type=date&gt;) were given a refreshed look and feel, with improved accessibility and better platform uniformity. This policy restores the old "legacy" form control elements until M84.
If this policy is set to True, the "legacy" form control elements will be used for all sites.
If this policy is set to False or not set, the form control elements will be enabled as they are launched in M81, M82, and M83.
This policy will be removed after Chrome 84.'''
},
{
'name': 'ClickToCallEnabled',
'owners': ['knollr@chromium.org', 'mvanouwerkerk@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:79-', 'chrome_os:79-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 645,
'caption': '''Enable the Click to Call Feature''',
'tags': [],
'desc': '''Enable the Click to Call feature which allows users to send phone numbers from Chrome Desktops to an Android device when the user is Signed-in. For more information, see help center article: https://support.google.com/chrome/answer/9430554?hl=en.
If this policy is set to enabled, the capability of sending phone numbers to Android devices will be enabled for the Chrome user.
If this policy is set to disabled, the capability of sending phone numbers to Android devices will be disabled for the Chrome user.
If you set this policy, users cannot change or override it.
If this policy is left unset, the Click to Call feature is enabled by default.''',
},
{
'name': 'UserDataSnapshotRetentionLimit',
'owners': ['ydago@chromium.org', 'grt@chromium.org'],
'type': 'int',
'schema': { 'type': 'integer', 'minimum': 0 },
'supported_on': ['chrome.*:83-'],
'features': {
'dynamic_refresh': False,
'per_profile': False,
},
'example_value': 3,
'id': 673,
'caption': '''Limits the number of user data snapshots retained for use in case of emergency rollback.''',
'tags': [],
'desc': '''Following each major version update, Chrome will create a snapshot of certain portions of the user's browsing data for use in case of a later emergency version rollback. If an emergency rollback is performed to a version for which a user has a corresponding snapshot, the data in the snapshot is restored. This allows users to retain such settings as bookmarks and autofill data.
If this policy is not set, the default value of 3 is used
If the policy is set, old snapshots are deleted as needed to respect the limit. If the policy is set to 0, no snapshots will be taken'''
},
{
'name': 'PrinterTypeDenyList',
'owners': ['file://printing/OWNERS'],
'type': 'string-enum-list',
'schema': {
'type': 'array',
'items': {
'type': 'string',
'enum': [
'privet',
'extension',
'pdf',
'local',
'cloud',
],
},
},
'items': [
{
'name': 'privet',
'value': 'privet',
'caption': '''Zeroconf-based (mDNS + DNS-SD) protocol destinations''',
},
{
'name': 'extension',
'value': 'extension',
'caption': '''Extension-based destinations''',
},
{
'name': 'pdf',
'value': 'pdf',
'caption': '''The 'Save as PDF' destination''',
},
{
'name': 'local',
'value': 'local',
'caption': '''Local printer destinations''',
},
{
'name': 'cloud',
'value': 'cloud',
'caption': '''<ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> and 'Save to Google Drive' destinations''',
},
],
'supported_on': ['chrome_os:80-', 'chrome.*:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': ['cloud', 'privet'],
'id': 647,
'caption': '''Disable printer types on the deny list''',
'tags': [],
'desc': '''The printers of types placed on the deny list will be disabled from being discovered or having their capabilities fetched.
Placing all printer types on the deny list effectively disables printing, as there would be no available destinations to send a document for printing.
Including <ph name="POLICY_ENUM_PRINTERTYPEDENYLIST_CLOUD">cloud</ph> on the deny list has the same effect as setting the <ph name="POLICY_CLOUDPRINTSUBMITENABLED">CloudPrintSubmitEnabled</ph> policy to false. In order to keep <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph> destinations discoverable, the <ph name="POLICY_CLOUDPRINTSUBMITENABLED">CloudPrintSubmitEnabled</ph> policy must be set to true and <ph name="POLICY_ENUM_PRINTERTYPEDENYLIST_CLOUD">cloud</ph> must not be on the deny list.
If the policy is not set, or is set to an empty list, all printer types will be available for discovery.
Extension printers are also known as print provider destinations, and include any destination that belongs to a <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> extension.
Local printers are also known as native printing destinations, and include destinations available to the local machine and shared network printers.'''
},
{
'name': 'PrintRasterizationMode',
'owners': ['thestig@chromium.org', 'file://printing/OWNERS'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [ 0, 1 ],
},
'items': [
{
'name': 'Full',
'value': 0,
'caption': '''Full''',
},
{
'name': 'Fast',
'value': 1,
'caption': '''Fast''',
},
],
'supported_on': ['chrome.win:84-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': 1,
'id': 706,
'caption': '''Print Rasterization Mode''',
'tags': [],
'desc': '''Controls how <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> prints on Windows.
When printing to a non-PostScript printer on Windows, sometimes print jobs need to be rasterized to print correctly.
When this policy is set to Full, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will do full page rasterization if necessary.
When this policy is set to Fast, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will avoid rasterization if possible, reducing the amount of rasterization can help reduce print job sizes and increase printing speed.
When this policy is not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will be in Full mode.'''
},
{
'name': 'DeletePrintJobHistoryAllowed',
'owners': ['jimmyxgong@chromium.org', 'file://printing/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 720,
'caption': '''Allow print job history to be deleted''',
'tags': [],
'desc': '''Controls whether print job history can be deleted.
Locally stored print jobs can be deleted through the print management app or through deleting the users's browser history.
When this policy is enabled or unset, the user will be able to delete their print job history through the print mangement app or through deleting their browser history.
When this policy is disabled, the user will not be able to delete their print job history through the print management app or through deleting their browser history.'''
},
{
'name': 'AmbientAuthenticationInPrivateModesEnabled',
'owners': ['rhalavati@chromium.org', 'roagarwal@chromium.org', 'chrome-privacy-core@google.com'],
'type': 'int-enum',
'schema': {
'type': 'integer',
'enum': [0,1,2,3],
},
'items': [
{
'name': 'RegularOnly',
'value': 0,
'caption': '''Enable ambient authentication in regular sessions only.''',
},
{
'name': 'IncognitoAndRegular',
'value': 1,
'caption': '''Enable ambient authentication in incognito and regular sessions.''',
},
{
'name': 'GuestAndRegular',
'value': 2,
'caption': '''Enable ambient authentication in guest and regular sessions.''',
},
{
'name': 'All',
'value': 3,
'caption': '''Enable ambient authentication in regular, incognito and guest sessions.''',
},
],
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': 0,
'id': 650,
'caption': '''Enable Ambient Authentication for profile types.''',
'tags': [],
'desc': '''Configuring this policy will allow/disallow ambient authentication for Incognito and Guest profiles in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>.
Ambient Authentication is http authentication with default credentials if explicit credentials are not provided via NTLM/Kerberos/Negotiate challenge/response schemes.
Setting the <ph name="REGULAR_ONLY_OPTION_NAME">RegularOnly</ph> (value 0), allows ambient authentication for Regular sessions only. Incognito and Guest sessions wouldn't be allowed to ambiently authenticate.
Setting the <ph name="INCOGNITO_AND_REGULAR_OPTION_NAME">IncognitoAndRegular</ph> (value 1), allows ambient authentication for Incognito and Regular sessions. Guest sessions wouldn't be allowed to ambiently authenticate.
Setting the <ph name="GUEST_AND_REGULAR_OPTION_NAME">GuestAndRegular</ph> (value 2), allows ambient authentication for Guest and Regular sessions. Incognito sessions wouldn't be allowed to ambiently authenticate.
Setting the <ph name="ALL_OPTION_NAME">All</ph> (value 3), allows ambient authentication for all sessions.
Note that, ambient authentication is always allowed on regular profiles.
In <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> version 81 and later, if the policy is left not set, ambient authentication will be enabled in regular sessions only.'''
},
{
'name': 'PaymentMethodQueryEnabled',
'owners': ['file://components/payments/core/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-', 'android:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 651,
'caption': '''Allow websites to query for available payment methods.''',
'tags': [],
'desc': '''Allows you to set whether websites are allowed to check if the user has payment methods saved.
If this policy is set to disabled, websites that use PaymentRequest.canMakePayment or PaymentRequest.hasEnrolledInstrument API will be informed that no payment methods are available.
If the setting is enabled or not set then websites are allowed to check if the user has payment methods saved.'''
},
{
'name': 'StricterMixedContentTreatmentEnabled',
'owners': ['carlosil@chromium.org', 'estark@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:80-', 'chrome_os:80-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'deprecated': True,
'example_value': True,
'id': 652,
'caption': '''Enable stricter treatment for mixed content''',
'tags': [],
'desc': '''This policy has been removed as of M85, please use <ph name="POLICY_NAME">InsecureContentAllowedForUrls</ph> to allow insecure content on a per-site basis instead.
This policy controls the treatment for mixed content (HTTP content in HTTPS sites) in the browser.
If the policy is set to true or unset, audio and video mixed content will be autoupgraded to HTTPS (i.e. the URL will be rewritten as HTTPS, without a fallback if the resource is not available over HTTPS) and a 'Not Secure' warning will be shown in the URL bar for image mixed content.
If the policy is set to false, autoupgrades will be disabled for audio and video, and no warning will be shown for images.
This policy does not affect other types of mixed content other than audio, video, and images.
This policy will no longer take effect starting in <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> 84.''',
},
{
'name': 'PerAppTimeLimitsWhitelist',
'owners': ['yilkal@chromium.org', 'cros-families-eng@google.com'],
'id': 658,
'features': {
'dynamic_refresh': True,
'per_profile': True
},
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'url_list': {
'type': 'array',
'items': {
'type': 'string',
}
},
'app_list': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'app_id': {
'type': 'string'
},
'app_type': {
'type': 'string',
'enum': [
'ARC',
'BUILT-IN',
'EXTENSION',
'WEB',
'CROSTINI'
],
}
},
}
}
}
},
'example_value': {
'url_list': [
"chrome://*",
"file://*",
"https://www.support.google.com",
"https://www.policies.google.com"
],
'app_list': [
{
'app_id': 'pjkljhegncpnkpknbcohdijeoejaedia',
'app_type': 'EXTENSION'
},
{
'app_id': 'iniodglblcgmngkgdipeiclkdjjpnlbn',
'app_type': 'BUILT-IN'
}
]
},
'caption': '''Per-App Time Limits Whitelist''',
'tags': [],
'supported_on': ['chrome_os: 80-'],
'desc': '''This policy specifies which applications and URLs should be whitelisted for per-app usage restrictions.
The configured whitelist are applied to the apps installed on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> for the given user with per-app time limits.
The configured whitelist can only be applied to child user accounts and take effect when <ph name="PER_APP_TIME_LIMITS_POLICY_NAME">PerAppTimeLimits</ph> policy is set.
The configured whitelist are applied to applications and URLs so that they will not be blocked by per-app time limits.
Accessing whitelisted URLs will not count towards the chrome time limit.
Add url regular expressions to |url_list| to whitelist urls that match any of the regular expressions in the list.
Add an application with its |app_id| and |app_type| to |app_list| to whitelist the application.
'''
},
{
'name': 'LocalDiscoveryEnabled',
'owners': ['file://cloud_print/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:81-', 'chrome_os:81-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 662,
'caption': '''Enable <ph name="CHROME_DEVICES_LINK">chrome://devices</ph>''',
'tags': [],
'desc': '''This policy controls access to controllable features in the local discovery UI (<ph name="CHROME_DEVICES_LINK">chrome://devices</ph>) which shows discoverable devices near the user as well as cloud devices registered to them. On all operating systems except for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>, the local discovery UI also allows users to add classic printers connected to their computers to <ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph>.''',
},
{
'name': 'ScreenCaptureAllowed',
'owners': ['guidou@chromium.org', 'marinaciocea@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:81-', 'chrome_os:81-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 666,
'caption': '''Allow or deny screen capture''',
'tags': [],
'desc': '''If enabled or not configured (default), a Web page can use
screen-share APIs (e.g., getDisplayMedia() or the Desktop Capture extension API)
to prompt the user to select a tab, window or desktop to capture.
When this policy is disabled, any calls to screen-share APIs will fail
with an error.''',
},
{
'name': 'AdvancedProtectionDeepScanningEnabled',
'owners': ['file://chrome/browser/safe_browsing/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:81-81'],
'deprecated': True,
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 667,
'caption': '''Enable sending downloads to Google for deep scanning for users enrolled in the Advanced Protection program''',
'tags': [],
'desc': '''This policy is deprecated, and has been replaced with AdvancedProtectionAllowed.
This policy controls whether users enrolled in the Advanced Protection program are allowed to send their downloads to Google for malware scanning. If set to True or not set, enrolled users will be be prompted to send their files to Google for deep scanning. If the user selects 'Scan', their download will be sent to Google. If set to False, users will not be prompted and their downloads will not be sent to Google.''',
},
{
'name': 'SystemProxySettings',
'owners': ['acostinas@google.com', 'pmarko@chromium.org'],
'supported_on': ['chrome_os:81-'],
'future': True,
'device_only': True,
'id': 672,
'type': 'dict',
'schema': {
'type': 'object',
'properties': {
'system_proxy_enabled': {
'type': 'boolean',
},
'system_services_username': {
'description': '''The username for authenticating system services to the remote web proxy.''',
'type': 'string',
'sensitiveValue': True,
},
'system_services_password': {
'description': '''The password for authenticating system services to the remote web proxy.''',
'type': 'string',
'sensitiveValue': True,
},
},
},
'features': {
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': {
'system_proxy_enabled': True,
'system_services_username': 'test_user',
'system_services_password': '0000'
},
'caption': '''Configures System-proxy service for <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph>.''',
'tags': [],
'desc': '''Configures the availability of System-proxy service and the proxy credentials for system services.
If the policy is not set, System-proxy service will not be available.''',
},
{
'name': 'DeviceLoginScreenPrivacyScreenEnabled',
'owners': ['lamzin@google.com', 'gildekel@chromium.org'],
'device_only': True,
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'features': {
'can_be_mandatory' : True,
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 676,
'caption': '''Set the state of privacy screen on the login screen''',
'tags': [],
'desc': '''Set the state of the privacy screen feature on the login screen.
If this policy is set to True, privacy screen will be enabled when the login screen is shown.
If this policy is set to False, privacy screen will be disabled when the login screen is shown.
When this policy is set, the user cannot override the value when the login screen is shown.
If this policy is left unset, the privacy screen is disabled initially, but remains controllable by the user when the login screen is shown.''',
},
{
'name': 'PrivacyScreenEnabled',
'owners': ['lamzin@google.com', 'gildekel@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:83-'],
'features': {
'can_be_mandatory' : True,
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'id': 677,
'caption': '''Enable privacy screen''',
'tags': [],
'desc': '''Enable/disable the privacy screen feature.
If this policy is set to True, privacy screen will always be enabled.
If this policy is set to False, privacy screen will always be disabled.
When this policy is set, the user cannot override the value.
If this policy is left unset, privacy screen is disabled initially but can be controlled by the user.''',
},
{
'name': 'AllowNativeNotifications',
'owners': ['file://chrome/browser/notifications/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.linux:83-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 678,
'caption': '''Allows native notifications''',
'tags': [],
'desc': '''Configures whether <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> on Linux will use native notifications.
If set to True or not set, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> is allowed to use native notifications.
If set to False, <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph> will not use native notifications. <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>'s Message Center will be used as a fallback.''',
},
{
'name': 'RequiredClientCertificateForUser',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'name' : {
'description': 'The name of the certificate profile.',
'type': 'string'
},
'cert_profile_id': {
'description': 'The identifier for this client certificate.',
'type': 'string'
},
'key_algorithm': {
'description': 'The algorithm for key pair generation.',
'type': 'string',
'enum': [ 'rsa' ]
},
'renewal_period_seconds': {
'description': 'Number of seconds before expiration of a certificate when renewal should be triggered',
'type': 'integer'
},
'policy_version': {
'description': 'The client should not interpret this data and should forward it verbatim. The DMServer uses policy_version to verify that the policy view of DMServer matches the view of Chrome OS device.',
'type': 'string'
},
'enable_remote_attestation_check': {
'description': 'Enable an additional security check based on remote attestation (optional, default: True).',
'type': 'boolean'
}
},
'required': ['cert_profile_id', 'key_algorithm']
}
},
'supported_on': ['chrome_os:83-'],
'device_only': False,
'features': {
'dynamic_refresh': True,
'per_profile': True,
'can_be_recommended': False,
'can_be_mandatory' : True,
},
'example_value': [{'name': 'Certificate Profile 1', 'cert_profile_id':'cert_profile_id_1', 'key_algorithm':'rsa', 'renewal_period_seconds': 2592000, 'policy_version': 'some_hash', 'enable_remote_attestation_check': True}],
'id': 680,
'caption': '''Required Client Certificates''',
'tags': [],
'desc': '''Specifies client certificates that should be enrolled using the device management protocol.''',
},
{
'name': 'RequiredClientCertificateForDevice',
'owners': ['file://components/policy/resources/OWNERS'],
'type': 'dict',
'schema': {
'type': 'array',
'items': {
'type': 'object',
'properties': {
'name' : {
'description': 'The name of the certificate profile.',
'type': 'string'
},
'cert_profile_id': {
'description': 'The identifier for this client certificate.',
'type': 'string'
},
'key_algorithm': {
'description': 'The algorithm for key pair generation.',
'type': 'string',
'enum': [ 'rsa' ]
},
'renewal_period_seconds': {
'description': 'Number of seconds before expiration of a certificate when renewal should be triggered',
'type': 'integer'
},
'policy_version': {
'description': 'The client should not interpret this data and should forward it verbatim. The DMServer uses policy_version to verify that the policy view of DMServer matches the view of Chrome OS device.',
'type': 'string'
},
'enable_remote_attestation_check': {
'description': 'Enable an additional security check based on remote attestation (optional, default: True).',
'type': 'boolean'
}
},
'required': ['cert_profile_id', 'key_algorithm']
}
},
'supported_on': ['chrome_os:84-'],
'device_only': True,
'features': {
'dynamic_refresh': True,
'per_profile': False,
'can_be_recommended': False,
'can_be_mandatory' : True,
},
'example_value': [{'name': 'Certificate Profile 1', 'cert_profile_id':'cert_profile_id_1', 'key_algorithm':'rsa', 'renewal_period_seconds': 2592000, 'policy_version': 'some_hash', 'enable_remote_attestation_check': True}],
'id': 681,
'caption': '''Required device-wide Client Certificates''',
'tags': [],
'desc': '''Specifies device-wide client certificates that should be enrolled using the device management protocol.''',
},
{
'name': 'AdvancedProtectionAllowed',
'owners': ['file://chrome/browser/safe_browsing/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:83-', 'chrome_os:83-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': True,
'id': 685,
'caption': '''Enable additional protections for users enrolled in the Advanced Protection program''',
'tags': [],
'desc': '''This policy controls whether users enrolled in the Advanced Protection program receive extra protections. Some of these features may involve the sharing of data with Google (for example, Advanced Protection users will be able to send their downloads to Google for malware scanning). If set to True or not set, enrolled users will receive extra protections. If set to False, Advanced Protection users will receive only the standard consumer features.''',
},
{
'name': 'ScrollToTextFragmentEnabled',
'owners': ['dlibby@microsoft.com', 'bokan@chromium.org'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome.*:83-', 'chrome_os:83-', 'android:83-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'id': 687,
'caption': '''Enable scrolling to text specified in URL fragments''',
'tags': [],
'desc': '''This feature allows for hyperlinks and address bar URL navigations to target specific text within a web page, which will be scrolled to once the loading of the web page is complete.
If you enable or don't configure this policy, web page scrolling to specific text fragments via URL will be enabled.
If you disable this policy, web page scrolling to specific text fragments via URL will be disabled.''',
},
{
'name': 'LoginDisplayPasswordButtonEnabled',
'owners': ['tellier@google.com', 'rsorokin@chromium.org', 'cros-oac@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-'],
'features': {
'dynamic_refresh': False,
'per_profile': True,
},
'example_value': False,
'default_for_enterprise_users': False,
'id': 701,
'caption': '''Show the display password button on the login and lock screen''',
'tags': [],
'desc': '''When enabled, this feature shows a button on the login and lock screen that allows the password to be displayed.
It is represented as an eye icon on the password textfield. The button is absent when the feature is disabled.
''',
},
{
'name': 'AccessibilityImageLabelsEnabled',
'owners': ['file://ui/accessibility/OWNERS'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-', 'chrome.*:84-'],
'features': {
'can_be_recommended': False,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'id': 703,
'caption': '''Enable <ph name="PRODUCT_NAME">Get Image Descriptions from Google</ph>.''',
'tags': ['google-sharing'],
'desc': '''The <ph name="PRODUCT_NAME">Get Image Descriptions from Google</ph>
accessibility feature enables visually-impaired screen reader users to
get descriptions of unlabeled images on the web. Users who choose to enable it
will have the option of using an anonymous Google service to provide
automatic descriptions for unlabeled images they encounter on the web.
If this feature is enabled, the content of images will be sent to Google
servers in order to generate a description. No cookies or other user
data is sent, and Google does not save or log any image content.
If this policy is set to true, the
<ph name="PRODUCT_NAME">Get Image Descriptions from Google</ph>
feature will be enabled, though it will only affect users who are using a
screen reader or other similar assistive technology.
If this policy is set to false, users will not have the option of enabling
the feature.
If you set this policy, users cannot change or override it.''',
},
{
'name': 'IntensiveWakeUpThrottlingEnabled',
'owners': ['file://components/performance_manager/OWNERS', 'chrisha@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-', 'chrome.*:85-', 'android:85-'],
'features': {
'per_profile': False,
'dynamic_refresh': True,
},
'example_value': True,
'id': 713,
'caption': '''Control the <ph name="PRODUCT_NAME">IntensiveWakeUpThrottling</ph> feature.''',
'tags': [],
'desc': '''When enabled the <ph name="PRODUCT_NAME">IntensiveWakeUpThrottling</ph> feature causes Javascript timers in background tabs to be aggressively throttled and coalesced, running no more than once per minute after a page has been backgrounded for 5 minutes or more.
This is a web standards compliant feature, but it may break functionality
on some websites by causing certain actions to be delayed by up to a
minute. However, it results in significant CPU and battery savings when
enabled. See https://bit.ly/30b1XR4 for more details.
If this policy is set to enabled then the feature will be force enabled, and
users will not be able to override this.
If this policy is set to disabled then the feature will be force disabled, and
users will not be able to override this.
If this policy is left unset then the feature will be controlled by its
own internal logic, which can be manually configured by users.
Note that the policy is applied per renderer process, with the most recent
value of the policy setting in force when a renderer process starts. A full
restart is required to ensure that all loaded tabs receive a consistent
policy setting. It is harmless for processes to be running with different
values of this policy.
''',
},
{
'name': 'PinUnlockAutosubmitEnabled',
'owners': ['rrsilva@google.com', 'cros-oac@google.com'],
'future': True,
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'features': {
'can_be_recommended' : True,
'dynamic_refresh': True,
'per_profile': False,
},
'example_value': True,
'default_for_enterprise_users': False,
'id': 718,
'caption': '''Enable PIN auto-submit feature on the lock and login screen.''',
'tags': [],
'desc': '''The PIN auto-submit feature changes how PINs are entered in Chrome OS.
Instead of showing the same textfield that is used for password input, this
feature shows a special UI that clearly shows to the user how many
digits are necessary for their PIN. As a consequence, the user's PIN length
will be stored outside the user encrypted data.
If this policy is set to false, users will not have the option of enabling
the feature on the Settings page.''',
},
{
'name': 'EmojiSuggestionEnabled',
'owners': ['myy@chromium.org', 'essential-inputs-team@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'future': True,
'supported_on' : ['chrome_os:85-'],
'features': {
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'default_for_enterprise_users': False,
'id': 721,
'caption': '''Enable Emoji Suggestion''',
'tags': [],
'desc': '''This feature gives emoji suggestion whenever a user types a word matched with the in-built emoji map.
If this policy is set to true, the feature will be force enabled, and users will not be able to override this.
This policy is defaulted to false, no emoji will be suggested and users cannot override it.''',
},
{
'name': 'UserAgentClientHintsEnabled',
'owners': ['file://components/client_hints/OWNERS', 'yoavweiss@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:84-', 'chrome.*:84-', 'android:84-'],
'features': {
'per_profile': False,
'dynamic_refresh': True,
},
'example_value': True,
'id': 725,
'caption': '''Control the <ph name="PRODUCT_NAME">User-Agent Client Hints</ph> feature.''',
'tags': [],
'desc': '''When enabled the <ph name="PRODUCT_NAME">User-Agent Client Hints</ph> feature sends granular request headers providing information about the user browser and environment.
This is an additive feature, but the new headers may break some websites that restrict the characters that requests may contain.
If this policy is enabled or not set the <ph name="PRODUCT_NAME">User-Agent Client Hints</ph> feature is enabled. If the policy is disabled the feature is unavailable.''',
},
{
'name': 'SuggestedContentEnabled',
'owners': ['wrong@chromium.org', 'chrome-knowledge-eng@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:85-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'default_for_enterprise_users': False,
'id': 726,
'caption': 'Enable Suggested Content',
'tags': [],
'desc': '''This feature enables suggestions for new content to explore. Includes apps, webpages, and more.
If this policy is set to True, then suggestions for new content to explore will be enabled.
If this policy is set to False, then suggestions for new content to explore will be disabled.
If this policy is left unset, then suggestions for new content to explore will be disabled for managed users.
'''
},
{
'name': 'ShowFullUrlsInAddressBar',
'owners': ['livvielin@chromium.org', 'enamelites@google.com'],
'type': 'main',
'schema': { 'type': 'boolean' },
'supported_on': ['chrome_os:86-', 'chrome.*:86-'],
'features': {
'can_be_recommended': True,
'dynamic_refresh': True,
'per_profile': True,
},
'example_value': False,
'default_for_enterprise_users': False,
'id': 739,
'caption': 'Show Full URLs',
'tags': [],
'desc': '''This feature enables display of the full URL in the address bar.
If this policy is set to True, then the full URL will be shown in the address bar, including schemes and subdomains.
If this policy is set to False, then the default URL display will apply.
If this policy is left unset, then the default URL display will apply and the user will be able to toggle between default and full URL display with a context menu option.
'''
},
],
'messages': {
# Messages that are not associated to any policies.
'win_supported_all': {
'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'''
},
'win_supported_win7': {
'desc': '''A label specifying the policy compatibles with Windows 7. This text will appear right next to a label containing the text 'Supported on:'.''',
'text': '''Microsoft Windows 7'''
},
'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_oma_uri': {
'desc': '''Caption text of the field 'oma-uri' in the summary chart of a policy in the generated documentation''',
'text': '''<ph name="OMA_URI">OMA-URI</ph>:'''
},
'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_schema': {
'desc': '''Caption text of the 'schema' in the summary chart of a policy in the generated documentation''',
'text': '''Schema:'''
},
'doc_url_schema': {
'desc': '''Caption text of the field with the link to expanded schema description in the summary chart of a policy in the generated documentation''',
'text': '''Expanded schema description:'''
},
'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_banner': {
'desc': '''A banner shown at the top of the policy documentation''',
'text': '''The Chrome Enterprise policy list is moving! Please update your bookmarks to <ph name="POLICY_DOCUMENTATION_URL">https://cloud.google.com/docs/chrome-enterprise/policies/<ex>https://cloud.google.com/docs/chrome-enterprise/policies/</ex></ph>.'''
},
'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_group_intro': {
'desc': '''Introduction text for the generated policy atomic group documentation''',
'text': '''Both Chromium and Google Chrome have some groups of policies that depend on each other to provide control over a feature. These sets are represented by the following policy groups. Given that policies can have multiple sources, only values coming from the highest priority source will be applied. Values coming from a lower priority source in the same group will be ignored. The order of priority is defined in <ph name="POLICY_PRIORITY_DOC_URL">https://support.google.com/chrome/a/?p=policy_order<ex>https://support.google.com/chrome/a/?p=policy_order</ex></ph>.'''
},
'doc_policy_in_atomic_group': {
'desc': '''Label notifying that a policy is part of an atomic policy group''',
'text': '''This policy is part of the following atomic group (only policies from the highest priority source present in the group are applied) :'''
},
'doc_policy_atomic_group': {
'desc': '''Caption text of the 'policy atomic group' in the summary chart of a policy in the generated documentation''',
'text': '''Policy atomic group:'''
},
'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_feature_cloud_only': {
'desc': '''The name of the fature that indicates whether a policy can only be set from Admin Console.''',
'text': '''Cloud Only'''
},
'doc_feature_platform_only': {
'desc': '''The name of the feature that indicates whether a policy can only be set with platfrom policy.''',
'text': '''Platform Only'''
},
'doc_feature_internal_only': {
'desc': '''The name of the feature that indicates whether a policy is used for internal development or testing purposes.''',
'text': '''Internal Only'''
},
'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://cloud.google.com/docs/chrome-enterprise/policies/?policy=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.)''',
},
'doc_policy_restriction': {
'desc': '''Caption text of the field 'restrictions' in the summary chart of a policy in the generated documentation''',
'text': '''Restrictions:'''
},
'doc_range_minimum': {
'desc': '''Caption text of the field 'minimum' in the summary chart of a policy in the generated documentation. Present only if policy has a minimum range restriction.''',
'text': '''Minimum:'''
},
'doc_range_maximum': {
'desc': '''Caption text of the field 'maximum' in the summary chart of a policy in the generated documentation. Present only if policy has a maximum range restriction.''',
'text': '''Maximum:'''
},
'doc_schema_description_link': {
'desc': '''Text pointing the user to the expanded documentation page for this policy, containing the information about schema and formatting.''',
'text': '''See <ph name="REFERENCE_URL">$6<ex>https://cloud.google.com/docs/chrome-enterprise/policies/?policy=WallpaperImage</ex></ph> for more information about schema and formatting.'''
},
'deprecated_policy_group_caption': {
'desc': '''Localized name for the deprecated policies folder, for Microsoft's Group Policy Editor.''',
'text': '''Deprecated policies''',
},
'deprecated_policy_group_desc': {
'desc': '''Localized description for the deprecated policies folder, for Microsoft's Group Policy Editor.''',
'text': '''These policies are included here to make them easy to remove.''',
},
'deprecated_policy_desc': {
'desc': '''Description shared by all deprecated policies, in Microsoft Windows' Group Policy Editor.''',
'text': '''This policy is deprecated. Its usage is discouraged. Read more at https://support.google.com/chrome/a/answer/7643500'''
},
'removed_policy_group_caption': {
'desc': '''Localized name for the removed policies folder, for Microsoft's Group Policy Editor.''',
'text': '''Removed policies''',
},
'removed_policy_group_desc': {
'desc': '''Localized description for the removed policies folder, for Microsoft's Group Policy Editor.''',
'text': '''These policies are included here to make them easy to remove.''',
},
'removed_policy_desc': {
'desc': '''Description shared by all removed policies, in Microsoft Windows' Group Policy Editor.''',
'text': '''This policy is removed. It is not compatible with this version of <ph name="PRODUCT_NAME">$1<ex>Google Chrome</ex></ph>. Read more at https://support.google.com/chrome/a/answer/7643500'''
},
},
# Legacy device policies that don't have a 1:1 mapping between template and
# chrome_device_policy.proto or where the types don't map the same way as for
# user policy, so that code is not (easily) generatable. Do not add new device
# policies here, make sure the proto is set up the same way as the (generated)
# user policy proto.
# Add deprecated policies here, though, if the proto field got deleted.
'legacy_device_policy_proto_map': [
# Deprecated device policies where the proto field got deleted.
['DeviceStartUpUrls', ''],
['DeviceIdleLogoutTimeout', ''],
['DeviceIdleLogoutWarningDuration', ''],
['DeviceLoginScreenSaverId', ''],
['DeviceLoginScreenSaverTimeout', ''],
['DeviceAppPack', ''],
# Proto fields with unknown policy.
['', 'device_reporting.report_running_kiosk_app'],
['', 'camera_enabled.camera_enabled'],
# Not an actual policy.
['', 'auto_update_settings.target_version_display_name'],
# TPMFirmwareUpdateSettings is one-to-many and uses a strongly typed proto.
['TPMFirmwareUpdateSettings', 'tpm_firmware_update_settings.auto_update_mode'],
['TPMFirmwareUpdateSettings', 'tpm_firmware_update_settings.allow_user_initiated_powerwash'],
['TPMFirmwareUpdateSettings', 'tpm_firmware_update_settings.allow_user_initiated_preserve_device_state'],
# DeviceOffHours is one-to-many and uses a strongly typed proto.
['DeviceOffHours', 'device_off_hours.intervals'],
['DeviceOffHours', 'device_off_hours.timezone'],
['DeviceOffHours', 'device_off_hours.ignored_policy_proto_tags'],
# UsbDetachableWhitelist is a strongly typed proto.
['UsbDetachableWhitelist', 'usb_detachable_whitelist.id'],
# DeviceUpdateAllowedConnectionTypes is not generatable since the proto
# uses enums, whereas the schema uses strings.
['DeviceUpdateAllowedConnectionTypes', 'auto_update_settings.allowed_connection_types'],
],
# Mapping between device policies and fields in chrome_device_policy.proto.
# Code for these policies can be generated. Add new device policies here!
'device_policy_proto_map': {
'DeviceGuestModeEnabled': 'guest_mode_enabled.guest_mode_enabled',
'DeviceRebootOnShutdown': 'reboot_on_shutdown.reboot_on_shutdown',
'DeviceShowUserNamesOnSignin': 'show_user_names.show_user_names',
'DeviceAllowNewUsers': 'allow_new_users.allow_new_users',
'DeviceUserWhitelist': 'user_whitelist.user_whitelist',
'DeviceEphemeralUsersEnabled': 'ephemeral_users_enabled.ephemeral_users_enabled',
'LoginAuthenticationBehavior': 'login_authentication_behavior.login_authentication_behavior',
'DeviceAllowBluetooth': 'allow_bluetooth.allow_bluetooth',
'DeviceLoginScreenExtensions': 'device_login_screen_extensions.device_login_screen_extensions',
'DeviceLoginScreenDomainAutoComplete': 'login_screen_domain_auto_complete.login_screen_domain_auto_complete',
'DeviceLoginScreenLocales': 'login_screen_locales.login_screen_locales',
'DeviceLoginScreenInputMethods': 'login_screen_input_methods.login_screen_input_methods',
'DeviceLoginScreenSystemInfoEnforced': 'device_login_screen_system_info_enforced.value',
'DeviceShowNumericKeyboardForPassword' : 'device_show_numeric_keyboard_for_password.value',
'DeviceSamlLoginAuthenticationType': 'saml_login_authentication_type.saml_login_authentication_type',
'DeviceDataRoamingEnabled': 'data_roaming_enabled.data_roaming_enabled',
'AllowKioskAppControlChromeVersion': 'allow_kiosk_app_control_chrome_version.allow_kiosk_app_control_chrome_version',
'DevicePolicyRefreshRate': 'device_policy_refresh_rate.device_policy_refresh_rate',
'DeviceMetricsReportingEnabled': 'metrics_enabled.metrics_enabled',
'SystemUse24HourClock': 'use_24hour_clock.use_24hour_clock',
'UptimeLimit': 'uptime_limit.uptime_limit',
'DeviceAllowRedeemChromeOsRegistrationOffers': 'allow_redeem_offers.allow_redeem_offers',
'ExtensionCacheSize': 'extension_cache_size.extension_cache_size',
'DisplayRotationDefault': 'display_rotation_default.display_rotation_default',
'DeviceQuirksDownloadEnabled': 'quirks_download_enabled.quirks_download_enabled',
'UnaffiliatedArcAllowed': 'unaffiliated_arc_allowed.unaffiliated_arc_allowed',
'VirtualMachinesAllowed': 'virtual_machines_allowed.virtual_machines_allowed',
'DeviceUnaffiliatedCrostiniAllowed': 'device_unaffiliated_crostini_allowed.device_unaffiliated_crostini_allowed',
'PluginVmAllowed': 'plugin_vm_allowed.plugin_vm_allowed',
'DeviceLoginScreenAutoSelectCertificateForUrls': 'device_login_screen_auto_select_certificate_for_urls.login_screen_auto_select_certificate_rules',
'DeviceWiFiFastTransitionEnabled': 'device_wifi_fast_transition_enabled.enabled',
'DeviceTransferSAMLCookies': 'saml_settings.transfer_saml_cookies',
'LoginVideoCaptureAllowedUrls': 'login_video_capture_allowed_urls.urls',
'DeviceHostnameTemplate': 'network_hostname.device_hostname_template',
'DeviceKerberosEncryptionTypes': 'device_kerberos_encryption_types.types',
'LogUploadEnabled': 'device_log_upload_settings.system_log_upload_enabled',
'DeviceVariationsRestrictParameter': 'variations_parameter.parameter',
'DeviceBlockDevmode': 'system_settings.block_devmode',
'DeviceSecondFactorAuthentication': 'device_second_factor_authentication.mode',
'CastReceiverName': 'cast_receiver_name.name',
'DeviceNativePrintersAccessMode': 'native_device_printers_access_mode.access_mode',
'DevicePrintersAccessMode': 'device_printers_access_mode.access_mode',
'MinimumRequiredChromeVersion': 'minimum_required_version.chrome_version',
'DeviceUserPolicyLoopbackProcessingMode': 'device_user_policy_loopback_processing_mode.mode',
'DeviceLoginScreenIsolateOrigins': 'device_login_screen_isolate_origins.isolate_origins',
'DeviceLoginScreenSitePerProcess': 'device_login_screen_site_per_process.site_per_process',
'DeviceMachinePasswordChangeRate': 'device_machine_password_change_rate.rate_days',
'DeviceNativePrintersBlacklist': 'native_device_printers_blacklist.blacklist',
'DeviceNativePrintersWhitelist': 'native_device_printers_whitelist.whitelist',
'DevicePrintersBlocklist': 'device_printers_blocklist.blocklist',
'DevicePrintersAllowlist': 'device_printers_allowlist.allowlist',
'HeartbeatEnabled': 'device_heartbeat_settings.heartbeat_enabled',
'HeartbeatFrequency': 'device_heartbeat_settings.heartbeat_frequency',
'ChromeOsReleaseChannel': 'release_channel.release_channel',
'ChromeOsReleaseChannelDelegated': 'release_channel.release_channel_delegated',
'DeviceAutoUpdateDisabled': 'auto_update_settings.update_disabled',
'DeviceTargetVersionPrefix': 'auto_update_settings.target_version_prefix',
'DeviceRollbackToTargetVersion': 'auto_update_settings.rollback_to_target_version',
'DeviceRollbackAllowedMilestones': 'auto_update_settings.rollback_allowed_milestones',
'DeviceUpdateScatterFactor': 'auto_update_settings.scatter_factor_in_seconds',
'DeviceUpdateHttpDownloadsEnabled': 'auto_update_settings.http_downloads_enabled',
'RebootAfterUpdate': 'auto_update_settings.reboot_after_update',
'DeviceAutoUpdateP2PEnabled': 'auto_update_settings.p2p_enabled',
'DeviceLoginScreenDefaultLargeCursorEnabled': 'accessibility_settings.login_screen_default_large_cursor_enabled',
'DeviceLoginScreenLargeCursorEnabled': 'accessibility_settings.login_screen_large_cursor_enabled',
'DeviceLoginScreenShowOptionsInSystemTrayMenu': 'accessibility_settings.login_screen_show_options_in_system_tray_menu_enabled',
'DeviceLoginScreenSpokenFeedbackEnabled': 'accessibility_settings.login_screen_spoken_feedback_enabled',
'DeviceLoginScreenDefaultSpokenFeedbackEnabled': 'accessibility_settings.login_screen_default_spoken_feedback_enabled',
'DeviceLoginScreenDefaultHighContrastEnabled': 'accessibility_settings.login_screen_default_high_contrast_enabled',
'DeviceLoginScreenHighContrastEnabled': 'accessibility_settings.login_screen_high_contrast_enabled',
'DeviceLoginScreenAccessibilityShortcutsEnabled': 'accessibility_settings.login_screen_shortcuts_enabled',
'DeviceLoginScreenDefaultScreenMagnifierType': 'accessibility_settings.login_screen_default_screen_magnifier_type',
'DeviceLoginScreenScreenMagnifierType': 'accessibility_settings.login_screen_screen_magnifier_type',
'DeviceLoginScreenDefaultVirtualKeyboardEnabled': 'accessibility_settings.login_screen_default_virtual_keyboard_enabled',
'DeviceLoginScreenPrimaryMouseButtonSwitch': 'login_screen_primary_mouse_button_switch.value',
'DeviceLoginScreenVirtualKeyboardEnabled': 'accessibility_settings.login_screen_virtual_keyboard_enabled',
'DeviceLoginScreenDictationEnabled': 'accessibility_settings.login_screen_dictation_enabled',
'DeviceLoginScreenSelectToSpeakEnabled': 'accessibility_settings.login_screen_select_to_speak_enabled',
'DeviceLoginScreenCursorHighlightEnabled': 'accessibility_settings.login_screen_cursor_highlight_enabled',
'DeviceLoginScreenCaretHighlightEnabled': 'accessibility_settings.login_screen_caret_highlight_enabled',
'DeviceLoginScreenMonoAudioEnabled': 'accessibility_settings.login_screen_mono_audio_enabled',
'DeviceLoginScreenAutoclickEnabled': 'accessibility_settings.login_screen_autoclick_enabled',
'DeviceLoginScreenStickyKeysEnabled': 'accessibility_settings.login_screen_sticky_keys_enabled',
'DeviceLoginScreenKeyboardFocusHighlightEnabled': 'accessibility_settings.login_screen_keyboard_focus_highlight_enabled',
'AttestationEnabledForDevice': 'attestation_settings.attestation_enabled',
'AttestationForContentProtectionEnabled': 'attestation_settings.content_protection_enabled',
'SystemTimezone': 'system_timezone.timezone',
'SystemTimezoneAutomaticDetection': 'system_timezone.timezone_detection_type',
'ReportDeviceActivityTimes': 'device_reporting.report_activity_times',
'ReportDeviceBootMode': 'device_reporting.report_boot_mode',
'ReportDeviceLocation': 'device_reporting.report_location',
'ReportDeviceNetworkInterfaces': 'device_reporting.report_network_interfaces',
'ReportDeviceUsers': 'device_reporting.report_users',
'ReportDeviceHardwareStatus': 'device_reporting.report_hardware_status',
'ReportDeviceSessionStatus': 'device_reporting.report_session_status',
'ReportDeviceGraphicsStatus': 'device_reporting.report_graphics_status',
'ReportDeviceCrashReportInfo': 'device_reporting.report_crash_report_info',
'ReportDeviceOsUpdateStatus': 'device_reporting.report_os_update_status',
'ReportDeviceVersionInfo': 'device_reporting.report_version_info',
'ReportDeviceAppInfo': 'device_reporting.report_app_info',
'ReportDeviceBluetoothInfo': 'device_reporting.report_bluetooth_info',
'ReportDeviceFanInfo': 'device_reporting.report_fan_info',
'ReportDeviceVpdInfo': 'device_reporting.report_vpd_info',
'ReportDeviceSystemInfo': 'device_reporting.report_system_info',
'ReportUploadFrequency': 'device_reporting.device_status_frequency',
'NetworkThrottlingEnabled': 'network_throttling.enabled',
'NetworkThrottlingEnabled': 'network_throttling.upload_rate_kbits',
'NetworkThrottlingEnabled': 'network_throttling.download_rate_kbits',
'DeviceLoginScreenPowerManagement': 'login_screen_power_management.login_screen_power_management',
'DeviceChromeVariations': 'device_chrome_variations_type.value',
'DeviceDisplayResolution': 'device_display_resolution.device_display_resolution',
'DeviceWallpaperImage': 'device_wallpaper_image.device_wallpaper_image',
'DeviceNativePrinters': 'native_device_printers.external_policy',
'DeviceExternalPrintServers': 'external_print_servers.external_policy',
'DeviceExternalPrintServersAllowlist': 'external_print_servers_allowlist.allowlist',
'DeviceAutoUpdateTimeRestrictions': 'auto_update_settings.disallowed_time_intervals',
'DeviceUpdateStagingSchedule': 'auto_update_settings.staging_schedule',
'DeviceLocalAccounts': 'device_local_accounts.account',
'DeviceLocalAccountAutoLoginId': 'device_local_accounts.auto_login_id',
'DeviceLocalAccountAutoLoginDelay': 'device_local_accounts.auto_login_delay',
'DeviceLocalAccountAutoLoginBailoutEnabled': 'device_local_accounts.enable_auto_login_bailout',
'DeviceLocalAccountPromptForNetworkWhenOffline': 'device_local_accounts.prompt_for_network_when_offline',
'DevicePowerPeakShiftEnabled': 'device_power_peak_shift.enabled',
'DevicePowerPeakShiftBatteryThreshold': 'device_power_peak_shift.battery_threshold',
'DevicePowerPeakShiftDayConfig': 'device_power_peak_shift.day_configs',
'DeviceWilcoDtcAllowed': 'device_wilco_dtc_allowed.device_wilco_dtc_allowed',
'DeviceWilcoDtcConfiguration': 'device_wilco_dtc_configuration.device_wilco_dtc_configuration',
'PluginVmLicenseKey': 'plugin_vm_license_key.plugin_vm_license_key',
'DeviceAuthDataCacheLifetime': 'device_auth_data_cache_lifetime.lifetime_hours',
'DeviceGpoCacheLifetime': 'device_gpo_cache_lifetime.lifetime_hours',
'DeviceRebootOnUserSignout': 'device_reboot_on_user_signout.reboot_on_signout_mode',
'DeviceEcryptfsMigrationStrategy': 'device_ecryptfs_migration_strategy.migration_strategy',
'DeviceWiFiFastTransitionEnabled': 'device_wifi_fast_transition_enabled.device_wifi_fast_transition_enabled',
'DeviceWiFiAllowed': 'device_wifi_allowed.device_wifi_allowed',
'AutoCleanUpStrategy': 'auto_clean_up_settings.clean_up_strategy',
'SupervisedUsersEnabled': 'supervised_users_settings.supervised_users_enabled',
'DeviceStartUpFlags': 'start_up_flags.flags',
'ReportDeviceBoardStatus': 'device_reporting.report_board_status',
'ReportDeviceCpuInfo': 'device_reporting.report_cpu_info',
'ReportDeviceTimezoneInfo': 'device_reporting.report_timezone_info',
'ReportDeviceMemoryInfo': 'device_reporting.report_memory_info',
'ReportDeviceBacklightInfo': 'device_reporting.report_backlight_info',
'ReportDeviceStorageStatus': 'device_reporting.report_storage_status',
'ReportDevicePowerStatus': 'device_reporting.report_power_status',
'DeviceOpenNetworkConfiguration': 'open_network_configuration.open_network_configuration',
'DeviceBootOnAcEnabled': 'device_boot_on_ac.enabled',
'DeviceQuickFixBuildToken': 'auto_update_settings.device_quick_fix_build_token',
'DeviceDockMacAddressSource': 'device_dock_mac_address_source.source',
'DeviceUsbPowerShareEnabled': 'device_usb_power_share.enabled',
'DeviceAdvancedBatteryChargeModeEnabled': 'device_advanced_battery_charge_mode.enabled',
'DeviceAdvancedBatteryChargeModeDayConfig': 'device_advanced_battery_charge_mode.day_configs',
'DeviceBatteryChargeMode': 'device_battery_charge_mode.battery_charge_mode',
'DeviceBatteryChargeCustomStartCharging': 'device_battery_charge_mode.custom_charge_start',
'DeviceBatteryChargeCustomStopCharging': 'device_battery_charge_mode.custom_charge_stop',
'DeviceScheduledUpdateCheck': 'device_scheduled_update_check.device_scheduled_update_check_settings',
'DevicePowerwashAllowed': 'device_powerwash_allowed.device_powerwash_allowed',
'DeviceLoginScreenWebUsbAllowDevicesForUrls': 'device_login_screen_webusb_allow_devices_for_urls.device_login_screen_webusb_allow_devices_for_urls',
'DeviceWebBasedAttestationAllowedUrls': 'device_web_based_attestation_allowed_urls.value',
'MinimumChromeVersionEnforced' : 'minimum_chrome_version_enforced.value',
'SystemProxySettings': 'system_proxy_settings.system_proxy_settings',
'DeviceLoginScreenPrivacyScreenEnabled': 'device_login_screen_privacy_screen_enabled.enabled',
'RequiredClientCertificateForDevice': 'required_client_certificate_for_device.required_client_certificate_for_device',
'DeviceCrostiniArcAdbSideloadingAllowed': 'device_crostini_arc_adb_sideloading_allowed.mode',
'MinimumChromeVersionAueMessage' : 'minimum_chrome_version_aue_message.value',
'ManagedGuestSessionPrivacyWarningsEnabled' : 'managed_guest_session_privacy_warnings.enabled',
},
'policy_atomic_group_definitions': [
{
'id': 1,
'name': 'Homepage',
'caption': '''Homepage''',
'policies': [
'HomepageLocation',
'HomepageIsNewTabPage',
'NewTabPageLocation',
'ShowHomeButton',
],
},
{
'id': 2,
'name': 'RemoteAccess',
'caption': '''Remote access''',
'policies': [
'RemoteAccessClientFirewallTraversal',
'RemoteAccessHostClientDomain',
'RemoteAccessHostClientDomainList',
'RemoteAccessHostFirewallTraversal',
'RemoteAccessHostDomain',
'RemoteAccessHostDomainList',
'RemoteAccessHostRequireTwoFactor',
'RemoteAccessHostTalkGadgetPrefix',
'RemoteAccessHostRequireCurtain',
'RemoteAccessHostAllowClientPairing',
'RemoteAccessHostAllowGnubbyAuth',
'RemoteAccessHostAllowRelayedConnection',
'RemoteAccessHostUdpPortRange',
'RemoteAccessHostMatchUsername',
'RemoteAccessHostTokenUrl',
'RemoteAccessHostTokenValidationUrl',
'RemoteAccessHostTokenValidationCertificateIssuer',
'RemoteAccessHostDebugOverridePolicies',
'RemoteAccessHostAllowUiAccessForRemoteAssistance',
'RemoteAccessHostAllowFileTransfer',
],
},
{
'id': 3,
'name': 'PasswordManager',
'caption': '''Password manager''',
'policies': [
'PasswordManagerEnabled',
'PasswordManagerAllowShowPasswords',
],
},
{
'id': 4,
'name': 'Proxy',
'caption': '''Proxy''',
'policies': [
'ProxyMode',
'ProxyServerMode',
'ProxyServer',
'ProxyPacUrl',
'ProxyBypassList',
'ProxySettings',
],
},
{
'id': 5,
'name': 'Extensions',
'caption': '''Extensions''',
'policies': [
'ExtensionInstallAllowlist',
'ExtensionInstallBlocklist',
'ExtensionInstallBlacklist',
'ExtensionInstallWhitelist',
'ExtensionInstallForcelist',
'ExtensionInstallSources',
'ExtensionAllowedTypes',
'ExtensionAllowInsecureUpdates',
'ExtensionSettings',
],
},
{
'id': 6,
'name': 'RestoreOnStartup',
'owners': ['file://components/policy/resources/OWNERS'],
'caption': '''Action on startup''',
'policies': [
'RestoreOnStartup',
'RestoreOnStartupURLs',
],
},
{
'id': 7,
'name': 'DefaultSearchProvider',
'caption': '''Default search provider''',
'policies': [
'DefaultSearchProviderEnabled',
'DefaultSearchProviderName',
'DefaultSearchProviderKeyword',
'DefaultSearchProviderSearchURL',
'DefaultSearchProviderSuggestURL',
'DefaultSearchProviderInstantURL',
'DefaultSearchProviderIconURL',
'DefaultSearchProviderEncodings',
'DefaultSearchProviderAlternateURLs',
'DefaultSearchProviderSearchTermsReplacementKey',
'DefaultSearchProviderImageURL',
'DefaultSearchProviderNewTabURL',
'DefaultSearchProviderSearchURLPostParams',
'DefaultSearchProviderSuggestURLPostParams',
'DefaultSearchProviderInstantURLPostParams',
'DefaultSearchProviderImageURLPostParams',
],
},
{
'id': 8,
'name': 'ImageSettings',
'caption': '''Image settings''',
'policies': [
'DefaultImagesSetting',
'ImagesAllowedForUrls',
'ImagesBlockedForUrls',
],
},
{
'id': 9,
'name': 'CookiesSettings',
'caption': '''Cookies settings''',
'policies': [
'DefaultCookiesSetting',
'CookiesAllowedForUrls',
'CookiesBlockedForUrls',
'CookiesSessionOnlyForUrls',
],
},
{
'id': 10,
'name': 'JavascriptSettings',
'caption': '''Javascript settings''',
'policies': [
'DefaultJavaScriptSetting',
'JavaScriptAllowedForUrls',
'JavaScriptBlockedForUrls',
],
},
{
'id': 11,
'name': 'PluginsSettings',
'caption': '''Plugins settings''',
'policies': [
'DefaultPluginsSetting',
'PluginsAllowedForUrls',
'PluginsBlockedForUrls',
],
},
{
'id': 12,
'name': 'PopupsSettings',
'caption': '''Popups settings''',
'policies': [
'DefaultPopupsSetting',
'PopupsAllowedForUrls',
'PopupsBlockedForUrls',
],
},
{
'id': 13,
'name': 'KeygenSettings',
'caption': '''Keygen settings''',
'policies': [
'DefaultKeygenSetting',
'KeygenAllowedForUrls',
'KeygenBlockedForUrls',
],
},
{
'id': 14,
'name': 'NotificationsSettings',
'caption': '''Notification settings''',
'policies': [
'DefaultNotificationsSetting',
'NotificationsAllowedForUrls',
'NotificationsBlockedForUrls',
],
},
{
'id': 15,
'name': 'WebUsbSettings',
'caption': '''Web USB settings''',
'policies': [
'DefaultWebUsbGuardSetting',
'DeviceLoginScreenWebUsbAllowDevicesForUrls',
'WebUsbAllowDevicesForUrls',
'WebUsbAskForUrls',
'WebUsbBlockedForUrls',
],
},
{
'id': 16,
'name': 'NativeMessaging',
'caption': '''Native messaging''',
'policies': [
'NativeMessagingBlacklist',
'NativeMessagingWhitelist',
'NativeMessagingUserLevelHosts',
],
},
{
'id': 17,
'name': 'Drive',
'caption': '''Drive''',
'policies': [
'DriveDisabled',
'DriveDisabledOverCellular',
],
},
{
'id': 18,
'name': 'Attestation',
'caption': '''Attestation''',
'policies': [
'AttestationEnabledForDevice',
'AttestationEnabledForUser',
'AttestationExtensionWhitelist',
'AttestationForContentProtectionEnabled',
],
},
{
'id': 19,
'name': 'ContentPack',
'caption': '''Content pack''',
'policies': [
'ContentPackDefaultFilteringBehavior',
'ContentPackManualBehaviorHosts',
'ContentPackManualBehaviorURLs',
],
},
{
'id': 20,
'name': 'SupervisedUsers',
'caption': '''Supervised users''',
'policies': [
'SupervisedUsersEnabled',
'SupervisedUserCreationEnabled',
'SupervisedUserContentProviderEnabled',
],
},
{
'id': 21,
'name': 'GoogleCast',
'caption': '''Google Cast''',
'policies': [
'CastReceiverEnabled',
'CastReceiverName',
],
},
{
'id': 22,
'name': 'QuickUnlock',
'caption': '''Quick unlock''',
'policies': [
'QuickUnlockModeWhitelist',
'QuickUnlockTimeout',
],
},
{
'id': 23,
'name': 'PinUnlock',
'caption': '''Pin unlock''',
'policies': [
'PinUnlockMinimumLength',
'PinUnlockMaximumLength',
'PinUnlockWeakPinsAllowed',
'PinUnlockAutosubmitEnabled',
],
},
{
'id': 24,
'name': 'SafeBrowsing',
'caption': '''Safe Browsing settings''',
'policies': [
'SafeBrowsingEnabled',
'SafeBrowsingExtendedReportingEnabled',
'SafeBrowsingProtectionLevel',
'SafeBrowsingWhitelistDomains',
'SafeBrowsingAllowlistDomains',
],
},
{
'id': 25,
'name': 'PasswordProtection',
'caption': '''Password protection''',
'policies': [
'PasswordProtectionWarningTrigger',
'PasswordProtectionLoginURLs',
'PasswordProtectionChangePasswordURL',
],
},
{
'id': 26,
'name': 'NetworkFileShares',
'caption': '''Network File Shares settings''',
'policies': [
'NetworkFileSharesAllowed',
'NetBiosShareDiscoveryEnabled',
'NTLMShareAuthenticationEnabled',
'NetworkFileSharesPreconfiguredShares',
],
},
{
'id': 27,
'name': 'CloudReporting',
'caption': '''Cloud Reporting''',
'policies': [
'ReportVersionData',
'ReportPolicyData',
'ReportMachineIDData',
'ReportUserIDData',
'ReportExtensionsAndPluginsData',
'CloudExtensionRequestEnabled',
'CloudReportingEnabled',
],
},
{
'id': 28,
'name': 'BrowserSwitcher',
'caption': '''Legacy Browser Support''',
'policies': [
'AlternativeBrowserPath',
'AlternativeBrowserParameters',
'BrowserSwitcherChromePath',
'BrowserSwitcherChromeParameters',
'BrowserSwitcherDelay',
'BrowserSwitcherEnabled',
'BrowserSwitcherExternalSitelistUrl',
'BrowserSwitcherExternalGreylistUrl',
'BrowserSwitcherKeepLastChromeTab',
'BrowserSwitcherUrlList',
'BrowserSwitcherUrlGreylist',
'BrowserSwitcherUseIeSitelist',
],
},
{
'id': 29,
'name': 'PluginVm',
'caption': '''PluginVm''',
'policies': [
'PluginVmAllowed',
'PluginVmDataCollectionAllowed',
'PluginVmImage',
'PluginVmLicenseKey',
'PluginVmRequiredFreeDiskSpace',
'PluginVmUserId',
'UserPluginVmAllowed',
],
},
{
'id': 30,
'name': 'SAML',
'caption': '''SAML''',
'policies': [
'DeviceSamlLoginAuthenticationType',
'DeviceTransferSAMLCookies',
],
},
{
'id': 31,
'name': 'LoginScreenOrigins',
'caption': '''Login and screen origins''',
'policies': [
'DeviceLoginScreenIsolateOrigins',
'DeviceLoginScreenSitePerProcess',
],
},
{
'id': 32,
'name': 'UserAndDeviceReporting',
'caption': '''User and device reporting''',
'policies': [
'ReportDeviceVersionInfo',
'ReportDeviceBootMode',
'ReportDeviceUsers',
'ReportDeviceActivityTimes',
'ReportDeviceLocation',
'ReportDeviceNetworkInterfaces',
'ReportDeviceHardwareStatus',
'ReportDeviceSessionStatus',
'ReportDeviceGraphicsStatus',
'ReportDeviceCrashReportInfo',
'ReportDeviceOsUpdateStatus',
'ReportDeviceBoardStatus',
'ReportDeviceCpuInfo',
'ReportDeviceTimezoneInfo',
'ReportDeviceMemoryInfo',
'ReportDeviceBacklightInfo',
'ReportDevicePowerStatus',
'ReportDeviceStorageStatus',
'ReportDeviceAppInfo',
'ReportDeviceBluetoothInfo',
'ReportDeviceFanInfo',
'ReportDeviceVpdInfo',
'ReportDeviceSystemInfo',
'ReportUploadFrequency',
'ReportArcStatusEnabled',
'HeartbeatEnabled',
'HeartbeatFrequency',
'LogUploadEnabled',
'DeviceMetricsReportingEnabled',
],
},
{
'id': 33,
'name': 'WiFi',
'caption': '''WiFi''',
'policies': [
'DeviceWiFiFastTransitionEnabled',
'DeviceWiFiAllowed'
],
},
{
'id': 34,
'name': 'Kiosk',
'caption': '''Kiosk settings''',
'policies': [
'DeviceLocalAccounts',
'DeviceLocalAccountAutoLoginId',
'DeviceLocalAccountAutoLoginDelay',
'DeviceLocalAccountAutoLoginBailoutEnabled',
'DeviceLocalAccountPromptForNetworkWhenOffline',
],
},
{
'id': 35,
'name': 'DateAndTime',
'caption': '''Date and time''',
'policies': [
'SystemTimezone',
'SystemTimezoneAutomaticDetection',
]
},
{
'id': 36,
'name': 'Display',
'caption': '''Display''',
'policies': [
'DeviceDisplayResolution',
'DisplayRotationDefault',
]
},
{
'id': 37,
'name': 'ActiveDirectoryManagement',
'caption': '''<ph name="MS_AD_NAME">Microsoft® Active Directory®</ph> management settings''',
'policies': [
'DeviceMachinePasswordChangeRate',
'DeviceUserPolicyLoopbackProcessingMode',
'DeviceKerberosEncryptionTypes',
'DeviceGpoCacheLifetime',
'DeviceAuthDataCacheLifetime',
]
},
{
'id': 38,
'name': 'LegacySameSiteCookieBehaviorSettings',
'caption': '''Legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> cookie behavior settings''',
'policies': [
'LegacySameSiteCookieBehaviorEnabled',
'LegacySameSiteCookieBehaviorEnabledForDomainList',
],
},
],
'placeholders': [],
'deleted_policy_ids': [412, 476, 546, 562, 569, 578],
'highest_id_currently_used': 741,
'highest_atomic_group_id_currently_used': 38
}