@lemonlimelike

Как лучше делать авторизацию?

Пишу сайт, и уже сделал регистрацию, теперь нужно сделать авторизацию. Как лучше ее сделать? Допустим я зарегаю в бд логин admin и нужно чтоб он имел полный доступ к сайту, т.е. обладал по сути всеми возможными правами. Так вот, когда этот admin будет авторизовываться, как проверить если это точно он? И еще кое-что, в чем или как мне, - хранить данные прошел ли пользователь аутентификацию?
  • Вопрос задан
  • 288 просмотров
Решения вопроса 1
shindakioku
@shindakioku
Не сайтоклепатор
Насчет ролей уже подсказали
Авторизация чисто по логину - это что-то новое
Допустим у Вас в базе есть две ячейки: name, password. При регистрации в password Вы записываете пароль с использованием вот это
Затем, при авторизации Вы ищете запись с name'ом (который в $_POST, с формы), если записи нету - пользователя с данным name не существует, нужно регистрироваться.
Если есть, вытягиваете пароль и пишете:
password_verify('123123', $password);
Если вернет True - Вы должны в куки/сессии сохранить айди юзера, чтобы в дальнейшем понимать, авторизован или нет.
(P.s: сделайте ячейку 'token' в таблице users и при авторизации (успешной естественно) записывайте туда рандомную строку и ее тоже в куки/сессии).
Если с RBAC проблемы - можно сделать еще проще:
users: .... | role (tinyInteger)
0 - обычный юзер, 1 - модератор, 2 - администратор и т.п
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы