Пример #1
0
        public bool HasPermission(int userId, DataAccessLayer.Enums.PermissionsEnum permission)
        {
            UserRole userRoles = _dbContext.UserRoles
                                 .Where(o => o.UserId == userId)
                                 .Include(o => o.Role.RolePermissions)
                                 .FirstOrDefault();

            if (userRoles != null)
            {
                if (userRoles.Role.RolePermissions
                    .Where(rolePermission => rolePermission.PermissionID == permission)
                    .Any())
                {
                    return(true);
                }
            }
            return(false);
        }
Пример #2
0
 /// <summary>
 /// Checks if a user is authorized to perform a action by checking if they have the permission needed
 /// </summary>
 /// <param name="user">User that must be checked if they are authorized</param>
 /// <param name="checkIfAuthorized">check if user has this permission</param>
 /// <returns>true if user has permission, false otherwise</returns>
 public bool HasPermission(User user, DataAccessLayer.Enums.PermissionsEnum permission)
 {
     return(HasPermission(user.UserId, permission));
 }
 /// <summary>
 /// GetPermission is a method in the RoleService class.
 /// This enables us to retrieve a permission from the DB if necessary.
 /// </summary>
 /// <param name="role">The role we want to retrieve</param>
 /// <returns></returns>
 public Permission GetPermission(DataAccessLayer.Enums.PermissionsEnum permission)
 {
     return(_dbContext.Permissions.Find(permission));
 }