Вот вариант, который я успешно использую.
По сути, у вас есть один пользователь, который может быть аутентифицирован несколькими способами.
Использование встроенного провайдера, который вы, конечно, можете отключить в любое время, не мешает вам аутентифицировать этого пользователя несколькими способами.
Когда пользователь аутентифицируется с помощью OpenID, Facebook и т. Д., Сопоставьте этот логин с таблицей, которая соответствует конкретному методу входа и идентификатору с идентификацией Forms, и просто задайте пользователю набор данных как зарегистрированный с его каноническим именем пользователя Членства. 1007 *
Если новый пользователь проходит аутентификацию на вашем сайте и не имеет учетной записи, просто создайте ее автоматически в поставщике членства. Установите пароль на случайный мусор, потому что они никогда не будут его использовать. Позвольте им продолжать связывать несколько типов входа с ним также.
Если пользователь хочет также иметь прямой вход в систему, просто используйте стандартные механизмы сброса пароля провайдера членства и предоставьте им один.
Короче говоря: пока воспользуйтесь встроенным механизмом. Это не мешает вам делать то, что вы хотите сделать.