Migrates EnsureUserPermissionForContentAttribute to authz policies

This commit is contained in:
Shannon
2020-11-23 22:43:41 +11:00
parent 65a11a4e26
commit c34540cb06
24 changed files with 443 additions and 379 deletions

View File

@@ -0,0 +1,38 @@
using Microsoft.AspNetCore.Authorization;
namespace Umbraco.Web.BackOffice.Authorization
{
/// <summary>
/// An authorization requirement for <see cref="ContentPermissionQueryStringHandler"/>
/// </summary>
public class ContentPermissionsQueryStringRequirement : IAuthorizationRequirement
{
/// <summary>
/// Create an authorization requirement for a specific node id
/// </summary>
/// <param name="nodeId"></param>
/// <param name="permissionToCheck"></param>
public ContentPermissionsQueryStringRequirement(int nodeId, char permissionToCheck)
{
NodeId = nodeId;
PermissionToCheck = permissionToCheck;
}
/// <summary>
/// Create an authorization requirement for a node id based on a query string parameter
/// </summary>
/// <param name="paramName"></param>
/// <param name="permissionToCheck"></param>
public ContentPermissionsQueryStringRequirement(char permissionToCheck, string[] paramNames)
{
QueryStringNames = paramNames;
PermissionToCheck = permissionToCheck;
}
public int? NodeId { get; }
public string[] QueryStringNames { get; }
public char PermissionToCheck { get; }
}
}