Skip to content

Deploying uBlock Origin: configuration

iam-py-test edited this page Mar 13, 2024 · 22 revisions

Back to Deploying uBlock Origin


uBlock Origin (uBO) supports configuration through central policies. See browser documentation for administrators:

The documented settings below are only available with uBO version 1.33.0 and above.

userSettings

The purpose of the userSettings property is to set the values of various user settings (more specifically, to modify these variables).

Each entry in the array consists of a pair of name-value strings. Each name string must be a supported user setting, and each value string must correctly resolve to a supported value.

Every valid entry gets used to overwrite the corresponding default user setting at launch time.

Example:

{
    "userSettings": [
        [ "contextMenuEnabled", "false" ],
        [ "dynamicFilteringEnabled", "false" ]
    ]
}

advancedSettings

The advancedSettings property is to set the values of various advanced settings.

Each entry in the array consists of a pair of name-value strings. Each name string must be a valid advanced setting, and each value string must correctly resolve to a supported value.

Every valid entry will get used to overwrite the corresponding default advanced setting and become read-only. The user will not be able to change it.

Example:

{
    "advancedSettings": [
        [ "disableWebAssembly", "true" ]
    ]
}

disableDashboard

Set to true to prevent access to uBO's dashboard.

disabledPopupPanelParts

An array of strings where each string refers to a part of the popup panel that gets removed. Each supported component and its name:

  • globalStats: remove access to "Blocked since install" statistic.
  • basicTools: remove access to basic tools.
  • extraTools: remove access to per-site switches.
  • overviewPane: remove access to the overview pane.

toOverwrite

The properties in the toOverwrite branch will wholly replace the corresponding local settings. Currently, the following properties are supported:

filters

The filters property is an array of strings that represent all the lines making the text to use as the content of the "My filters" pane.

filterLists

The filterLists property is an array of strings, where each one is a token that identifies a list to enable by default. To activate a stock filter list, this is the token identifying the list per the contents of assets.json. For an external list not found in assets.json, the token is the URL of the filter list.

Use the token user-filters in your list of filter lists to enforce the filters in the "My filters" pane.

For reference, the following array corresponds to the default list of filter lists enabled in uBO by default:

[
  "user-filters",
  "ublock-filters",
  "ublock-badware",
  "ublock-privacy",
  "ublock-abuse",
  "ublock-unbreak",
  "easylist",
  "easyprivacy",
  "urlhaus-1",
  "plowe-0"
]

Additionally, according to the current locale, one or more regional lists may be enabled.

trustedSiteDirectives

The trustedSiteDirectives property is an array of strings, each of which must resolve into a valid trusted-site directive, used to dictate where uBO must be disabled.

All directives will replace the local trusted-site rules, including the built-in ones.

See the documentation on how to create valid trusted-site directives: "How to mark a web site as trusted"

toAdd

The properties in the toAdd branch will append to the already present local settings. Currently, the following properties are supported:

trustedSiteDirectives

The trustedSiteDirectives property is an array of strings, each of which must resolve into a valid trusted-site directive, used to dictate where uBO must be disabled.

Here is an example of how adding example.com and example.org would look like for managed storage on Chromium/Linux:

xxxxx@xxxxx:~$ cat /etc/chromium/policies/managed/ubo.json
{
  "3rdparty": {
    "extensions": {
      "cjpalhdlnbpafiamejdnhcphjbkeiagm": {
        "toAdd": {
          "trustedSiteDirectives": [
            "example.com",
            "example.org"
          ]
        }
      }
    }
  }
}

The directives will get appended to the local ones.

Here is the same example for Firefox:

{
  "name": "uBlock0@raymondhill.net",
  "description": "_",
  "type": "storage",
  "data": {
    "toAdd": {
      "trustedSiteDirectives": [
        "example.com",
        "example.org"
      ]
    }
  }
}

See the documentation on how to create valid trusted-site directives: "How to mark a web site as trusted"

Clone this wiki locally