Refactor authorizers to be reusable from the core project (#15782)

* Refactored the Authorizers to be reuseable from core by now knowing about principal but only the IUser. Also moved them to core

* Fix multiple enumeration

* Fix more multiple enumerations

---------

Co-authored-by: Nikolaj <nikolajlauridsen@protonmail.ch>
This commit is contained in:
Bjarke Berg
2024-02-29 09:41:56 +00:00
committed by GitHub
parent 393d178b58
commit cf9b00bffc
89 changed files with 465 additions and 391 deletions

View File

@@ -35,6 +35,7 @@ using Umbraco.Cms.Core.Security;
using Umbraco.Cms.Core.Services;
using Umbraco.Cms.Core.Services.ContentTypeEditing;
using Umbraco.Cms.Core.DynamicRoot;
using Umbraco.Cms.Core.Security.Authorization;
using Umbraco.Cms.Core.Services.FileSystem;
using Umbraco.Cms.Core.Services.Querying.RecycleBin;
using Umbraco.Cms.Core.Sync;
@@ -378,6 +379,16 @@ namespace Umbraco.Cms.Core.DependencyInjection
// Add Query services
Services.AddUnique<IDocumentRecycleBinQueryService, DocumentRecycleBinQueryService>();
Services.AddUnique<IMediaRecycleBinQueryService, MediaRecycleBinQueryService>();
// Authorizers
Services.AddSingleton<IAuthorizationHelper, AuthorizationHelper>();
Services.AddSingleton<IContentPermissionAuthorizer, ContentPermissionAuthorizer>();
Services.AddSingleton<IFeatureAuthorizer, FeatureAuthorizer>();
Services.AddSingleton<IMediaPermissionAuthorizer, MediaPermissionAuthorizer>();
Services.AddSingleton<IUserGroupPermissionAuthorizer, UserGroupPermissionAuthorizer>();
Services.AddSingleton<IUserPermissionAuthorizer, UserPermissionAuthorizer>();
Services.AddSingleton<IDictionaryPermissionAuthorizer, DictionaryPermissionAuthorizer>();
}
}
}