Example #1
0
        public async Task <bool> HasPermission(AdministratorPermissions permission)
        {
            var(_, isFailure, administrator, _) = await GetCurrent();

            if (isFailure)
            {
                return(false);
            }

            return(await HasGlobalPermission(administrator, permission));
        }
Example #2
0
        public async Task <bool> HasPermission(AdministratorPermissions permission)
        {
            var(_, isFailure, administrator, _) = await GetCurrent();

            if (isFailure)
            {
                return(false);
            }

            var availablePermissions = await GetAvailablePermissions(administrator);

            var hasPermission = availablePermissions.HasFlag(permission);

            return(hasPermission);
        }
Example #3
0
 public bool HasPermission(AdministratorPermissions permission)
 {
     // External admins are used only for other administrators invitation for now.
     return(permission == AdministratorPermissions.AdministratorInvitation &&
            _tokenInfoAccessor.GetClientId() == ExternalAdminClientName);
 }
 public static List <AdministratorPermissions> ToList(this AdministratorPermissions permissions)
 {
     return(AdministratorPermissionValues
            .Where(v => permissions.HasFlag(v))
            .ToList());
 }
Example #5
0
 // TODO: add employee roles
 private Task <bool> HasGlobalPermission(Administrator administrator, AdministratorPermissions permission) => Task.FromResult(true);
Example #6
0
 public AdministratorPermissionsAttribute(AdministratorPermissions administratorPermissions)
 {
     Policy = $"{PolicyPrefix}{administratorPermissions}";
 }
 public AdministratorPermissionsAuthorizationRequirement(AdministratorPermissions administratorPermissions)
 {
     AdministratorPermissions = administratorPermissions;
 }