| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- using Abp.Application.Features;
- using Abp.Localization;
- using Abp.MultiTenancy;
- namespace Abp.Authorization
- {
- /// <summary>
- /// This context is used on <see cref="AuthorizationProvider.SetPermissions"/> method.
- /// </summary>
- public interface IPermissionDefinitionContext
- {
- /// <summary>
- /// Creates a new permission under this group.
- /// </summary>
- /// <param name="name">Unique name of the permission</param>
- /// <param name="displayName">Display name of the permission</param>
- /// <param name="description">A brief description for this permission</param>
- /// <param name="multiTenancySides">Which side can use this permission</param>
- /// <param name="featureDependency">Depended feature(s) of this permission</param>
- /// <returns>New created permission</returns>
- Permission CreatePermission(
- string name,
- ILocalizableString displayName = null,
- ILocalizableString description = null,
- MultiTenancySides multiTenancySides = MultiTenancySides.Host | MultiTenancySides.Tenant,
- IFeatureDependency featureDependency = null
- );
- /// <summary>
- /// Gets a permission with given name or null if can not find.
- /// </summary>
- /// <param name="name">Unique name of the permission</param>
- /// <returns>Permission object or null</returns>
- Permission GetPermissionOrNull(string name);
- /// <summary>
- /// Remove permission with given name
- /// </summary>
- /// <param name="name"></param>
- void RemovePermission(string name);
- }
- }
|