fix(seed): grant SuperAdmin role to admin@food-market.local
Some checks are pending
Some checks are pending
Раздел /super-admin в UI прячется за me.roles.includes('SuperAdmin').
Сидер при создании admin'а назначал только SystemRoles.Admin —
SuperAdmin висел как Identity-роль в роле-каталоге, но никому не был
выдан. Из-за этого SuperAdmin-консоль на стенде была не видна в меню.
Фикс: при создании admin'а сразу AddToRoleAsync(SuperAdmin). Для уже
развёрнутых стендов — догоняющая ветка else if (!IsInRoleAsync(SuperAdmin))
догоняет существующую учётку при следующем рестарте API.
На стенде роль уже выдана вручную через INSERT в AspNetUserRoles.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
94dbb5b235
commit
96772f82c8
|
|
@ -79,8 +79,14 @@ public async Task StartAsync(CancellationToken ct)
|
|||
if (result.Succeeded)
|
||||
{
|
||||
await userMgr.AddToRoleAsync(admin, SystemRoles.Admin);
|
||||
await userMgr.AddToRoleAsync(admin, SystemRoles.SuperAdmin);
|
||||
}
|
||||
}
|
||||
else if (!await userMgr.IsInRoleAsync(admin, SystemRoles.SuperAdmin))
|
||||
{
|
||||
// Существующий admin без SuperAdmin — догоняем (для уже развёрнутых стендов).
|
||||
await userMgr.AddToRoleAsync(admin, SystemRoles.SuperAdmin);
|
||||
}
|
||||
|
||||
await SeedAdminEmployeeAsync(db, demoOrg.Id, admin?.Id, ct);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue