report/security/report security check passwordsaltmain

Zo stránky MoodleDocs
Prejsť na:navigácia, hľadať

Čo je salt pri heslách?

Heslá sú v Moodle uložené v kryptovanom tvare nazvanom 'md5 hash'.

Salt hesiel je spôsob zlepšenia bezpečnosti hesiel pridanín náhodného reťazca znakov k heslám predtým, ako je vypočítaný ich md5 hash, ktorý spôsobí, že je ťažšie ich rozlúštiť (čím je náhodný reťazec dlhší, tým je to ťažšie).

Povolenie salt na heslá

Nastavenie salt pre heslá je aktivované pridaním nasledovného riadku do súboru config.php:

$CFG->passwordsaltmain = 'nejaky dlhy nahodny retazec uvedeny tu s velkym poctom znakov';

Náhodný reťazec by mal obsahovať písmená, čísla a iné znaky. Možno použiť Moodle salt generátor na získanie vhodne dlhého náhodného reťazca. Doporučuje sa reťazec minimálnej dĺžky 40 znakov.

Poznámka: Z dôvodov bezpečnosti je jediným spôsobom povolenia saltovania hesiel cez úpravu súboru cconfig.php - nie je to možné nastaviť pomocou Moodle rozhrania.

Znema saltu

Ak je z ľubovoľného dôvodu potrebné zmeniť salt, starý reťazec musí v súbore config.php ponechaný spolu s novým.

passwordsaltmain musí byť zmenený na passwordsaltalt1 (presne takto) nasledovne:

$CFG->passwordsaltalt1 = 'stary dlhy retazec';
$CFG->passwordsaltmain = 'novy dlhy retazec';

Ak v budúcnosti zmeníte opäť salt, musíte zachovať všetky predošlé určitý čas (až kým sa všetci používatelia aspoň raz neprihlásili, takže už používajú nový salt). Môžete používať $CFG->passwordsaltalt2, $CFG->passwordsaltalt3, atď pre maximlne 20 predošlých.

Upozornenie: Ak zmeníte salt a nenecháte si starý v konfiguračnom súbore, nebudete sa môcť opäť prihlásiť!

Zablokovanie saltovania hesla

Poznámka: Nedoporučuje sa! Ak to raz zapnete, mali by ste nechať salt povolený.

Pre zablokovaie saltovania hesla v Moodle, vymažte, zapoznámkujte alebo zmeňte hodnotu premennej passwordsaltmain na "empty"

// PRÍKLAD: nastavenie na prázdny reťazec
$CFG->passwordsaltmain = '';


// PRÍKLAD: zapoznámkovanie
/*
$CFG->passwordsaltmain = '';
*/

Ale to nie je všetko! Musíte tiež presunúť starý salt na "alt" hodnotu, rovnako, ako pri zmene saltu vyššie:

$CFG->passwordsaltalt1 = 'stary dlhy retazec';
$CFG->passwordsaltmain = '';

Importovanie používateľov z iného Moodle portálu

Ak importujete používateľov z iného Moodle portálu, ktorý používa saltovanie, budete potrebovať hodnotu saltu pridať tento k vašim do súboru config.php. Takto je možné pridať až do 20 iných reťazcov salt

$CFG->passwordsaltalt1, $CFG->passwordsaltalt2, ...  $CFG->passwordsaltalt20

Ako funguje salt hesla?

Ak za kontroluje heslo, program hľadá CFG->passwordsaltmain. Ak je nastavený, pridá k nemu heslo používateľa pred výpočtom md5 hash.

Ak súhlasí md5 hash používateľského hesla bez saltu, predpokladá sa, že salt je teraz použitý pri tomto hesle po prvý raz od posledného prihlásenia používateľa. Heslo používateľa je zmenené použitím saltu. Heslo je zasaltované počas prvého loginu potom, čo bol salt v nastavení súboru config.php.

Ak nie je validné heslo bez saltu alebo s hlavným saltom, program skontroluje maximálne 20 dodatočných saltov.

Ak zmeníte salt, potom je potrebné si pamätať aj starý, aby sa používatelia so starým saltom mohli tiež prihlásiť. Na to slúži jedna z 20 dodatočných pozícií.

Ak sa prihlási používateľ so starým saltom, prvé overenie s novým saltom zlyhá. Potom program skontroluje alternatívne salty.

Ak je používateľ potvrdený, systém aktualizuje hashované heslo používateľa s najnovším saltom.