Списки приватности
Списки приватности (англ. Privacy List) - это специальная функция, позволяющая блокировать или разрешать передачу данных с различных JID'ов. Списки приватности можно считать брандмауэром в Jabber. Списки приватности можно также сравнить с игнор-листом в ICQ, однако, в отличие от него, списки приватности имеют гораздо большую гибкость.
Поддержка списков приватности не является обязательной, поэтому не во всех серверах и клиентах Jabber они реализованы. Серверы, на которых работает популярный ejabberd, поддерживают списки приватности. Популярные клиенты (например, Bombus, Miranda, Tkabber, последние версии Psi) также поддерживают.
Как это работаетПравить
На сервере может быть сохранено несколько списков приватности, однако только один может быть активен. Возможно изменение активного списка без переподключения, также возможно изменение списка, который будет активен сразу после подключения. При получении каких-либо данных сервер проверяет их на соответствие правилам из активного списка. После проверки данные либо передаются клиенту, либо сбрасываются без передачи клиенту, в зависимости от того, что указано в правиле.
СтруктураПравить
Зайдем в меню редактирования списков приватности.
В появившемся окне мы увидим несколько стандартных списков. Как правило, стандартным активным списком является blocked, в котором разрешены все данные от любых контактов. Выберем его и начнем редактирование. Появится список правил. Ниже написаны значения параметров:
- Источник. В этом параметре можно указать JID, к которому относится правило. Также можно указать целую группу, сделать правило зависимым от подписки или отнести правило ко всем контактам.
- Действие. Тут все просто - разрешить передачу данных до клиента или сбрасывать их на месте.
- Тип данных. В этом правиле можно задать типы данных, на которое оно влияет. Ниже приведен список типов данных:
- Message - сообщения.
- Presence-in - прием статусов от других контактов.
- Presence-out - посылка своего статуса другим контактам.
- Iq - различные информационные запросы.
Итак, в списке blocked по умолчанию установлено единственное правило:
Если источник любой то разрешить все типы данных
ПрактикаПравить
Ниже перечислены интересные применения списков приватности.
Устраняем статус-флудПравить
Спамодавка для транспортовПравить
Скрываем свой клиент и ОСПравить
В Jabber можно посмотреть клиент и ОС, используемые Вами, подобно тому, как это сделано в ICQ. Однако это можно запретить. Для запросов клиента и ОС используются тип данных Iq. Соответственно, необходимо заблокировать этот тип данных для всех или только некоторых контактов.
Одна из реализаций статуса "невидимый"Править
Создаём список, в котором для всех контактов запрещаем "Presence-out". Чтобы при этом реализовать вариант "всегда видим для контакта имярек", самым первым ставим правило "для контакта имярек разрешить Presence-out".
ПроблемыПравить
- Сервер ejabberd отправляет запросы авторизации, даже если заблокированы все типы данных. Это может быть проблемой, если списки приватности используются для блокирования спама с транспортов.