Не хранить в сессии?) Вернее хранить id и хэш пароля юзера или время последней смены пароля, чтоб сбрасывать авторизацию если админ сменил пароль. А так лучше каждый раз брать из БД, тогда всегда актуальные данные, один запрос по первичному ключу не думаю что прям такая большая нагрузка будет, если проект действительно большой, то это уже другой вопрос.