ПредишенСледващото

В предишния урок е създаден метод CreateUser. което позволи да се създадат потребители в базата данни.

В тази част, ние добавяме функцията за генериране на пароли хеш и сол.

С една дума, което е необходимо, сол и хашиш.

Солта е - набор от случайно генерирани герои, които се прибавят към паролата и хешираните с него. Заедно със сол, парола, за да го разшифровате става още по-трудно.

За начало, направи поколение сол.

UserRepository.cs отворен и добавяне на линк към System.Security.Cryptography:

След това добавете промяната в метод CreateUser на солта се съхранява в базата данни:

Сега ние прилагаме метода на производство на хашиш. UserRepository.cs добавете следния код:

Отново промени метод CreateUser. до базата данни, поддържана хешираното парола. Към код, за да работи правилно, трябва да генерира сол преди хеширане, тъй като функцията на хеш използва сол.

Сега можете да направите, за изпълнението на ValidateUser.
Първо, създаване на метод в класа ValidateUser UserRepository

Сега променя ValidateUser в MyMembershipProvider

Създаване на изглед, който се показва веднага след влизане.

HomeController.cs отворен и добавете метод Добре дошли:

Щракнете с десния бутон на страницата Добре дошли () и изберете Добавяне Вижте ...

доставчик по поръчка членство

Презентацията ще се създаде съобщение за нови потребители:

Сега отворени AccounController.cs. Регистрирайте се, за да намерите метода премахнете FormService.SignIn. Тя трябва да изглежда така:

Ние променя метод CreateUser (отново!) Така че ключът се съхранява в базата данни.

Сега, че ключът се генерира, е необходимо да се изпрати по някакъв начин на потребителя. Поради това, че урокът не е голям, ние ще напише код за работа с електронна поща директно към UserRepository клас. В реални приложения, най-вероятно ще бъде необходимо да се отдели логиката в отделен клас.

Вие се нуждаете от SMTP сървър, който ще изпрати електронна поща. Ако заявлението е домакин, обикновено е вече там имат свой собствен SMTP сървър, който може да се използва. За да изпробвате на вашия компютър, можете да използвате всеки услуга за електронна поща, като Gmail или mail.ru

Добавяне на връзка към System.Net.Mail в UserRepository.cs

В метод CreateUser добавете следния код:

Вместо PORT необходимо да се замени номера на порта, на който работи вашата кандидатура или премахнете напълно, ако тя работи на хостинга. Необходимо е също така да се замени EMAIL_FROM ценности, сървър, потребителско име, парола сами.

Ако по време на регистрацията ще получите следното изключение

Сега ние се реализира активиране.

AccounController.cs отворен и добавяне на кода:

На последно място, създаване на метод за ActivateUser UserRepository

Сега ние трябва да се определи в ValidateUser UserRepository. че тя се активира само регистрирани потребители.

Актуализираният проект може да бъде изтеглен от тук CustomRoleAndMembership.zip

Подкрепете проекта - споделете линка, благодаря!