WP Manifestindependent plugin directory
manifest / security / wp-prohibition

WP Prohibition

Блокирует регистрацию (стандартную WordPress и WooCommerce), если email не с российского домена

by Сергей Солошенко (RuCoder) · github.com/rucoder-sudo/wp-prohibition · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/rucoder-sudo/wp-prohibition/archive/refs/heads/main.zip

Readme

WP Prohibition

Плагин для WordPress, который запрещает регистрацию и вход на сайте (включая WooCommerce и /wp-admin/) с email-адресов иностранных почтовых сервисов, согласно Федеральному закону от 31.07.2023 № 406-ФЗ «О внесении изменений в Федеральный закон "Об информации, информационных технологиях и о защите информации"».

Разрешены только российские почтовые домены: mail.ru, yandex.ru, rambler.ru, bk.ru и другие домены .ru / .su / .рф.

Возможности

  • Регистрация — блокируется стандартная регистрация WordPress и регистрация в WooCommerce, если email не относится к российскому домену.
  • Вход — блокируется вход через wp-login.php, /wp-admin/, личный кабинет WooCommerce и любую кастомную форму, использующую стандартный механизм авторизации WordPress (wp_signon() / wp_authenticate()).
  • Жёсткая проверка сессий — если пользователь с иностранной почтой уже был зарегистрирован до установки плагина и его сессия активна, при следующем заходе в /wp-admin/ он будет автоматически разлогинен.
  • Страховочный механизм — если пользователя с недопустимым доменом всё же удалось создать (например, через нестандартную форму, которая не проверяет registration_errors), плагин немедленно удаляет такого пользователя и блокирует запрос.
  • Белый список — можно вручную добавить дополнительные разрешённые домены (в том числе через wildcard *.example.ru).
  • Исключение для администраторов — по умолчанию администраторы сайта не проверяются, чтобы исключить риск случайной самоблокировки. Настройка отключаема.
  • Аварийное отключение — константа WP_PROHIBITION_DISABLED в wp-config.php мгновенно отключает плагин, если что-то пошло не так.
  • Журнал — все заблокированные попытки регистрации/входа фиксируются с датой, email, доменом и IP-адресом.

Установка

  1. Загрузите папку wp-prohibition в /wp-content/plugins/.
  2. Активируйте плагин через «Плагины» в админке WordPress.
  3. При активации плагин автоматически добавит домен email текущего администратора в список разрешённых — это защищает от блокировки самого себя сразу после включения.
  4. Перейдите в WP Prohibition в главном меню админки и проверьте настройки.

Аварийное отключение

Если доступ к сайту оказался заблокирован (например, из-за ошибки в настройках), добавьте в wp-config.php:

define( 'WP_PROHIBITION_DISABLED', true );

Плагин отключится полностью, независимо от настроек в базе данных.

Правовое основание

Ограничение установлено Федеральным законом от 31.07.2023 № 406-ФЗ «О внесении изменений в Федеральный закон "Об информации, информационных технологиях и о защите информации"».

Changelog

1.0.0

  • Первый релиз: блокировка регистрации и входа (включая WooCommerce и /wp-admin/) с иностранных почтовых доменов.

Разработчик: Сергей Солошенко (RuCoder) Связаться со мной:

Read the full README on GitHub →