Сбой двухстороннего вызова Active Directory для оффшорных подрядчиков, использующих VPN для подключения к сети нашей компании - PullRequest
0 голосов
/ 10 февраля 2010

у нас есть оффшорные подрядчики, которые пытаются запустить приложение, которое выполняет следующий вызов Active Directory, как показано ниже в VB.NET

  Dim objRootDSE As New DirectoryEntry("LDAP://RootDSE")
  Return "GC://" & Replace(Replace(objRootDSE.Properties("rootDomainNamingContext").Value().ToString, ",", "."), "DC=", "") 'DC=uis,DC=unisys,DC=com  

Код возвращает ошибку в строке возврата функции, указывающую, что он не может связаться с сервером, который, когда он работает для меня локально, имеет вид «DC = uis, DC = unisys, DC = com»

Подрядчики подключаются к внутренней сети нашей компании через VPN и, как правило, имеют доступ ко всей сети, поэтому я не знаю, почему они не должны иметь возможность связаться с этим сервером.

Другие оффшорные пользователи в других местах не имеют проблем с тем же кодом.

Я почти ничего не знаю об AD. Кто-нибудь может дать мне подсказку?

1 Ответ

1 голос
/ 10 февраля 2010

Код работает для вас, потому что вы запускаете его на компьютере, подключенном к вашему домену (uis.unisys.com), и вы вошли в систему как пользователь этого домена. Когда вы получаете доступ к DirectoryEntry во второй строке, вы делаете это в контексте пользователя, выполняющего программу. Поскольку консультанты не используют / не имеют учетных записей в вашем домене, у них не будет доступа.

Упрощенное объяснение: Вам будет трудно заставить приведенный выше код работать на любом компьютере, который не присоединен к вашей сети (поскольку поиск RootDSE основывается на этом). Цель вашего кода - получить доменное имя и выполнить поиск по глобальному каталогу (GC). Скорее всего, вы обнаружите другой код в вашей программе, который не будет работать в системах, не подключенных к вашему домену.

Я бы предложил это вместо:

Dim objRootDSE As New DirectoryEntry("GC://uis.unisys.com", "username", "password")

Если имя пользователя и пароль соответствуют учетной записи службы в вашем домене. Таким образом, консультанты могут подключаться к вашему домену в контексте этого пользователя и выполнять требуемую работу.

...