Yii2: Почему ключ авторизации в классе User?

Как видно из названия, почему в Yii2 введен ключ авторизации? Каковы его основные применения и как это полезно в аутентификации?

29

Решение

Основное использование — аутентификация пользователя с помощью cookie. Когда вы выбираете, чтобы вас запомнили при входе в систему, это то, как вас запомнили. Система должна как-то идентифицировать вас и войти в систему. Он может либо сохранить ваше имя пользователя и пароль в cookie-файле (это было бы небезопасно), либо запоминать вас другими способами. Это одно из средств. После того, как вы войдете в свое приложение Yii, взгляните на созданный файл cookie _identity. Вы увидите, что auth_key является частью файла cookie.

Файл cookie на самом деле запоминает $ id, $ authKey и $ duration, комбинация id \ auth_key безопаснее запомнить, чем имя пользователя / пароль.

43

Другие решения

Как объяснялось ранее, вам нужно только реализовать getAuthKey() а также validateAuthKey() если ваше приложение использует функцию входа на основе файлов cookie. В этом случае вы можете использовать следующий код для генерации auth ключ для каждого пользователя и сохранить его в пользовательской таблице:

Более подробную информацию можно найти в официальной документации:
https://www.yiiframework.com/doc/guide/2.0/en/security-authentication

0

По вопросам рекламы [email protected]