Esempio n. 1
0
        public List <Dictionary <string, string> > GetSecurityGroups()
        {
            List <Dictionary <string, string> > dicSecuritygroups = null;

            try
            {
                WebHttpClient    client   = CreateWebClient(_adapterServiceUri);
                PermissionGroups lstgroup = client.Get <PermissionGroups>("/groups");

                dicSecuritygroups = new List <Dictionary <string, string> >();
                Dictionary <string, string> dicobj = null;
                foreach (string group in lstgroup)
                {
                    dicobj = new Dictionary <string, string>();
                    dicobj.Add("permission", group);
                    dicSecuritygroups.Add(dicobj);
                }
            }
            catch (Exception ex)
            {
                _logger.Error(ex.ToString());
                throw;
            }

            return(dicSecuritygroups);
        }
Esempio n. 2
0
        public async Task GetPermissionUser_Test()
        {
            PermissionGroups group1 = new PermissionGroups()
            {
                Id        = 1,
                GroupName = "Group1",
                Enabled   = true
            };

            _dbContext.Set <PermissionGroups>().Add(group1);

            PermissionGroups group2 = new PermissionGroups()
            {
                Id        = 2,
                GroupName = "Group2",
                Enabled   = true
            };

            _dbContext.Set <PermissionGroups>().Add(group2);

            PermissionGroupMembers member1 = new PermissionGroupMembers()
            {
                Id      = 1,
                UserId  = 1,
                GroupId = 1,
                Enabled = true
            };

            _dbContext.Set <PermissionGroupMembers>().Add(member1);

            PermissionGroupMembers member2 = new PermissionGroupMembers()
            {
                Id      = 2,
                UserId  = 1,
                GroupId = 2,
                Enabled = true
            };

            _dbContext.Set <PermissionGroupMembers>().Add(member2);

            _dbContext.SaveChanges();
            var efRepositoryPermissionGroups       = new EfRepository <PermissionGroups>(_dbContext);
            var efRepositoryPermissionGroupMembers = new EfRepository <PermissionGroupMembers>(_dbContext);

            _httpContextAccessor.HttpContext.User = new ClaimsPrincipal(new ClaimsIdentity(new Claim[]
            {
                new Claim("userId", "2")
            }));

            var getPermissionByUserIdQuery = new GetPermissionByUserIdQuery(efRepositoryPermissionGroups, efRepositoryPermissionGroupMembers, _httpContextAccessor);
            var permission = await getPermissionByUserIdQuery.ExecuteAsync(1);

            Assert.NotNull(permission);
            Assert.Equal(2, permission.Count);
        }
Esempio n. 3
0
 public override int GetHashCode()
 {
     unchecked
     {
         int hashCode = base.GetHashCode();
         hashCode = (hashCode * 397) ^ (FromState != null ? FromState.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ FromStateId.GetHashCode();
         hashCode = (hashCode * 397) ^ (ToState != null ? ToState.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ ToStateId.GetHashCode();
         hashCode = (hashCode * 397) ^ (PermissionGroups != null ? PermissionGroups.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ SkipPermissionGroups.GetHashCode();
         return(hashCode);
     }
 }
        public PermissionProperties(User user, PermissionViewModel viewModel)
        {
            InitializeComponent();
            this.User = user;
            _model    = viewModel;

            _permType = User.GetPermissionType(viewModel.Permission);

            if (_permType == PERMISSION_TYPE.ALLOWDISALLOW)
            {
                gridAllowDisallow.Visibility = Visibility.Visible;
                gridRWIUD.Visibility         = Visibility.Collapsed;

                bool isAllowed = ((int)_model.Permission & (int)PERMISSION_MASK.ALLOW) != 0;

                if (isAllowed)
                {
                    optAllowed.IsChecked = true;
                }
                else
                {
                    optNotAllowed.IsChecked = true;
                }
            }
            else
            {
                gridAllowDisallow.Visibility = Visibility.Collapsed;
                gridRWIUD.Visibility         = Visibility.Visible;

                optNoPermissions.IsChecked = true;

                if ((_model.Mask & (int)PERMISSION_MASK.READ) != 0)
                {
                    if ((_model.Mask & (int)PERMISSION_MASK.WRITE) != 0)
                    {
                        optModify.IsChecked = true;
                        chkDelete.IsChecked = (_model.Mask & (int)PERMISSION_MASK.DELETE) != 0;
                        chkInsert.IsChecked = (_model.Mask & (int)PERMISSION_MASK.INSERT) != 0;
                        chkUpdate.IsChecked = (_model.Mask & (int)PERMISSION_MASK.UPDATE) != 0;
                    }
                    else
                    {
                        optReadOnly.IsChecked = true;
                    }
                }
            }

            grp.Header = String.Format("{0}/{1}", PermissionGroups.GetDescriptionForPermission(_model.Permission), _model.Permission);
        }
        void vm_LazyLoadChildren(HierarchicalViewModelBase item)
        {
            using (new OverrideCursor(Cursors.Wait)) {
                var groupNode = item as GroupViewModel;
                if (groupNode != null)
                {
                    item.Children.Clear();
                    var service     = new SupportService(User);
                    var permissions = service.GetPermissions(groupNode.GroupID);

                    var permGroupNodes = new Dictionary <string, PermissionGroupViewModel>();

                    foreach (PermissionCategory perm in Enum.GetValues(typeof(PermissionCategory)))
                    {
                        String desc = PermissionGroups.GetDescriptionForPermission(perm);
                        PermissionGroupViewModel permGroupNode = null;
                        if (!permGroupNodes.ContainsKey(desc))
                        {
                            permGroupNode = new PermissionGroupViewModel(desc);
                            item.Children.Insert(0, permGroupNode);
                            permGroupNodes[desc] = permGroupNode;
                        }
                        else
                        {
                            permGroupNode = permGroupNodes[desc];
                        }

                        var permission = permissions.FirstOrDefault((p) => {
                            return(p.PermissionID == (int)perm);
                        });

                        var mask = permission == null ? 0 : permission.Mask1;

                        permGroupNode.Children.Add(new PermissionViewModel(groupNode.GroupID, perm, mask));
                    }
                }
            }
        }