Как определить, не связан ли пользователь с компьютером с нашим доменом в проекте ASP.NET Web Application? - PullRequest
0 голосов
/ 29 января 2019

Это будет выглядеть как дубликат на поверхности, но это не так.Здесь задействованы 2 сервера, оба связаны с AD / LDAP для аутентификации.

Мое веб-приложение использует System.DirectoryServices.AccountManagement через библиотеку, входящую в мой проект.Все наши пользователи входят в него, однако есть несколько страниц, которые не требуют входа (статистика, незначительные отчеты и т. Д.). Поэтому у нас смешанные требования для входа.Моя проблема возникает из-за того, что я динамически создаю ссылки на совершенно другой сервер приложений.

У этого другого сервера есть один URL-путь, по которому будет выполняться автоматическая аутентификация от аутентифицированного пользователя AD, подключенного к рабочей станции, присоединенной к домену.Если пользователь не входит в систему таким образом, используется другой путь URL, который запрашивает учетные данные AD.Это переключение пути не происходит автоматически!Я должен выписать URL-адрес отдельно для каждой ситуации.

Обычно люди спрашивают, как заставить работать автологон на их ASP-сайте.Я пытаюсь заставить это не работать, но надежно.

Что я хотел бы сделать на своем сайте, так это проверить, в идеале, что-нибудь, что вернул бы нулевого или не зарегистрированного пользователя, если пользователь находится на несвязанном устройстве (например, iPad, iMac,ChromeBook и т. Д.) Или привязаны к другому домену.Поскольку я использую System.DirectoryServices для аутентификации веб-сайта, каждый вариант, который я пытался получить неверное имя пользователя при создании URL-адресов для другого сайта, дает мне имя пользователя от имени моего веб-сайта в AD.

Вещи, по которым я пытался получить плохое имя пользователя:

  • Page.User.Identity
  • Page.User.Identity
  • Запрос.Переменные сервера
  • System.Security
  • System.Web.Security

Вещи, которые не будут работать: Проверка на Chrome / Safari - может быть установлена ​​и использована с подключенных устройств,Аналогично проверка на мобильные устройства.

То, что я ищу, это то, что, как ожидается, завершится ошибкой, если пользователь не вошел в систему на присоединенной машине AD в нашем Домене. (Там может бытьдругие домены, которые будут иметь экран входа во 2-е приложение.)

...