+**IMPORTANT**: This file is in active development along with the policies in Firefox. To get the policy information that corresponds to a specific release, go to https://github.com/mozilla/policy-templates/releases.
+
Policies can either be specified using the Group Policy templates or by creating a file called `policies.json`. On Windows, create a directory called `distribution` where the EXE is located and place the file there. On Mac, the file goes into `Firefox.app/Contents/Resources/distribution`. On Linux, the file goes into `firefox/distribution`, where `firefox` is the installation directory for firefox, which varies by distribution.
The content of the JSON file should look like this:
Some of the policies were originally only available on the ESR for security reasons. As of Firefox 62, these policies are available outside of the ESR, but only via JSON file or a Local Machine-based Group Policy. User-based Group Policies are not allowed to set values for these policies. The descriptions below mark such policies as "Machine only".
-### Authentication (Machine only)
+### Authentication
This policy is for configuring sites that support integrated authentication. See https://developer.mozilla.org/en-US/docs/Mozilla/Integrated_authentication for more information.
```
{
"Authentication": {
"SPNEGO": ["mydomain.com", "https://myotherdomain.com"],
"Delegated": ["mydomain.com", "https://myotherdomain.com"],
- "NTLM": ["mydomain.com", "https://myotherdomain.com"]
+ "NTLM": ["mydomain.com", "https://myotherdomain.com"],
+ "AllowNonFQDN": {
+ "SPNEGO": true,
+ "NTLM": true
+ }
}
}
}
If Value is set to false, tracking protection is disabled and locked in both the browser and private browsing.
-If Value is set to true, private browsing is enabled by default in both the browser and private browsing and you can choose set the Locked value if you want to prevent the user from changing it.
+If Value is set to true, tracking protection is enabled by default in both the browser and private browsing and you can choose set the Locked value if you want to prevent the user from changing it.
```
{
"policies": {
}
}
```
+### HardwareAcceleration
+This policy disables hardware acceleration by locking the preference layers.acceleration.disabled to true.
+```
+{
+ "policies": {
+ "HardwareAcceleration": false
+ }
+}
+```
### NoDefaultBookmarks
This policy prevents the default bookmarks or the Smart Bookmarks (Most Visited, Recent Tags) from being created. Note: this policy is only effective if used before the first run of the profile.
```
"FlashPlugin": {
"Allow": ["http://example.org/"], /* Sites on the allow list do not override Flash being completely disabled */
"Block": ["http://example.edu/"],
- "Default": [true|false], /* If this is set to true, flash is always enabled. If it is set to false, Flash is never enabled */
+ "Default": [true|false], /* If this is set to true, Flash is always enabled. If it is set to false, Flash is never enabled */
"Locked": [true|false]
}
}
}
}
```
-### SearchBar (Machine only)
+### SearchBar
This policy can be used to determine if the search bar is separate or combined with the URL bar.
```
{
}
}
```
-### Search Engines (Machine only)
-This policy allows you to add new search engines, as well as set the default and prevent the install of search engines from web pages. Only Name and URLTemplate is required.
+### Search Engines (This policy is only available on the ESR.)
+This policy allows you to add new search engines, remove or hide search engines, as well as set the default and prevent the install of search engines from web pages. Only Name and URLTemplate is required.
```
{
"policies": {
}
],
"Default": "Name of engine",
- "PreventInstalls": [true|false]
+ "PreventInstalls": [true|false],
+ "Remove": ["Twitter", "Wikipedia (en)"]
+ }
+ }
+}
+```
+### Permissions
+This policy allows you to change the permissions associated with camera, microphone, location, and notifications
+```
+{
+ "policies": {
+ "Permissions": {
+ "Camera": {
+ "Allow": ["http://example.org/"], /* Origins where camera access is allowed by default */
+ "Block": ["http://example.org/"], /* Origins where camera access is blocked by default */
+ "BlockNewRequests": [true|false], /* Block new requests to access the camera */
+ "Locked": [true|false] /* Don't allow the user to change the camera preferences */
+ },
+ "Microphone": {
+ "Allow": ["http://example.org/"], /* Origins where microphone access is allowed by default */
+ "Block": ["http://example.org/"], /* Origins where microphone access is blocked by default */
+ "BlockNewRequests": [true|false], /* Block new requests to access the microphone */
+ "Locked": [true|false] /* Don't allow the user to change the microphone preferences */
+ },
+ "Location": {
+ "Allow": ["http://example.org/"], /* Origins where location access is allowed by default */
+ "Block": ["http://example.org/"], /* Origins where location access is blocked by default */
+ "BlockNewRequests": [true|false], /* Block new requests to access location */
+ "Locked": [true|false] /* Don't allow the user to change the location preferences */
+ },
+ "Notifications": {
+ "Allow": ["http://example.org/"], /* Origins where sending notifications is allowed by default */
+ "Block": ["http://example.org/"], /* Origins where sending notifications is blocked by default */
+ "BlockNewRequests": [true|false], /* Block new requests to send notifications */
+ "Locked": [true|false] /* Don't allow the user to change the notification preferences */
+ }
}
}
}