Netcore: Introduce BackofficeSecurityAccessor (#8871)

* Introduced IWebSecurityAccessor

Signed-off-by: Bjarke Berg <mail@bergmania.dk>

* Fixed tests

Signed-off-by: Bjarke Berg <mail@bergmania.dk>

* Renamed WebSecurity to BackofficeSecurity and all related names

* Fixes typos

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
This commit is contained in:
Bjarke Berg
2020-09-22 10:01:00 +02:00
committed by GitHub
parent 525ca95acf
commit 96facc4d35
84 changed files with 571 additions and 404 deletions

View File

@@ -13,14 +13,15 @@ using Umbraco.Web.Security;
namespace Umbraco.Web.Common.Security
{
public class WebSecurity : IWebSecurity
public class BackofficeSecurity : IBackofficeSecurity
{
private readonly IUserService _userService;
private readonly GlobalSettings _globalSettings;
private readonly IHostingEnvironment _hostingEnvironment;
private readonly IHttpContextAccessor _httpContextAccessor;
public WebSecurity(
public BackofficeSecurity(
IUserService userService,
IOptions<GlobalSettings> globalSettings,
IHostingEnvironment hostingEnvironment,

View File

@@ -0,0 +1,43 @@
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Options;
using Umbraco.Core;
using Umbraco.Core.Configuration;
using Umbraco.Core.Configuration.Models;
using Umbraco.Core.Hosting;
using Umbraco.Core.Security;
using Umbraco.Core.Services;
namespace Umbraco.Web.Common.Security
{
public class BackofficeSecurityFactory: IBackofficeSecurityFactory
{
private readonly IBackofficeSecurityAccessor _backofficeSecurityAccessor;
private readonly IUserService _userService;
private readonly IOptions<GlobalSettings> _globalSettings;
private readonly IHostingEnvironment _hostingEnvironment;
private readonly IHttpContextAccessor _httpContextAccessor;
public BackofficeSecurityFactory(
IBackofficeSecurityAccessor backofficeSecurityAccessor,
IUserService userService,
IOptions<GlobalSettings> globalSettings,
IHostingEnvironment hostingEnvironment,
IHttpContextAccessor httpContextAccessor)
{
_backofficeSecurityAccessor = backofficeSecurityAccessor;
_userService = userService;
_globalSettings = globalSettings;
_hostingEnvironment = hostingEnvironment;
_httpContextAccessor = httpContextAccessor;
}
public void EnsureBackofficeSecurity()
{
if (_backofficeSecurityAccessor.BackofficeSecurity is null)
{
_backofficeSecurityAccessor.BackofficeSecurity = new BackofficeSecurity(_userService, _globalSettings, _hostingEnvironment, _httpContextAccessor);
}
}
}
}