Rasmusen505,
Регистрация, авторизация это процессы, пользователь - это сущность.
Процесс может затрагивать много сущностей, сущность может участвовать во множестве процессов.
В случае авторизации в процессе может быть задействовано множество классов:
- Классы форм представлений (View), которые отрисовывают сами формы и биндят в них параметры модели формы.
- Классы моделей форм регистрации/аутентификации, которые так же могут и валидировать форму.
- Класс UserIdentity, реализующий интерфейс IIdentity отвечающий за аутентификацию пользователя.
- Класс пользователя, который часто и реализует интерфейс IIdentity.
- Классы контроллеров, которые обрабатывают запросы и находятся между представлением и моделями, например. Это если мы говорим об арзитектуре MVP.
Регистрация пользователя - это процесс, в котором может участвовать множество классов и делает он приблизительно следующее:
1) Получает от пользователя информацию о регистрационных данных (Класс представления и класс модели формы)
2) Валидация данных пользователя при отправке запроса на регистрацию (Контроллер получает от представления (View) информацию, создает модель(класс) User и выполняет сохранение)
3) Если в базе такой пользователь уже есть (проверка на уровне модели/СУБД на уникальность определенных полей), то контроллер от модели транслирует ошибки в класс формы и пользователь их исправляет.
4) Если все ок, то пользователю выдается сообщение об успешной регистрации (ответ от контроллера) и контроллер шлет ссылку о подтверждении регистрации по email (тут сохраняется токен привязанный к записи в таблице пользователей, нужен для генерации ссылки на подтверждение регистрации, по нему потом ищется нужный пользователь для его активации).
5) Далее уже другой контроллер или другой метод этого же контроллера обрабатывает ссылку и выставляет флаг через модель пользователя о том, что регистрация подтверждена.
Я думаю, что Вы путаете класс регистрации с моделью формы регистрации.
Тогда путаница в терминологии и ход мыслей правильный.