Example #1
0
 public bool ContainsMember(SecurityPrincipal principal)
 {
     if (this == GroupPrincipal.Everyone)
         return true;
     else
         return _members.Contains(principal);
 }
Example #2
0
        public void RemoveMember(SecurityPrincipal principal)
        {
            if (principal == null)
                throw new ArgumentNullException("principal");
            if (!_members.Contains(principal))
                throw new ArgumentException("The GroupPrincipal specified does not contain the specified SecurityPrincipal.");

            _members.Remove(principal);
            principal.Memberships.Remove(this);
            OnMemberRemoved(new SecurityPrincipalEventArgs(principal));
        }
Example #3
0
        internal bool ContainsMemberRecursive(SecurityPrincipal principal)
        {
            if (ContainsMember(principal))
                return true;

            foreach (var subGroup in this.Members.OfType<GroupPrincipal>())
            {
                if (subGroup.ContainsMemberRecursive(principal))
                    return true;
            }

            return false;
        }
Example #4
0
        public void AddMember(SecurityPrincipal principal)
        {
            if (principal == null)
                throw new ArgumentNullException("principal");
            if (principal == this)
                throw new ArgumentException("A Group cannot be a member of itself.");
            if (_members.Contains(principal))
                throw new ArgumentException("This GroupPrincipal already contains the specified SecurityPrincipal.");

            _members.Add(principal);
            principal.Memberships.Add(this);

            OnMemberAdded(new SecurityPrincipalEventArgs(principal));
        }
 public SecurityDescriptor(SecurityPrincipal principal, bool view, bool edit)
 {
     this.SecurityPrincipal = principal;
     this.ViewAllowed = view;
     this.EditingAllowed = edit;
 }
 public SecurityPrincipalsEventArgs(SecurityPrincipal principal)
 {
     this.SecurityPrincipals = new[] { principal };
 }
 public SecurityPrincipalEventArgs(SecurityPrincipal principal)
 {
     this.SecurityPrincipal = principal;
 }