I've removed the following 2 lines from the AddAuthentication method but after I call the base.OnPostAsync(action) method from my class that overrides the LoginModel class but after the result is returned the CurrentUser.IsAuthenticated property is still set to false despite have a SuccessfulLogin row in the SecuirtyLogs table.
options.DefaultScheme = "Cookies"; options.DefaultChallengeScheme = "oidc";
Please advise.
I'm still experiencing this issue depsite those two lines not being in the AddAuthentication call. Even though I get a successlogin row in the security log table the IsAuthenticated property is still set to false.
There is a row in the SecurityLogs table who's action column value is 'LoginSucceeded' but the CurrentUser.IsAuthenticated value still is not set to 'true' after the base.OnPostAync(action) method is called.
I have overriden the default login page and call the base OnPostAsync() method but when the result is returned the user is still not authenticated. I looked in the log and I'm getting an error for the IdentityClientConfiguration for AbpAccountPublic. Either define a configuration for AbpAccountPublic or set a default configuration. How do I override this to see accoring to what my ideneityclient configurations are?
Disregard. It looks like I'm having an issue with identity server and the 'CurrentUser.IsAuthenticated' property is never being set to true.
Ok, I was finally able to get this to work. My question now is how can I interrogate whether or not the user was successfully authenticated after the .base.OnPostAsync(action) result is returned. I don't see an obvious way to determine this.
// For example public override async Task<IActionResult> OnPostAsync(string action) { Console.WriteLine("OnPost - Before"); var result = await base.OnPostAsync(action); Console.WriteLine("OnPost - After");
return result;
}
Hi,
That resolved what I was trying to accomplish, but I'm still getting other errors. Do you have an working example of a public web site where I can completely override not only the UI aspect of the login page but also put additional logic in the OnPostAsync methed of the login page to do additional processing after the base Volo.Abp.Account.Public.Web.Pages.Account.LoginModel OnPostAsync method runs?
The Volo.EasyCrm real world application does not implement the login page in this same way.
Steve.
Keep in mind I'm trying to override the login page at the 'public' web application level, not Identity Server.
Just so others can reference should they have similar issues in the future here is the entire set of TablePrefix settings that need to be configured if you want to change the table name prefix for the standard ABP tables.
builder.ConfigurePermissionManagement(options => { options.TablePrefix = ""; });
builder.ConfigureSettingManagement(options => { options.TablePrefix = ""; });
builder.ConfigureBackgroundJobs(options => { options.TablePrefix = ""; });
builder.ConfigureAuditLogging(options => { options.TablePrefix = ""; });
builder.ConfigureIdentity(options => { options.TablePrefix = ""; });
builder.ConfigureIdentityPro(options => { options.TablePrefix = ""; });
builder.ConfigureIdentityServer(options => { options.TablePrefix = ""; });
builder.ConfigureFeatureManagement(options => { options.TablePrefix = ""; });
builder.ConfigureLanguageManagement(options => { options.TablePrefix = ""; });
builder.ConfigurePayment(options => { options.TablePrefix = ""; });
builder.ConfigureSaas(options => { options.TablePrefix = ""; });
builder.ConfigureTextTemplateManagement(options => { options.TablePrefix = ""; });
builder.ConfigureBlobStoring(options => { options.TablePrefix = ""; });
AbpPermissionManagementDbProperties.DbTablePrefix = string.Empty;
AbpSettingManagementDbProperties.DbTablePrefix = string.Empty;
BackgroundJobsDbProperties.DbTablePrefix = string.Empty;
AbpAuditLoggingDbProperties.DbTablePrefix = string.Empty;
BlobStoringDatabaseDbProperties.DbTablePrefix = string.Empty;
AbpCommonDbProperties.DbTablePrefix = string.Empty;
FeatureManagementDbProperties.DbTablePrefix = string.Empty;
LanguageManagementDbProperties.DbTablePrefix = string.Empty;
SaasDbProperties.DbTablePrefix = string.Empty;
TextTemplateManagementDbProperties.DbTablePrefix = string.Empty;
AbpIdentityDbProperties.DbTablePrefix = string.Empty;
AbpIdentityServerDbProperties.DbTablePrefix = string.Empty;