Подтверждение электронной почты с помощью MVC 5 и Asp.net Identity

Я искал, но не нашел никакой документации о том, как реализовать подтверждение по электронной почте с помощью MVC 5 с использованием нового идентификатора ASP.net. Кажется, нет никакой документации по этой теме (которую я мог найти).

Кто-нибудь решил это еще? Я очень удивлен, что это не включено по умолчанию в проект MVC 5 по умолчанию.

Любое руководство приветствуется.

Спасибо


person John    schedule 10.10.2013    source источник
comment
Хотя я не могу быть уверен на 100%, я считаю, что это нужно будет реализовать вручную.   -  person Mike Perrenoud    schedule 10.10.2013
comment
Да, если было неясно, это то, о чем я спрашивал, как это сделать с помощью ASP.net Identity.   -  person John    schedule 10.10.2013
comment
Вы упомянули, что были удивлены, что это не было включено. Я только подтверждал тот факт, что вам придется делать это вручную. Я не предлагаю решения - если бы я был, я бы ответил на вопрос.   -  person Mike Perrenoud    schedule 10.10.2013
comment
Посмотрите внизу раздел подтверждения по электронной почте codeproject.com/Articles/313153/   -  person Paul Zahra    schedule 10.10.2013
comment
Я думаю, вы можете использовать ответ @Paul Zahra и этот блог kevin-junghans.blogspot.in/2013/10/, чтобы получить то, что вам нужно. Это показывает, как настроить профиль пользователя в ASP.NET Identity в приложении MVC5. Кевин также заявил, что он попробуйте опубликовать подтверждение по электронной почте в своей следующей статье. но я думаю, что вы можете найти решение, связав эту статью с ответом Пола.   -  person hridya pv    schedule 22.10.2013
comment
@hridyapv, Кевин опубликовал эту статью для подтверждения по электронной почте, и она отлично работает. kevin-junghans.blogspot.in/2013/ 10/   -  person Josh McKearin    schedule 04.11.2013


Ответы (3)


Я написал пошаговую статью о том, как добавить подтверждение по электронной почте. при использовании удостоверения ASP.NET. Вы можете получить исходный код здесь в папке проекта AspNetIdentity\AspNetIdentityRefApp. Я также создал сервисный уровень, который инкапсулирует ASP.NET Identity, упрощая его включение в новые приложения MVC 5 и имитируя API WebSecurity, используемый SimpleMembership. Вы можете получить эту библиотеку классов из AspNetIdentity\SimpleSecurity.AspNetIdentity. Существует также справочное приложение для использования этой библиотеки в AspNetIdentity\SimpleSecurity.AspNetIdentity.RefApp. Библиотека классов и справочное приложение также показывают, как реализовать сброс пароля с помощью маркера и базовой проверки подлинности в веб-API.

person Kevin Junghans    schedule 07.11.2013
comment
Привет, я не смог увидеть никакой документации, автоматически ли UserManager.GenerateEmailConfirmationTokenAsync в новом идентификаторе ASP.NET вставляет сгенерированный код в таблицу пользователей? Нужно ли сохранять токен отдельно после создания токена? Я пробовал, и это не сохранилось. Я пытаюсь проверить, является ли это поведением по умолчанию или что-то в моем коде. - person Rohith Nair; 26.08.2014

Для ASP MVC 5 теперь вы можете попробовать предварительную версию Identity 2 с подтверждением по электронной почте и сбросом пароля...

https://devblogs.microsoft.com/aspnet/announcing-preview-of-microsoft-aspnet-identity-2-0-0-alpha1/

person Tim    schedule 16.04.2014
comment
Теперь у Nuget есть официальный выпуск: nuget.org/packages/Microsoft. .AspNet.Identity.Core/2.0.0 - person Miro J.; 25.04.2014

Я установил платформу идентификации 2 на веб-сайте MVC в мае 2016 года, и она включает подтверждение по электронной почте, хотя изначально она была закомментирована. Вот что нужно искать в контроллере учетных записей:

введите здесь описание изображения

Поэтому, когда пользователь регистрируется, вы можете раскомментировать код, чтобы отправить ему электронное письмо. Если вы хорошо понимаете модель MVC, остальное должно быть относительно простым.

person Andy Brown    schedule 24.05.2016
comment
Хотя на самом деле это ничего не делает. Он по-прежнему выполняет вход пользователя и позволяет ему войти без подтверждения своего адреса электронной почты. - person maembe; 28.12.2016
comment
Чтобы предотвратить фактический вход в систему, см. следующий ответ: stackoverflow.com/questions/38419883/ - person Chris Owens; 20.08.2018
comment
Где вы настроили адрес электронной почты отправителя, пароль, сервер, порт? где вы реализовали сервис для электронной почты. Ничего не объясняется. - person dE Source; 01.06.2020