- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: Aquaphor Modern víztisztító
- Magga: PLEX: multimédia az egész lakásban
- MaxxDamage: Vizes Laptop Hűtés? Lehetséges? Igen!
- gban: Ingyen kellene, de tegnapra
- GoodSpeed: Sapphire Radeon RX 9070 XT Pulse - út a harmadik AMD korszakig.
- eBay-es kütyük kis pénzért
Új hozzászólás Aktív témák
-
joysefke
veterán
.NET Core 2.1, ASP.NET Core 2.1 IPasswordValidator
Amikor kreálok egy usert, akkor a beállított password policy szépen alapján a kért jelszó erőssége szépen validálásra kerül,
azonban amikor meg akarom változtatni a beállított jelszót és a kért új jelszó erősségének validálásához a beépített default
IPasswordValidator
ból (amit bár nem konfiguráltam DI-re, mégis valahogy működik a[FromServices]
) kérek egy példányt és azzal próbálok validálni, akkor a validálás nem működik, bármilyen jelszó elfogadásra kerül.Startup.cs
services.AddIdentity<AppUser, IdentityRole>(
opts => {
opts.User.RequireUniqueEmail = true;
opts.Password.RequiredLength = 3;
opts.Password.RequireNonAlphanumeric = false;
opts.Password.RequireLowercase = false;
opts.Password.RequireUppercase = false;
opts.Password.RequireDigit = false;
})Kontroller
Usert így kreálom:AppUser newUser = new AppUser { UserName = model.Name, Email = model.Email };
IdentityResult result = await userManager.CreateAsync(newUser, model.Password);
if (result.Succeeded)
{
// safe to assume that the below operation will succeede
await userManager.AddToRoleAsync(newUser, "Admins");
return RedirectToAction(nameof(AdminUsers));
}És így szeretném megváltoztatni a passwordot:
Fügvény deklaráció, DI. Érdekes, hogy a Startup-ban én semmit nem rendeltem az IPasswordValidator-hoz
public async Task<IActionResult> Edit2(
[FromServices]IPasswordValidator<AppUser> passwordValidator,
[FromServices]IPasswordHasher<AppUser> passwordHasher,
EditModel model, string newPwd).....
Itt szeretném a jelszó erősségét validálni és ha megfelel megjelölöm, hogy updatelni akarom
IdentityResult passwordResult = await passwordValidator.ValidateAsync(userManager, userToEdit, model.Password);
if (!passwordResult.Succeeded)
foreach (var error in passwordResult.Errors)
ModelState.AddModelError("", error.Description);
else
passwordNeedsChange = true;Itt hajtom végre az IdentityUser updétjét:
if (ModelState.IsValid)
{
if (emailNeedsChange)
userToEdit.Email = model.Email;
if (passwordNeedsChange)
userToEdit.PasswordHash = passwordHasher.HashPassword(userToEdit, model.NewPassword);
var updateResult = await userManager.UpdateAsync(userToEdit);
....
}Előre is köszi!
#8679 Köszi!
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Háztartási gépek
- The Crew sorozat
- Hearthstone: Heroes of Warcraft - free online CCG
- Linux Mint
- Nem okoz az adattárolón hibát a Windows 11 augusztusi frissítése
- Genshin Impact (PC, PS4, Android, iOS)
- Sorozatok
- CPU léghűtés kibeszélő
- Kerékpárosok, bringások ide!
- sziku69: Szólánc.
- További aktív témák...
- AKCIÓ! Lenovo ThinkPad X13 Gen 5 üzleti notebook - Ultra 5 135U 16GB DDR5 512GB SSD Intel Win11
- GYÖNYÖRŰ iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3358
- AKCIÓ! Lenovo Legion Slim 5 Gamer notebook - R7 7435HS 16GB RAM 1TB SSD RTX 4070 8GB GDDR6 WIN11
- 8 GB GeForce RTX 3070 Ti - garanciával
- Felújított számítógépek számlával, garanciával! Ingyen Foxpost!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest