Interface IElementPermissionService
Manages permissions for element access.
Namespace: Umbraco.Cms.Core.Services
Assembly: Umbraco.Core.dll
Syntax
public interface IElementPermissionService
Methods
View SourceAuthorizeAccessAsync(IUser, IEnumerable<Guid>, ISet<string>)
Authorize that a user has access to elements.
Declaration
Task<ElementAuthorizationStatus> AuthorizeAccessAsync(IUser user, IEnumerable<Guid> elementKeys, ISet<string> permissionsToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| IEnumerable<Guid> | elementKeys | The identifiers of the elements to check for access. |
| ISet<string> | permissionsToCheck | The collection of permissions to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeAccessAsync(IUser, Guid, string)
Authorize that a user has access to an element.
Declaration
Task<ElementAuthorizationStatus> AuthorizeAccessAsync(IUser user, Guid elementKey, string permissionToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| Guid | elementKey | The identifier of the element to check for access. |
| string | permissionToCheck | The permission to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeBinAccessAsync(IUser, ISet<string>)
Authorize that a user is allowed to perform actions on the element recycle bin.
Declaration
Task<ElementAuthorizationStatus> AuthorizeBinAccessAsync(IUser user, ISet<string> permissionsToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| ISet<string> | permissionsToCheck | The collection of permissions to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeBinAccessAsync(IUser, string)
Authorize that a user is allowed to perform action on the element recycle bin.
Declaration
Task<ElementAuthorizationStatus> AuthorizeBinAccessAsync(IUser user, string permissionToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| string | permissionToCheck | The permission to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeCultureAccessAsync(IUser, ISet<string>)
Authorize that a user has access to specific cultures.
Declaration
Task<ElementAuthorizationStatus> AuthorizeCultureAccessAsync(IUser user, ISet<string> culturesToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| ISet<string> | culturesToCheck | The collection of cultures to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeDescendantsAccessAsync(IUser, Guid, ISet<string>)
Authorize that a user has access to the descendant items of an element.
Declaration
Task<ElementAuthorizationStatus> AuthorizeDescendantsAccessAsync(IUser user, Guid parentKey, ISet<string> permissionsToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| Guid | parentKey | The identifier of the parent element to check its descendants for access. |
| ISet<string> | permissionsToCheck | The collection of permissions to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeDescendantsAccessAsync(IUser, Guid, string)
Authorize that a user has access to the descendant items of an element.
Declaration
Task<ElementAuthorizationStatus> AuthorizeDescendantsAccessAsync(IUser user, Guid parentKey, string permissionToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| Guid | parentKey | The identifier of the parent element to check its descendants for access. |
| string | permissionToCheck | The permission to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeRootAccessAsync(IUser, ISet<string>)
Authorize that a user is allowed to perform actions on the element root.
Declaration
Task<ElementAuthorizationStatus> AuthorizeRootAccessAsync(IUser user, ISet<string> permissionsToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| ISet<string> | permissionsToCheck | The collection of permissions to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
AuthorizeRootAccessAsync(IUser, string)
Authorize that a user is allowed to perform action on the element root.
Declaration
Task<ElementAuthorizationStatus> AuthorizeRootAccessAsync(IUser user, string permissionToCheck)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to authorize. |
| string | permissionToCheck | The permission to authorize. |
Returns
| Type | Description |
|---|---|
| Task<ElementAuthorizationStatus> | A task resolving into a ElementAuthorizationStatus. |
FilterFallbackPermissionsAsync(IUser, ISet<string>)
Filters the fallback permissions for a user. Fallback permissions are the user group default permissions used by the UI when no granular per-element permissions are assigned.
Declaration
Task<ISet<string>> FilterFallbackPermissionsAsync(IUser user, ISet<string> fallbackPermissions)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to filter permissions for. |
| ISet<string> | fallbackPermissions | The fallback permissions aggregated from the user's groups. |
Returns
| Type | Description |
|---|---|
| Task<ISet<string>> | A task resolving into the filtered set of fallback permissions. |
GetPermissionsAsync(IUser, IEnumerable<Guid>)
Gets the effective permissions for a user on the specified element items.
Declaration
Task<IEnumerable<NodePermissions>> GetPermissionsAsync(IUser user, IEnumerable<Guid> elementKeys)
Parameters
| Type | Name | Description |
|---|---|---|
| IUser | user | IUser to get permissions for. |
| IEnumerable<Guid> | elementKeys | The identifiers of the element items to get permissions for. |
Returns
| Type | Description |
|---|---|
| Task<IEnumerable<NodePermissions>> | A task resolving into the effective permissions for each element item. |