یک جدول users بسازید با ستونهای id (INT AUTO_INCREMENT PRIMARY KEY)، username و password (VARCHAR)، سپس یک رکورد نمونه وارد کنید که رمز آن با تابع PASSWORD() هش شده باشد و در پایان یک کوئری بنویسید که با دریافت نامکاربری و رمز ورودی، بررسی کند آیا کاربر معتبر است یا خیر.
3.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:08 0.0
برای حل از MySQL استفاده کنید: ابتدا با CREATE TABLE جدول را بسازید، سپس با INSERT INTO رمز را با PASSWORD('plain') ذخیره کنید. برای اعتبارسنجی از SELECT ... WHERE username = '...' AND password = PASSWORD('ورودی') استفاده کنید تا مقایسه هشها انجام شود. نکته: برای جلوگیری از SQL Injection از prepared statements یا پارامترها استفاده کنید و بدانید تابع PASSWORD() برای مصارف داخلی MySQL است و در محیطهای تولیدی بهتر است از الگوریتمهای امنتری مثل SHA2 یا bcrypt بهره ببرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
طرح ساخت جدول و استفاده از PASSWORD() برای هش رمز عبور کار خوبی است اما در محیط تولیدی امن نیست. پیشنهاد میشود بهجای PASSWORD() از الگوریتمهای امنتر مثل bcrypt یا SHA2 با salt استفاده کنید. برای جلوگیری از SQL Injection حتماً از prepared statements یا پارامتر binding استفاده کنید. همچنین بهخاطر بسپارید PASSWORD() برای مصارف داخلی MySQL است و در پروژههای واقعی بهتر است از راهکارهای امنیتی بهروز استفاده شود.
گزارش