NikFaraday
@NikFaraday
Student full-stack Developer

Как решить проблемы первого пользователя учитывая архитектуру проекта?

Здравствуйте!

Столкнулся с проблемой создания первого пользователя. Проект подходит уже к финальной стадии и теперь пришло время изменить UserEntity.Password на User.HashedPassword. Процесс создания (регистрации) уже решился, но теперь не могу никак определиться, как мне сделать первого пользователя

До этого я использовал обычный .HasData(...), но теперь пароль нужно прогнать через соответствующий сервис хеширования. Этот сервис подключается через DI в другие сервисы в соответствующей прослойке логики.

Тут и появляется проблема внедрение этого сервиса и обеспечения БД наличием первого пользователя. Сервис для хеширования не должен быть внедрён в библиотеку с DbContext и GenericRepository, а должен использоваться на уровне сервисов. Сервисы имеют доступ к GenericRepository (Имеет public DbSet).

Как тут правильно решить эту проблему?
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
petermzg
@petermzg
Самый лучший программист
Так создайте сейчас первого пользователя с нужным паролем и в .HasData(...) пропишите полученный хеш.
И при первом использовании просто предложите данному пользователю сменить пароль. Такой ведь механизм у вас есть
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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