|
PmWikiRu / администраторам (основы) У PmWiki имеется встроенная поддержка защиты паролем различных областей вики сайта. Пароли могут быть назначены на отдельные страницы, на Вики Группы или весь вики сайт. Обратите внимание, что описанный здесь механизм защиты паролем всего лишь малая часть всей системы безопасности(и в целом вики), более подробное обсуждение смотри на странице Безопасность. Как описано в разделе Пароли, авторы могут с помощью PmWiki устанавливать пароли как на отдельные страницы, так и на ВикиГруппы. Однако, как описано далее, администраторы вики ко всему прочему могут устанавливать пароли в файлах местной настройки. ОсновыPmWiki поддерживает несколько уровней доступа к страницам вики: read пароли позволяют просматривать содержимое страниц вики
edit пароли управляют редактированием и изменением страниц вики
attr пароли указывают кто имеет право устанавливать пароли на страницы (и, потенциально, другие атрибуты)
если закачка разрешена, upload пароли управляют закачкой файлов
И наконец, есть ещё пароль По умолчанию, PmWiki имеет следующие настройки паролей:
Пароль Смотри страницу Пароли подробно описывающую установку паролей на страницы и группы. Продолжение этой страницы описывает установку паролей для всего сайта с помощью файла local/config.php. Установка паролей для всего сайтаПервое, что должен настроить админ -- это пароль всего сайта Заметьте, что вызов crypt() здесь необходим -- PmWiki внутри хранит и обрабатывает все пароли в виде зашифрованных строк. О подробностях об устранении читаемых паролей из файлов настроек смотри ниже раздел о шифровании. Для настройки редактирования всего сайта только теми, что знает "edit" пароль добавьте строку подобную следующей в local/config.php: Аналогично вы можете установить пароли
что говорит, что оба пароля "alpha" и "beta" позволяют чтение страниц, но только пароль "beta" позволяет кому-либо редактировать страницу. Впоследствии PmWiki запоминает все пароли введённые во время текущей сессии. Личность не введшая какой-либо пароль не сможет просмотреть страницы. Индивидуальная авторизация (имя/пароль регистрация, AuthUser)В отличии от множества систем использующих для доступа к страницам индивидуальную авторизацию (т.е. у каждого пользователя отдельное имя и пароль), PmWiki изначально пользуется системой паролей. В основном защита только паролем часто проще в поддержании, потому что она не требует административной нагрузки для создания учётных записей пользователей, восстановления забытых паролей, управления правами пользователей. Однако, сценарий PmWiki authuser.php добавляет к системе паролей возможность доступа к страницам по комбинации имени пользователя и пароля. О подробностях по управлению доступа к страницам по идентификации пользователя смотри AuthUser. Дыры безопасности ...Администратору стоит очень внимательно планировать применение паролей во избежание открытия дыр в системе безопасности по невнимательности. Если ваша вики открыта (кто угодно может читать и править), это казалось бы не беспокоит, за исключением случая злобного или запутавшегося пользователя могущего установить пароль чтения на группу и тем самым сделать её недоступной для остальных пользователей. По наикрайнейшей мере, даже открытая вики должна иметь для всего сайта пароли "admin" и "attr" установленые в файле config.php. Распространяемый с PmWiki файл sample-config.php указывает, что группы PmWiki и Main имеют изначально запертый "attr", но если кто-либо создаст новую группу, то "attr" отопрётся. В таком случае администраторам надо помнить об установке пароля "attr" для каждой новой группе (по необходимости). Простейшее решение -- это вставить следующие строки в config.php: $DefaultPasswords['admin'] = crypt('ваш-admin-пароль'); $DefaultPasswords['attr'] = crypt('ваш-admin-пароль'); Шифрование паролей в config.phpУ использования функции crypt() для установки паролей в файле config.php есть один недостаток -- кто-нибудь может просмотреть файл и увидеть незашифрованный пароль. Например, если config.php содержит то пароль "mysecret" явен для других смотрящих. Однако, администратор вики может получить и использовать зашифрованную форму пароля напрямую воспользовавшись Строка полученая из Обратите внимание, что в зашифрованной форме ключевое слово crypt и скобки удалены, так как пароль уже зашифрован. Кроме того, зашифрованный пароль дожен быть заключён в одиночные апострофы. В данном примере пароль всё ещё " Снятие пароляЧтобы полностью удалить с сайта, такой как по умолчанию закрытый пароль для закачек, просто установите в значение пустой строки: Также вы можете использовать специальный пароль "nopass"(определяемый переменной $AllowPassword) через действие Отмена или аннулирование паролейЕсли пароль скомпрометирован и администратор вики хочет быстро аннулировать всех пользователей с таким паролем на сайте, то проще в файле local/config.php добавить следующие строки: $ForbiddenPasswords = array('secret', 'tanstaafl'); if (in_array(@$_POST['authpw'], $ForbiddenPasswords)) unset($_POST['authpw']); Это не допускает принятие от кого-либо "secret" и "tanstaafl" как действующего пароля авторизации, независимо от того пользуются им страницы или нет. Также смотри
Защита действий (пример)Каждое действие может быть защищено паролем. Авторы Рецептурника снабжающие сценарии собственными действиями также могут использовать такой приём, но я упростил пример до (по умолчанию) не защищённого Для этого есть несколько решений:
<< Настройка отдельных групп | Документация | AuthUser >> Перевод страницы PmWiki.PasswordsAdmin -
Оригинал перевода PmWikiRu.PasswordsAdmin -
Ссылаются |