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()); } }
GetADPrincipalAuthorizationGroupResponse Microsoft.ActiveDirectory.Management.IADAccountManagement.GetADPrincipalAuthorizationGroup(ADSessionHandle handle, GetADPrincipalAuthorizationGroupRequest request) { GetADPrincipalAuthorizationGroupResponse aDPrincipalAuthorizationGroup = null; ADDirectoryServiceConnection internalHandle = this.GetInternalHandle(handle); if (internalHandle != null) { aDPrincipalAuthorizationGroup = internalHandle.GetADPrincipalAuthorizationGroup(request); } return(aDPrincipalAuthorizationGroup); }