Обнаружение VPN-соединения или доверенного сетевого подключения

#c# #ldap #vpn #directoryentry #trustedconnection

#c# #ldap #vpn #вход в директорию #доверенное соединение

Вопрос:

Можно ли проверить vpn-соединение или компьютер подключен к доверенной сети? Моему приложению требуется подключение к LDAP для получения некоторых данных. это действие запускается, когда пользователь входит в систему на компьютере и включает пользователя, работающего за пределами доверенной сети (домашней сети), и это вызывает проблемы при подключении к LDAP.

 DirectoryEntry soRoot = new DirectoryEntry("LDAP://mydomain");
string ssDomainContext = soRoot.Properties["distinguishedName"].Value.ToString();
 

приведенный выше блок кода будет работать корректно, если компьютер успешно подключен к VPN через Cisco Anyconnect или с использованием офисной сети (доверенная сеть)

Меня беспокоит то, сможем ли мы обнаружить соединение с VPN или LDAP сразу после установления соединения, а затем служба обработает следующий шаг?

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

Комментарии:

1. Лучший способ — попробовать LDAP, и если вы получите исключение, попробуйте VPN.

2. сколько раз я должен проверять? Я просто хочу знать сразу после установления соединения для обработки следующего шага…

3. Соединение не будет установлено, если произойдет сбой LDAP. Итак, вы пытаетесь подключиться с помощью LDAP, и если это не удается, попробуйте VPN.

4. спасибо за ваш ответ, меня беспокоит то, как мы можем узнать сразу после подключения LDAP? например: я пишу функцию для проверки подключения LDAP в цикле продолжительностью 5 минут, пока LDAP не будет подключен. Это означает, что если через 1 час на компьютере установлено LDAP-соединение, то у нас есть 12 проверок. Возможно ли это, если мы можем проверять всякий раз, когда у машины есть LDAP-соединение без времени цикла?

5. Разве у вас нет двух условий: 1) Завершено ли соединение (либо LDAP, либо VPN) 2) Соединение все еще подключено.