Browse Source

Ignore password validation in IdentityDataSeeder.

Resolve #7677
pull/7718/head
maliming 5 years ago
parent
commit
b8207426d0
  1. 77
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IdentityDataSeeder.cs
  2. 11
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IdentityUserManager.cs

77
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IdentityDataSeeder.cs

@ -53,57 +53,54 @@ namespace Volo.Abp.Identity
{ {
await IdentityOptions.SetAsync(); await IdentityOptions.SetAsync();
using (IdentityOptions.Value.Password.ClearRequirements()) var result = new IdentityDataSeedResult();
//"admin" user
const string adminUserName = "admin";
var adminUser = await UserRepository.FindByNormalizedUserNameAsync(
LookupNormalizer.NormalizeName(adminUserName)
);
if (adminUser != null)
{ {
var result = new IdentityDataSeedResult(); return result;
//"admin" user }
const string adminUserName = "admin";
var adminUser = await UserRepository.FindByNormalizedUserNameAsync(
LookupNormalizer.NormalizeName(adminUserName)
);
if (adminUser != null) adminUser = new IdentityUser(
{ GuidGenerator.Create(),
return result; adminUserName,
} adminEmail,
tenantId
)
{
Name = adminUserName
};
(await UserManager.CreateAsync(adminUser, adminPassword, validatePassword: false)).CheckErrors();
result.CreatedAdminUser = true;
adminUser = new IdentityUser( //"admin" role
const string adminRoleName = "admin";
var adminRole =
await RoleRepository.FindByNormalizedNameAsync(LookupNormalizer.NormalizeName(adminRoleName));
if (adminRole == null)
{
adminRole = new IdentityRole(
GuidGenerator.Create(), GuidGenerator.Create(),
adminUserName, adminRoleName,
adminEmail,
tenantId tenantId
) )
{ {
Name = adminUserName IsStatic = true,
IsPublic = true
}; };
(await UserManager.CreateAsync(adminUser, adminPassword)).CheckErrors(); (await RoleManager.CreateAsync(adminRole)).CheckErrors();
result.CreatedAdminUser = true; result.CreatedAdminRole = true;
}
//"admin" role
const string adminRoleName = "admin";
var adminRole =
await RoleRepository.FindByNormalizedNameAsync(LookupNormalizer.NormalizeName(adminRoleName));
if (adminRole == null)
{
adminRole = new IdentityRole(
GuidGenerator.Create(),
adminRoleName,
tenantId
)
{
IsStatic = true,
IsPublic = true
};
(await RoleManager.CreateAsync(adminRole)).CheckErrors();
result.CreatedAdminRole = true;
}
(await UserManager.AddToRoleAsync(adminUser, adminRoleName)).CheckErrors(); (await UserManager.AddToRoleAsync(adminUser, adminRoleName)).CheckErrors();
return result; return result;
}
} }
} }
} }

11
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IdentityUserManager.cs

@ -60,6 +60,17 @@ namespace Volo.Abp.Identity
CancellationTokenProvider = cancellationTokenProvider; CancellationTokenProvider = cancellationTokenProvider;
} }
public virtual async Task<IdentityResult> CreateAsync(IdentityUser user, string password, bool validatePassword)
{
var result = await CreateAsync(user);
if (!result.Succeeded)
{
return result;
}
return await UpdatePasswordHash(user, password, validatePassword);
}
public virtual async Task<IdentityUser> GetByIdAsync(Guid id) public virtual async Task<IdentityUser> GetByIdAsync(Guid id)
{ {
var user = await Store.FindByIdAsync(id.ToString(), CancellationToken); var user = await Store.FindByIdAsync(id.ToString(), CancellationToken);

Loading…
Cancel
Save