Информация в этой статье касается управляемых браузеров Chrome и устройств с ChromeOS.
Чтобы разрешить или запретить доступ к определенным сайтам, администратор может добавить их в списки запрещенных или разрешенных URL.
Формат фильтров
В правилах URLBlocklist и URLAllowlist используется следующий формат фильтров:
[схема://][.]хост[:порт][/путь][@запрос]
Поле | Описание |
схема (необязательно) |
Это необязательное поле. Указанное значение должно заканчиваться символами ://. Подробнее…. Регистр не учитывается. |
хост (обязательно) |
Действительное имя хоста или IP-адрес. Также может быть указано специальное значение: *. Перед указанным значением можно поставить символ . (точка), чтобы не учитывать субдомены. Регистр не учитывается. |
порт (необязательно) | Действительный порт (значение от 1 до 65535). |
путь (необязательно) |
Можно указать любую строку. Регистр учитывается. |
запрос (необязательно) |
Перечень токенов "ключ-значение" и "только ключ", разделенных символом &. Токены "ключ-значение" разделяются символом =. Чтобы задать сопоставление по префиксу, в конце маркера запроса укажите символ *. Порядок маркеров значения не имеет. Регистр учитывается. |
Доступные схемы
Можно использовать любую из стандартных схем или настроить собственную. Поддерживаются следующие стандартные схемы:
- about;
- blob;
- content;
- chrome;
- cid;
- data;
- file;
- filesystem;
- gopher;
- http;
- https;
- javascript;
- mailto;
- ws;
- wss.
Любые другие схемы обрабатываются как пользовательские. При этом для них разрешены только шаблоны схема:* и схема://*, что позволяет охватить все URL. Значения для схемы и хоста указываются без учета регистра, а для пути и запроса регистр учитывается.
Примеры схем
- Поддерживаемые стандартные схемы:
- http://example.com соответствует адресам вида HTTP://Example.com, http://example.COM и http://example.com.
- http://example.com/path?query=1 не соответствует адресам вида http://example.com/path?Query=1 или http://example.com/Path?query=1, но соответствует адресу http://Example.com/path?query=1.
- Пользовательские схемы
- Шаблоны пользовательский://* или пользовательский:* действительны и соответствуют адресам вида пользовательский:приложение.
- Шаблоны пользовательский:приложение и пользовательский://приложение недействительны.
Исключения для формата URL
Формат фильтров очень похож на формат URL. Применяются следующие исключения:
- Можно добавлять поля user:pass, но они будут игнорироваться. Пример: http://user:pass@example.com/pub/bigfile.iso.
- Если добавить разделитель #, он будет игнорироваться вместе с указанными после него значениями.
- Вместо имени хоста можно ввести символ *. Также можно добавить символ . (точка) в качестве префикса.
- Если в имени хоста в качестве суффикса используются символы / или . (точка), они будут игнорироваться.
Выбор фильтра
К URL применяется фильтр, имеющий самое близкое соответствие.
Примечания
- Подстановочный знак (*) соответствует всем хостам и используется для поиска в последнюю очередь.
- Если на шаге 4 используются фильтры запрета и разрешения с одинаковыми длиной пути и числом маркеров запроса, приоритет отдается фильтру разрешения.
- Если в качестве префикса хоста в фильтре используется символ . (точка), фильтроваться будут только точные совпадения. Например:
- example.com соответствует адресам вида example.com, www.example.com и sub.www.example.com.
- .www.example.com соответствует только адресу www.example.com.
Процесс выбора фильтра
- Выбираются фильтры, в которых обнаружены самые длинные совпадения с адресом хоста, кроме тех, где не совпадает схема или номер порта.
- Выбираются фильтры, в которых обнаружены самые длинные совпадения пути.
- Выбираются фильтры, в которых обнаружены самые длинные совпадения маркеров запроса.
- Если на этом этапе не осталось ни одного подходящего фильтра, из адреса хоста удаляется крайний левый субдомен, после чего процесс повторяется с шага 1.
- Если какой-то из фильтров ещё доступен, принимается решение о запрете или разрешении, соответствующее этому фильтру. Если не обнаружено соответствия ни одному из фильтров, запрос по умолчанию разрешается.
Примеры списков запрещенных URL
Запись в черном списке URL | Результат |
---|---|
example.com | Запрещает все запросы для example.com, www.example.com и sub.www.example.com. |
http://example.com | Блокирует все HTTP-запросы для домена example.com и всех его субдоменов, но разрешает HTTPS-запросы. |
https://* | Запрещает все HTTPS-запросы для всех доменов. |
mail.example.com | Запрещает запросы для mail.example.com, но разрешает их для www.example.com и example.com. |
.example.com | Запрещает запросы для домена example.com, но не для его субдоменов, например example.com/docs. |
.www.example.com | Запрещает запросы для домена www.example.com, но не для его субдоменов. |
* | Блокирует все запросы, кроме исключений из черного списка, в том числе схемы URL, например http://google.com, https://gmail.com и chrome://policy. |
*:8080 | Запрещает все запросы на порт 8080. |
example.com/stuff | Запрещает все запросы для домена example.com/stuff и его субдоменов. |
192.0.2.1 | Запрещает запросы на этот IP-адрес. |
?v *?video=* *?video=100* |
Запрещает все запросы, содержащие значение ?video=100. |
*?a=1&b=2 |
Запрещает все запросы, содержащие следующие значения: ?b=2&a=1 ?a=1&b=2 ?a=1&c=3&b=2 |
youtube.com/watch?v=xyz |
Запрещает видео на YouTube с идентификатором xyz. При запрете достаточно любого вхождения пары "ключ-значение". При разрешении каждому вхождению этого ключа должно соответствовать значение. Пример Разрешение адреса youtube.com/watch?v=V2 не приводит к разрешению адреса youtube.com/watch?v=V1&v=V2, разрешая при этом адрес youtube.com/watch?v=V2&v=V2. |
Как найти соответствие для адреса http://mail.example.com/mail/inbox
- Найдите фильтры для mail.example.com, а затем перейдите к шагу 2. Если поиск не дал результатов, попробуйте значения example.com, com и, наконец, "".
- Удалите из списка фильтры, в которых используется схемы, отличные от http.
- Удалите из списка фильтры, в которых указаны точные номера портов, отличные от 80.
- Удалите из списка фильтры, в которых в качестве префикса пути не используется значение /mail/inbox.
- Выберите и примените фильтр с самым длинным префиксом пути. Если такого фильтра нет, вернитесь к шагу 1 и попробуйте следующий субдомен.
Как разрешить небольшой перечень сайтов
- Заблокируйте все запросы с помощью *.
- Разрешите выбранные сайты: mail.example.com, myownpersonaldomain.com, google.com.
Как запретить доступ к произвольному домену (кроме почтового сервера, использующего протокол HTTPS, и главной страницы)
- Заблокируйте example.com.
- Разрешите https://mail.example.com.
- Разрешите .example.com и, если необходимо, .www.example.com.
Как запретить доступ к YouTube (кроме выбранных видео)
- Заблокируйте youtube.com.
- Разрешите youtube.com/watch?v=V1.
- Разрешите youtube.com/watch?v=V2.