* Add authorization for webhooks to item and log endpoints. * Remove full path details from exception when requesting a path outside of the physical file system's root. * Added missing usings. * Revert changes to the webhook items API --------- Co-authored-by: kjac <kja@umbraco.dk>
30 lines
1.1 KiB
C#
30 lines
1.1 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Umbraco.Cms.Api.Common.ViewModels.Pagination;
|
|
using Umbraco.Cms.Api.Management.Factories;
|
|
using Umbraco.Cms.Api.Management.Routing;
|
|
using Umbraco.Cms.Api.Management.ViewModels.Webhook.Logs;
|
|
using Umbraco.Cms.Core;
|
|
using Umbraco.Cms.Core.Models;
|
|
using Umbraco.Cms.Web.Common.Authorization;
|
|
|
|
namespace Umbraco.Cms.Api.Management.Controllers.Webhook.Logs;
|
|
|
|
[VersionedApiBackOfficeRoute($"{Constants.UdiEntityType.Webhook}")]
|
|
[ApiExplorerSettings(GroupName = "Webhook")]
|
|
[Authorize(Policy = AuthorizationPolicies.TreeAccessWebhooks)]
|
|
public class WebhookLogControllerBase : ManagementApiControllerBase
|
|
{
|
|
protected PagedViewModel<WebhookLogResponseModel> CreatePagedWebhookLogResponseModel(PagedModel<WebhookLog> logs, IWebhookPresentationFactory webhookPresentationFactory)
|
|
{
|
|
WebhookLogResponseModel[] logResponseModels = logs.Items.Select(webhookPresentationFactory.CreateResponseModel).ToArray();
|
|
|
|
return new PagedViewModel<WebhookLogResponseModel>
|
|
{
|
|
Total = logs.Total,
|
|
Items = logResponseModels,
|
|
};
|
|
}
|
|
|
|
}
|