After deploy the code to QA site, there are two more exceptions in Console:
function ct(ft, Kt) {
const $ = ft.url.toLowerCase();
if (!(0,
y.WQX)(ot) || "GET" === ft.method || "HEAD" === ft.method || $.startsWith("http://") || $.startsWith("https://"))
return Kt(ft);
const Re = (0,
y.WQX)(jt).getToken()
, he = (0,
y.WQX)(at);
return null != Re && !ft.headers.has(he) && (ft = ft.clone({
headers: ft.headers.set(he, Re)
})),
Kt(ft)
}
, gA = [(0,
t.phd)( () => {
!function L9() {
(0,
t.WQX)(Rn.EVb).add({
id: "Impersonation",
executable: !0,
execute: r => {
const {reason: p} = r
, {error: {grant_type: }} = p || {};
return !! && "Impersonation" === _
}
})
}()
}
)];
Microservice Template.
In localhost:4200, the console app has this error:
The source code is in this method: function setModuleVisibilityFactory(stream, service, identifier) { return stream.pipe(map(features => features.enable), tap(enable => { const { children, ...tree } = service.find(r => r.name === identifier); tree.invisible = !enable; service.patch(identifier, tree); })); }
This ticket could be closed. Restart the container works. But the root cause should be we put wrong Auth server Url in yarp settings.
I checked the code, in AdministrationServiceHttpApiHostModule there is method this method would call _administrationServiceDataSeeder.SeedAsync(), even though I comment out the if statement, and run AdministrationService.HttpApi.Host, the Administrator Db's Permission table is still empty. It's pretty strange.
//if (!env.IsDevelopment())
{
using (var scope = context.ServiceProvider.CreateScope())
{
await scope.ServiceProvider
.GetRequiredService<AdministrationServiceDatabaseMigrationChecker>()
.CheckAndApplyDatabaseMigrationsAsync();
}
}
Then I run the project template created by ABP Studio, I run each micro service one by one (except for GdprService), then I export the permissions to csv and import to my app's Administraion database and using SQL left join by name and and I only find two missing entries: GroupName Name AdministrationService AdministrationService.Dashboard.Tenant AdministrationService AdministrationService.Dashboard.Host
Though if I left join by name and parent name, then I found 22 rows. I think it's a bug in ABP 9, instead of using Db Null value, it using string 'NULL' as parent name, but it should not relate to issue here. There must be something else regarding to permission policy. NameParentName AbpIdentity.ClaimTypes NULL AbpIdentity.OrganizationUnits NULL AbpIdentity.Roles NULL AbpIdentity.SecurityLogs NULL AbpIdentity.Sessions NULL AbpIdentity.SettingManagement NULL AbpIdentity.UserLookup NULL AbpIdentity.Users NULL AdministrationService.Dashboard.Host NULL AdministrationService.Dashboard.Tenant NULL AuditLogging.AuditLogs NULL FeatureManagement.ManageHostFeatures NULL LanguageManagement.Languages NULL LanguageManagement.LanguageTexts NULL OpenIddictPro.Application NULL OpenIddictPro.Scope NULL Saas.Editions NULL Saas.SettingManagement NULL Saas.Tenants NULL SettingManagement.Emailing NULL SettingManagement.TimeZone NULL TextTemplateManagement.TextTemplates NULL
Hello,
If the database was created before and the data was seeded, the data may not be updated when it runs again. Because when we seed data, we almost always look at the number of records and if there is a record, we do not seed again. Thus, we do not seed duplicated data.
Does the problem persist when you delete and regenerate the database with DbMigrator?
In addition, does this problem only occur on a single endpoint? And does it also occur local development environment?
I drop my local Administration database, and run DbMigrator, the AbpPermission tables are empty
You mean every deployment, the Redis Cache should be cleared? How to enforce it in CI/CD pipeline? (Micro Services to Kubernetes)
Our pipeline would automatically execute DbMigrator project against QA database
After upgrade and deployed the site to QA env,
For the same tenant, some users login, they got this exception in ABP log: /api/account/my-profile [ { "code": "Volo.Authorization:010001", "message": "Authorization failed! Given policy has not granted.", "details": null, "data": null, "validationErrors": null } ]
We do have DataProtection Enabled. For each deployment Redis container would be cleared or not? From ABP Audit log, the code try to access /connect/authorize URL and the exception is: [ { "code": null, "message": "The data you have submitted has already been changed by another user. Discard your changes and try again.", "details": null, "data": null, "validationErrors": null }, { "code": null, "message": "The data you have submitted has already been changed by another user. Discard your changes and try again.", "details": null, "data": null, "validationErrors": null } ]
We disabled File Log when deployed to site. I noticed this happens after the site has a new deployment. Is it possible related to new feature of session management?