2011-03-02 5 views
1

다음 오류 메시지가 Active Directory에 연결되어 웹 서비스를 통해 사용자 정보를 가져옵니다.프로덕션 서버의 웹 서비스에서 Active Directory에 액세스하는 동안 오류가 발생했습니다.

지정한 도메인이 존재하지 않거나 연락 할 수 없습니다.

그러나 웹 서비스를 로컬로 실행하면 정상이며 웹 서비스에서 사용자 정보를 얻을 수 있습니다.

정상적인 방법으로 (webservice가 아닌) 다음 코드를 실행하면 정상적으로 작동합니다. 이 문제는 웹 서비스로 변경 한 경우에만 발생합니다. 어떤 충고? 감사.

[WebMethod] 
public string[] GetADUserInfo(string SAMAccount) 
{  
     DirectoryEntry entry = new DirectoryEntry("LDAP://xxxx", "username", "pwd"); 

     try 
     { 
      string Filter = String.Format("(&(objectClass=user)(sAMAccountName={0}))", SAMAccount); 

      string[] properties = new string[] { "employeeid", "cn" }; 
      DirectorySearcher Dsearch = new DirectorySearcher(entry, Filter, properties); 

      SearchResult result = Dsearch.FindOne(); 

      xxxxxxx 
      xxxxxxx 
     } 
     catch (Exception ex) 
     { 
      Debug.Write("Err in GetADUserInfo : " + ex.Message); 
     } 


    return {"a","b"}; 
} 

답변

0

방금 ​​답변을 찾았습니다. // DC가

대신 그 AA, 직류 =의 BB, DC = CC를 = 나는 도메인 이름을 사용하도록 변경하며 다음과 같이된다 : 는 이전에, 내 LDAP 문자열은 LDAP입니다

LDAP : //mydomain.com/DC=aa,DC=bb,DC=cc

올바른 방법인지 확실하지 않습니다. 그러나 그것은 나를 위해 일합니다. 제안 및 조언을 환영합니다.

관련 문제