From 5dfa76600a9bd673888ff7f2a6ac5c87297cb981 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 14 Nov 2023 09:14:01 +0100 Subject: [PATCH 1/3] Post fix --- .../Implement/CreatedPackageSchemaRepository.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/CreatedPackageSchemaRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/CreatedPackageSchemaRepository.cs index 093fadd8fe..a7f8f8ed6b 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/CreatedPackageSchemaRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/CreatedPackageSchemaRepository.cs @@ -264,15 +264,17 @@ public class CreatedPackageSchemaRepository : ICreatedPackagesRepository _hostingEnvironment.MapPathContentRoot(Path.Combine( _createdPackagesFolderPath, definition.Name.Replace(' ', '_'))); - Directory.CreateDirectory(directoryName); - var expectedRoot = _hostingEnvironment.MapPathContentRoot(_createdPackagesFolderPath); - var finalPackagePath = Path.Combine(directoryName, fileName); + var expectedRoot = Path.GetFullPath(_hostingEnvironment.MapPathContentRoot(_createdPackagesFolderPath)); + var finalPackagePath = Path.GetFullPath(Path.Combine(directoryName, fileName)); if (finalPackagePath.StartsWith(expectedRoot) == false) { throw new IOException("Invalid path due to the package name"); } + Directory.CreateDirectory(directoryName); + + // Clean existing files foreach (var packagePath in new[] { definition.PackagePath, finalPackagePath }) { From 1fe2ec08be6266ab8154bbc1dc3f0b06a3376d27 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 12 Dec 2023 15:35:15 +0100 Subject: [PATCH 2/3] bump version --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index dcb4240d7c..2fd485a967 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "10.8.1", + "version": "10.8.2", "assemblyVersion": { "precision": "build" }, From 677ff59d0474dce397af43676573499e0e27c73e Mon Sep 17 00:00:00 2001 From: Zeegaan Date: Tue, 12 Dec 2023 14:35:29 +0100 Subject: [PATCH 3/3] Loosen up policies so editors can get what they need --- src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs | 4 +++- .../Controllers/StylesheetController.cs | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs index aaf067022c..285e1127eb 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/LanguageController.cs @@ -18,7 +18,6 @@ namespace Umbraco.Cms.Web.BackOffice.Controllers; /// Backoffice controller supporting the dashboard for language administration. /// [PluginController(Constants.Web.Mvc.BackOfficeApiArea)] -[Authorize(Policy = AuthorizationPolicies.SectionAccessSettings)] public class LanguageController : UmbracoAuthorizedJsonController { private readonly ILocalizationService _localizationService; @@ -43,6 +42,7 @@ public class LanguageController : UmbracoAuthorizedJsonController /// /// [HttpGet] + [Authorize(Policy = AuthorizationPolicies.TreeAccessLanguages)] public IDictionary GetAllCultures() => CultureInfo.GetCultures(CultureTypes.AllCultures).DistinctBy(x => x.Name).OrderBy(x => x.EnglishName) .ToDictionary(x => x.Name, x => x.EnglishName); @@ -52,6 +52,7 @@ public class LanguageController : UmbracoAuthorizedJsonController /// /// [HttpGet] + [Authorize(Policy = AuthorizationPolicies.SectionAccessContent)] public IEnumerable? GetAllLanguages() { IEnumerable allLanguages = _localizationService.GetAllLanguages(); @@ -60,6 +61,7 @@ public class LanguageController : UmbracoAuthorizedJsonController } [HttpGet] + [Authorize(Policy = AuthorizationPolicies.TreeAccessLanguages)] public ActionResult GetLanguage(int id) { ILanguage? lang = _localizationService.GetLanguageById(id); diff --git a/src/Umbraco.Web.BackOffice/Controllers/StylesheetController.cs b/src/Umbraco.Web.BackOffice/Controllers/StylesheetController.cs index 616edfa04f..1fc5f641f6 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/StylesheetController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/StylesheetController.cs @@ -14,7 +14,7 @@ namespace Umbraco.Cms.Web.BackOffice.Controllers; /// The API controller used for retrieving available stylesheets /// [PluginController(Constants.Web.Mvc.BackOfficeApiArea)] -[Authorize(Policy = AuthorizationPolicies.SectionAccessSettings)] +[Authorize(Policy = AuthorizationPolicies.SectionAccessContent)] public class StylesheetController : UmbracoAuthorizedJsonController { private readonly IFileService _fileService;