ensures middleware is registered and the external cookie auth is registered.

This commit is contained in:
Shannon
2020-10-23 14:57:35 +11:00
parent 061529c40d
commit e7d22e24db
5 changed files with 37 additions and 5 deletions

View File

@@ -39,7 +39,13 @@ namespace Umbraco.Extensions
services.AddSingleton<IFilterProvider, OverrideAuthorizationFilterProvider>();
services
.AddAuthentication(Constants.Security.BackOfficeAuthenticationType)
.AddCookie(Constants.Security.BackOfficeAuthenticationType);
.AddCookie(Constants.Security.BackOfficeAuthenticationType)
.AddCookie(Constants.Security.BackOfficeExternalAuthenticationType, o =>
{
o.Cookie.Name = Constants.Security.BackOfficeExternalAuthenticationType;
o.ExpireTimeSpan = TimeSpan.FromMinutes(5);
});
// TODO: Need to add more cookie options, see https://github.com/dotnet/aspnetcore/blob/3.0/src/Identity/Core/src/IdentityServiceCollectionExtensions.cs#L45
services.ConfigureOptions<ConfigureBackOfficeCookieOptions>();
@@ -58,8 +64,6 @@ namespace Umbraco.Extensions
{
services.AddDataProtection();
services.TryAddScoped<IIpResolver, AspNetCoreIpResolver>();
services.BuildUmbracoBackOfficeIdentity()
.AddDefaultTokenProviders()
.AddUserStore<BackOfficeUserStore>()
@@ -95,6 +99,8 @@ namespace Umbraco.Extensions
// CUSTOM:
services.TryAddScoped<BackOfficeLookupNormalizer>();
services.TryAddScoped<BackOfficeIdentityErrorDescriber>();
services.TryAddScoped<IIpResolver, AspNetCoreIpResolver>();
services.TryAddSingleton<IBackOfficeExternalLoginProviders, NopBackOfficeExternalLoginProviders>();
return new IdentityBuilder(typeof(BackOfficeIdentityUser), services);
}