コード例 #1
0
 public IActionResult Index()
 {
     using (IObjectSpace objectSpace = securityProvider.ObjectSpaceProvider.CreateObjectSpace()) {
         ITypeInfo        typeInfo         = objectSpace.TypesInfo.PersistentTypes.FirstOrDefault(t => t.Name == typeof(Employee).Name);
         PermissionHelper permissionHelper = new PermissionHelper(objectSpace, securityProvider.Security);
         TypePermission   typePermission   = permissionHelper.CreateTypePermission(typeInfo);
         return(View(typePermission));
     }
 }
コード例 #2
0
        private async Task <TypePermission> CreatePermission(TypePermissionDto permission)
        {
            var _typepermission = new  TypePermission {
                Description = permission.Description
            };

            //set identity
            _typepermission.ChangeCurrentIdentity(permission.Id);

            return(_typepermission);
        }
コード例 #3
0
        public ActionResult GetTypePermissions(string typeName)
        {
            ActionResult result   = NoContent();
            ITypeInfo    typeInfo = ObjectSpace.TypesInfo.PersistentTypes.FirstOrDefault(t => t.Name == typeName);

            if (typeInfo != null)
            {
                TypePermission typePermission = CreateTypePermission(typeInfo);
                result = Ok(typePermission);
            }
            return(result);
        }
コード例 #4
0
        private async Task <TypePermission> MaterializepPermissionFromDto(TypePermissionDto permission)
        {
            var _typePermission = await _solicitudDbContext.FindByKey <TypePermission>(permission.Id);

            _typePermission.ChangeCurrentIdentity(permission.Id);

            var _current = new TypePermission {
                Description = permission.Description
            };

            _current.ChangeCurrentIdentity(permission.Id);

            return(_current);
        }
コード例 #5
0
        public ActionResult GetTypePermissions(string typeName)
        {
            ActionResult result = NoContent();

            using (IObjectSpace objectSpace = securityProvider.ObjectSpaceProvider.CreateObjectSpace()) {
                ITypeInfo typeInfo = objectSpace.TypesInfo.PersistentTypes.FirstOrDefault(t => t.Name == typeName);
                if (typeInfo != null)
                {
                    TypePermission typePermission = CreateTypePermission(typeInfo);
                    result = Ok(typePermission);
                }
            }
            return(result);
        }
コード例 #6
0
        private TypePermission CreateTypePermission(ITypeInfo typeInfo)
        {
            Type           type           = typeInfo.Type;
            TypePermission typePermission = new TypePermission();

            typePermission.Key    = type.Name;
            typePermission.Create = Security.IsGranted(new PermissionRequest(ObjectSpace, type, SecurityOperations.Create));
            IEnumerable <IMemberInfo> members = GetPersistentMembers(typeInfo);

            foreach (IMemberInfo member in members)
            {
                bool writePermission = Security.IsGranted(new PermissionRequest(ObjectSpace, type, SecurityOperations.Write, null, member.Name));
                typePermission.Data.Add(member.Name, writePermission);
            }
            return(typePermission);
        }
コード例 #7
0
        private TypePermission CreateTypePermission(ITypeInfo typeInfo)
        {
            Type           type           = typeInfo.Type;
            TypePermission typePermission = new TypePermission();

            typePermission.Key    = type.Name;
            typePermission.Create = securityProvider.Security.CanCreate(type);
            IEnumerable <IMemberInfo> members = GetPersistentMembers(typeInfo);

            foreach (IMemberInfo member in members)
            {
                bool writePermission = securityProvider.Security.CanWrite(type, member.Name);
                typePermission.Data.Add(member.Name, writePermission);
            }
            return(typePermission);
        }
コード例 #8
0
        public ActionResult PermissionTypeUpdate(int id)
        {
            ViewBag.Title   = "Update User Permission Type";
            ViewBag.Message = "";

            TypePermissionBussines.GetTypePermissionRequest request = new TypePermissionBussines.GetTypePermissionRequest()
            {
                TypePermissionID = id
            };
            TypePermission C = TypePermissionBussines.Select.GetTypePermission(request).TypePermission;

            var model = new TypePermissionViewModels()
            {
                TypePermission = C
            };

            return(PartialView(model));
        }
コード例 #9
0
        void SavePermission(TypePermission typePermission)
        {
            try
            {
                var entityValidator = EntityValidatorFactory.CreateValidator();

                if (entityValidator.IsValid(typePermission))
                {
                    _solicitudDbContext.TypePermissions.Add(typePermission);
                    _solicitudDbContext.Commit();
                }
                else
                {
                    throw new ApplicationValidationErrorsException(entityValidator.GetInvalidMessages(typePermission));
                }
            }
            catch (HttpRequestExceptionEx ex)
            {
                throw ex;
            }
        }
コード例 #10
0
ファイル: DialogViewModel.cs プロジェクト: altaricka/vDesign
 public bool IsPermission(TypePermission typePermission)
 {
     return this.SecurityUser.IsPermission(this.ViewModelConfig.TypeEntity, typePermission);
 }