Пример #1
0
 public static string MessageNotAuthorized(string activity, ZSecurityOperations securityOperation)
 {
     return(String.Format(SecurityActivityResources.NotAuthorized,
                          activity,
                          SecurityHelper.GetSecurityOperationName(securityOperation),
                          IdentityHelper.UserName));
 }
Пример #2
0
        public bool IsAuthorized(string activity, ZSecurityOperations operation, ZOperationResult operationResult)
        {
            bool result = IsAuthorized(activity, operation);

            if (!result)
            {
                operationResult.ErrorMessage = SecurityHelper.MessageNotAuthorized(activity, operation);
            }

            return(result);
        }
Пример #3
0
        public static string GetSecurityOperationName(ZSecurityOperations securityOperation)
        {
            string result = "";

            try
            {
                int index = (int)securityOperation;
                result = SecurityDefaults.SecurityOperationsNames[index];
            }
            catch
            {
            }

            return(result);
        }
Пример #4
0
        public static ZSecurityOperations GetSecurityOperationByName(string name)
        {
            ZSecurityOperations result = ZSecurityOperations.None;

            try
            {
                int index = Array.IndexOf(SecurityDefaults.SecurityOperationsNames, name);
                if (index > 0)
                {
                    result = (ZSecurityOperations)index;
                }
            }
            catch
            {
            }

            return(result);
        }
Пример #5
0
        public static ZSecurityOperations GetSecurityOperationByAcronym(string acronym)
        {
            ZSecurityOperations result = ZSecurityOperations.None;

            try
            {
                int index = Array.IndexOf(SecurityDefaults.SecurityOperationsAcronyms, acronym);
                if (index > 0)
                {
                    result = (ZSecurityOperations)index;
                }
            }
            catch
            {
            }

            return(result);
        }
Пример #6
0
        public bool IsAuthorized(string activity, ZSecurityOperations operation)
        {
            if (IdentityHelper.IsAdministrator)
            {
                return(true);
            }

            bool result = false;

            if (!String.IsNullOrEmpty(activity))
            {
                string operationAcronym = SecurityHelper.GetSecurityOperationAcronym(operation);

                IGenericRepository <ActivityRole> repositoryActivityRole = UnitOfWork.GetRepository <ActivityRole>();
                IGenericRepository <Activity>     repositoryActivity     = UnitOfWork.GetRepository <Activity>();
                IGenericRepository <UserRole>     repositoryUserRole     = UnitOfWork.GetRepository <UserRole>();

                IQueryable <ActivityRole> activityRoles =
                    from
                    ActivityRole in repositoryActivityRole.Query
                    from
                    Activity in repositoryActivity.Query
                    from
                    UserRole in repositoryUserRole.Query
                    where
                    ActivityRole.ActivityId == Activity.Id &&
                    Activity.Name == activity &&
                    ActivityRole.RoleId == UserRole.RoleId &&
                    UserRole.UserId == IdentityHelper.UserId
                    select
                    ActivityRole;

                foreach (ActivityRole activityRole in activityRoles.ToList())
                {
                    if (activityRole.Operations.ToUpper().Contains(operationAcronym))
                    {
                        result = true;
                        break;
                    }
                }
            }

            return(result);
        }
Пример #7
0
        public static bool GetIsSecurityOperation(ZIsSecurityOperations isSecurityOperations, ZSecurityOperations operation)
        {
            bool result = false;

            switch (operation)
            {
            case ZSecurityOperations.Search:
                result = isSecurityOperations.IsSearch;
                break;

            case ZSecurityOperations.Create:
                result = isSecurityOperations.IsCreate;
                break;

            case ZSecurityOperations.Read:
                result = isSecurityOperations.IsRead;
                break;

            case ZSecurityOperations.Update:
                result = isSecurityOperations.IsUpdate;
                break;

            case ZSecurityOperations.Delete:
                result = isSecurityOperations.IsDelete;
                break;
            }

            return(result);
        }
Пример #8
0
 public bool IsAuthorized(string activity, ZSecurityOperations operation, ZOperationResult operationResult)
 {
     return(true);
 }