В моем приложении пользователь может зарегистрироваться, заполнив форму или используя провайдера (facebook, google, et c.). Основное отличие состоит в том, что пользователь, регистрирующийся в форме, будет иметь пароль, а пользователь, использующий социальную учетную запись, не будет.
Я не уверен, что делать с моделью пользователя в БД. Должны ли быть 2 отдельные таблицы для каждого типа регистрации?
Существует также случай привязки обычной учетной записи к социальной учетной записи.