Правилен ли подход к запоминанию пользователя на сайте через куки?
token сохраняется в куки браузера на основе устройства и учётных данных.
token - это просто один хэш, он же сохраняется в БД для клиентского устройства.
Связка такая: UserID (логин+пасс) -> клиент(устройство) -> token
Чтобы один юзер мог заходить с одним паролем на разных устройствах и видеть где его сессии сейчас залогинены. 
Если токен украдут и используют на другом устройстве - он будет уже не валиден.
Логин и пароль - нужны только при входе в учётку, или когда токен пустой или не валидный. Вначале нужно проверить пару логин и пароль, и, если авторизация прошла - сформировать новый токен.
Можно ли так делать?
Нет.
Учетные данные, результаты проверок, валидаций хранить в сессии.