EnforceStrongPassword

Материал из Викисфера
Перейти к навигации Перейти к поиску

EnforceStrongPassword — устаревшее расширение MediaWiki (функциональность расширения интегрирована в движок).

Что делает это расширение ?[править | править код]

Это расширение устанавливает дополнительные требования для паролей. (1 число, 1 заглавная, 1 «обычная» буква и т. д.)

Использование[править | править код]

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

Вы можете изменить системное сообщение MediaWiki:Passwordtooshort для отражения дополнительных требований к паролям.

Установка[править | править код]

Hook должен быть добавлен в User->isValidPassword (Изменение было добавлено в багзиллу и применено для MW 1.10 в rev:20195) Измените includes/User.php->isValidPassword на:

  static function isValidPassword( $password ) {
    global $wgMinimalPasswordLength;
  
    //Reset the result variable
    $result = null;
  
    // Call hook. If hook REPLACES the rest of the code, (wfRunHooks call returns false)
    // just return the result and be done with it.
    if( !wfRunHooks( 'isValidPassword', array( $password, &$result ) ) ) return $result;
  
    // If hook does not replace the rest of the code, but the hook sets the result
    // as false, return false.
    if ($result === false) return false; 
  
    // If we get to this point, perform the default check.
    return strlen( $password ) >= $wgMinimalPasswordLength

Изменения в LocalSettings.php[править | править код]

Добавить это:

$wgMinimalPasswordLength = 6; 
require_once("extensions/StrongPassword.php");
$wgHooks['isValidPassword'] [] = 'isStrongPassword';

Код[править | править код]

Сохраните это в: extensions/StrongPassword.php

<?php

$wgExtensionCredits['other'][] = array(
        'name' => 'EnforceStrongPassword',
        'version' => '0.2',
        'author' => 'Ger Apeldoorn',
        'url' => 'http://www.mediawiki.org/wiki/Extension:EnforceStrongPassword',
        'description' => 'Enforces a strong password.',
);


function isStrongPassword($password, &$return) {

  //Remember to set this variable in LocalSettings.php
  global $wgMinimalPasswordLength;
  if(
    ctype_alnum($password) // numbers & digits only
    && strlen($password)>=$wgMinimalPasswordLength // at least xx chars
    && strlen($password)<17 // at most 16 chars
    && preg_match('`[A-Z]`',$password) // at least one upper case
    && preg_match('`[a-z]`',$password) // at least one lower case
    && preg_match('`[0-9]`',$password) // at least one digit
    ){
    // valid
    $return = true;
   } else {
    // not valid
    $return = false;
   }

   // This hook REPLACES the original code.
  return false;

}
EnforceStrongPassword относится к темам:
1
MediaWiki 
Версии MediaWiki до 1.11.11.21.31.41.51.61.71.81.91.101.111.121.131.141.151.161.171.181.191.201.211.221.231.241.251.261.271.281.291.301.311.321.331.341.351.361.371.381.391.401.41 
Основные разработчики Аарон ШульцБрайон ВибберДаниэль КинзлерМагнус МанскеМаксим СеменикТим ЛакиаТим СтарлингРоберт КрушЭвар Бьярмасон 
Темы оформления AuroraBluecloudCavendishCologneBlueCycloneMonacoMonobook (RealBookModern) • OasisQuartz Vector (Vectorata) • Ventus 
Действия и функции РедактированиеПравка (счётчик) • ДиффМалое изменениеПредварительный просмотрФильтр злоупотребленийСтраница википроекта (подстраница) • СтатьяШаблонФайлИсторияОбсуждениеПереименование страницыПараметры переименованияЗащита страниц (параметрычастичнаяполнаякаскадная) • Удаление/Восстановление страницПараметры удаленияПеренаправление (двойныеподавление) • Список наблюденияОбъединение страницРазделение страницСкрытиеПатрулированиеСсылки сюдаСтабилизацияБлокировка (авто-, глобальная, параметры, причина) • Разблокировка (параметры) • Права участниковРегистрацияПереименование учётной записиУзурпацияОбъединение учётных записейЗагрузка файловОтклонение правкиОтмена правкиБыстрый откатВикипочтаЕдиная учётная записьСвежие правкиВклад (удалённый) • Спам-листЗавершение сеансаПинг 
Пространство имён Основное пространствоОбсуждениеШаблонКатегорияУчастникФайлСправкаProjectSpecialMediaWiki 
Расширения AbuseFilterAntiSpoofArticle Feedback ToolCategoryTreeCentralAuthCentralNoticeCharInsertCheckUserCiteCleanupSiteCodeReviewCollectionCommentsCommunityVoiceConfirmEditContactPageDeleteBatchDismissableSiteNoticeDraftsDumpHTMLDynamicPageListEasyTimelineEmailCaptureEmbedVideoExpandTemplatesExtensionDistributorFixedImageFlaggedRevsGadgetsGlobalBlockingGlobalUsageHTTP302FoundImageMapInputBoxLabeled Section TransclusionLiquidThreadsLocalisationUpdateLockdownLucene-searchMiniDonationMWSearchNewUserMessageNukeOAIRepositoryOATHAuthOggHandlerOpenSearchXmlParserFunctionsPdfHandlerPoemProofread PageQuizRenameuserRevisionDeleteSecurePollSimpleAntiSpamSimpleSurveySiteMatrixSkinPerPageSlippyMapSpamBlacklistStalkerLogSubPageList3SyntaxHighlightTitleBlacklistTitleKeyTorBlockTrustedXFFUploadBlacklistUploadWizardUserMergeVisualEditorWikidiffWikidiff2WikiHiero 
Архивированные расширения AntiBotBoardVoteClientSideCrosswiki BlockingEnforceStrongPasswordGiveRollbackOversightPassword Reset 
Разное AllMessagesFavicon.icoHTML в MediaWikiMediaWiki.orgMediaWiki FAQВнутренняя ссылкаКороткая ссылка-перенаправлениеМатематические формулыНастройки конфигурацииНовые файлыСистемный администраторСписок файловWiki.pngГаджетSidebarStatisticsLocalSettings.phpСкрипты обслуживания