Пример #1
0
		internal ADGroup[] GetAuthorizationGroups(string partitionDN, string principalDN)
		{
			this.Init();
			GetADPrincipalAuthorizationGroupRequest getADPrincipalAuthorizationGroupRequest = new GetADPrincipalAuthorizationGroupRequest();
			getADPrincipalAuthorizationGroupRequest.PrincipalDN = principalDN;
			getADPrincipalAuthorizationGroupRequest.PartitionDN = partitionDN;
			GetADPrincipalAuthorizationGroupResponse aDPrincipalAuthorizationGroup = this._acctMgmt.GetADPrincipalAuthorizationGroup(this._sessionHandle, getADPrincipalAuthorizationGroupRequest);
			List<ADGroup> aDGroups = new List<ADGroup>();
			if (aDPrincipalAuthorizationGroup.MemberOf == null)
			{
				return new ADGroup[0];
			}
			else
			{
				ActiveDirectoryGroup[] memberOf = aDPrincipalAuthorizationGroup.MemberOf;
				for (int i = 0; i < (int)memberOf.Length; i++)
				{
					ActiveDirectoryGroup activeDirectoryGroup = memberOf[i];
					ADGroup aDGroup = new ADGroup();
					this.PopulateADGroupFromWebServiceData(activeDirectoryGroup, aDGroup);
					aDGroups.Add(aDGroup);
				}
				return aDGroups.ToArray();
			}
		}
Пример #2
0
        private void PopulateADGroupFromWebServiceData(ActiveDirectoryGroup inputWSGroup, ADGroup groupToPopulate)
        {
            ActiveDirectoryGroupScope groupScope = inputWSGroup.GroupScope;

            switch (groupScope)
            {
            case ActiveDirectoryGroupScope.DomainLocal:
            {
                groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.DomainLocal);
                break;
            }

            case ActiveDirectoryGroupScope.Global:
            {
                groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.Global);
                break;
            }

            case ActiveDirectoryGroupScope.Universal:
            {
                groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.Universal);
                break;
            }
            }
            ActiveDirectoryGroupType groupType = inputWSGroup.GroupType;

            switch (groupType)
            {
            case ActiveDirectoryGroupType.Distribution:
            {
                groupToPopulate.GroupCategory = new ADGroupCategory?(ADGroupCategory.Distribution);
                break;
            }

            case ActiveDirectoryGroupType.Security:
            {
                groupToPopulate.GroupCategory = new ADGroupCategory?(ADGroupCategory.Security);
                break;
            }
            }
            this.PopulateADPrincipalFromWebServiceData(inputWSGroup, groupToPopulate);
        }
Пример #3
0
		private void PopulateADGroupFromWebServiceData(ActiveDirectoryGroup inputWSGroup, ADGroup groupToPopulate)
		{
			ActiveDirectoryGroupScope groupScope = inputWSGroup.GroupScope;
			switch (groupScope)
			{
				case ActiveDirectoryGroupScope.DomainLocal:
				{
					groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.DomainLocal);
					break;
				}
				case ActiveDirectoryGroupScope.Global:
				{
					groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.Global);
					break;
				}
				case ActiveDirectoryGroupScope.Universal:
				{
					groupToPopulate.GroupScope = new ADGroupScope?(ADGroupScope.Universal);
					break;
				}
			}
			ActiveDirectoryGroupType groupType = inputWSGroup.GroupType;
			switch (groupType)
			{
				case ActiveDirectoryGroupType.Distribution:
				{
					groupToPopulate.GroupCategory = new ADGroupCategory?(ADGroupCategory.Distribution);
					break;
				}
				case ActiveDirectoryGroupType.Security:
				{
					groupToPopulate.GroupCategory = new ADGroupCategory?(ADGroupCategory.Security);
					break;
				}
			}
			this.PopulateADPrincipalFromWebServiceData(inputWSGroup, groupToPopulate);
		}