내 ASP.NET 웹 서비스를 Active Directory 설정과 통합하는 데 문제가 있으며 사용자 인증에 사용하고 AD 그룹에 회원으로 가입했는지 확인하십시오. 내 사용자 지정 응용 프로그램을 사용할 수있는 권한.Active Directory에서 사용자 그룹 얻기
내 사용자 지정 응용 프로그램에는 고유 한 사용 권한이 있으며 관리자는 사용자 지정 응용 프로그램을 사용할 수있는 Active Directory 그룹을 구성합니다.
나는 양방향 트러스트를 사용하는 다른 신뢰할 수있는 AD 포리스트의 사용자가 로그인을 시도 할 때 문제가 발생합니다. AD 서버에서 자신의 그룹 목록을 가져올 수 없습니다. 내 ASP.NET 웹 서비스 와 통신합니다. ASP.NET 웹 서비스는 트러스트 AD 컨트롤러 (AD Secondary)가 아닌 AD 서버 (AD Main)에만 액세스 할 수 있습니다.
사용자는 (AD 보조) 도메인의 회원이며 (AD 주) 도메인에 대해 해당 사용자를 인증 할 수 있지만 (AD 주) 도메인에서 그룹 목록을 가져올 수 없습니다. 사용자가 (AD 보조) 도메인에 있습니다.
이 코드를 사용해 보았습니다.
StringCollection groupids = new StringCollection();
try
{
DirectoryLibrary dirLib = new DirectoryLibrary();
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://" + domain,username, password);
if (directoryEntry != null)
{
//Enum the properties so we can see what is in them
foreach (string propname in directoryEntry.Properties.PropertyNames)
{
Debug.WriteLine(propname);
}
object obGroups = directoryEntry.Invoke("Groups");
foreach (object ob in (IEnumerable)obGroups)
{
// Create object for each group.
DirectoryEntry obGpEntry = new DirectoryEntry(ob);
groupids.Add(obGpEntry.NativeGuid);
}
}
}
catch (DirectoryServicesCOMException ex) { throw ex; }
저는 DirectoryEntry 객체에서 이와 비슷한 것으로 이동하려고했습니다.
List<GroupPrincipal> result = new List<GroupPrincipal>();
StringCollection groupids = new StringCollection();
PrincipalContext yourDomain = new PrincipalContext(ContextType.Domain, domain, userName, password);
// find your user
UserPrincipal user = UserPrincipal.FindByIdentity(yourDomain, userName);
// if found - grab its groups
if (user != null)
{
PrincipalSearchResult<Principal> groups = user.GetGroups();
// iterate over all groups
foreach (Principal p in groups)
{
// make sure to add only group principals
if (p is GroupPrincipal)
{
groupids.Add(p.DisplayName);
}
}
}
하지만 사용자를 얻지 못하고 다른 도메인의 해당 사용자에 대한 그룹 목록을 가져올 수 없습니다. 어떤 도움을 주시면 감사하겠습니다.
나는 [이전했다] 한 (http://serverfault.com/questions/358102/inconsistent-information-in-active AD 회원 가입으로 작은 고통의 세계 - 디렉토리 회원 및 회원 속성). 행운을 빌어 요, 내가 말할 수있는 전부입니다 ... – AakashM
아직 해결책을 찾지 못했지만 ADFS를 설치하려고합니다. –