Společnost nedávno použila extmail+postfix jako řešení pro zasílání pošty. V existujícím systému OA se zaměstnanci musí při přihlášení do OA přihlásit se svými legálními účty, ale tímto způsobem jsou vyžadovány alespoň dva nezávislé účty a hesla, což má určitý dopad na pracovní efektivitu.
Proto jsme se rozhodli upravit stávající systém přihlášení do OA systému tak, aby používal stejné údaje o účtu a hesle jako extmail, což má výhodu, že zaměstnanci se mohou přihlásit do OA systému, pokud si heslo e-mailu pamatují, což může výrazně zlepšit efektivitu práce.
Po pochopení Extmail používá mysql k ukládání informací o e-mailovém účtu a heslo tabulky poštovních schránek ukládá šifrované heslo, ale extmail podporuje více šifrovacích metod. Pro podrobnosti můžete zkontrolovat nastavení SYS_CRYPT_TYPE položky v souboru /var/www/extsuite/extman/webman.cf.
Můj systém používá šifrování md5crypt a formát hesla je: $1$k0Q4EA49$XXXXXXXXXXXXXXXXXX. Pokud původní heslo již není zaznamenáno v tabulce poštovních schránek, jak mohu ověřit, že uživatel heslo zadal správně?
Po opakované kontrole použití kryptofunkčních funkcí v PHP manuálu jsem zjistil, že Crypt podporuje různé metody hash šifrování, proto si prosím podrobně přečtěte konkrétní použití kryptofunkcí v PHP manuálu.
MD5Crypt má sůl, která se vyznačuje tím, že tato sůl je zaznamenána v šifrovaném šifrovaném textu, tedy v symbolu $ a znakech, které obsahuje, a sůl v výše uvedeném výsledku šifrování je $1$k0Q4EA49$, takže implementace šifrovacího algoritmu pro původní heslo v PHP je 123456 a sůl je $1$k0Q4EA49$ následovně:
<?php echo crypt('123456', '$1$k0Q4EA49$');
Output $1$k0Q4EA49$WcjktPPYOSyhI77n8BPPr.
Jakmile tento princip poznáme, můžeme integrovat ověřování informací o účtech schránky extmail do jakéhokoli našeho systému.
Navíc šifrovací metoda linuxových /etc/shadow a grubových md5-crypt je přesně stejná jako výše uvedený princip, pokud chcete násilně změnit heslo účtu na 123456 bez použití jiných nástrojů, můžete nastavit druhé pole odpovídajícího účtu v souboru /etc/shadow na $1$k0Q4EA49$WcjktPPYOSyhI77n8BPPr. |