Без входа в систему хотя бы один раз (или аутентификации с использованием openId) будет очень сложно (возможно, даже невозможно) сделать это с внешними (интернет) веб-пользователями.
И вот почему:
Это проблема курицы и яйца.
Когда ваша страница ASP запущена, она работает как процесс IIS, поэтому по умолчанию любая учетная запись, на которой запущен IIS, будет зарегистрированной в системе.
Итак, вы не представляете, какую учетную запись выдавать себя за другого. Даже если вы знаете, какая учетная запись, у вашего IIS не должно быть подходящих разрешений для олицетворения произвольной учетной записи без предоставления учетных данных (т. Е. Входа в систему).
Если подумать, это огромная угроза безопасности, поскольку вы просто можете отображать имя пользователя Windows на любой странице.
Не входя в систему, вы можете просто запросить у пользователя имя пользователя и сохранить это значение в файле cookie или LSO. Затем каждый раз, когда пользователь посещает вашу страницу, вы читаете куки и распечатываете значение. Если файл cookie удален, просто предоставьте пользователю диалоговое окно с просьбой сохранить свое имя пользователя. Очевидно, что это не поможет вам, когда вы хотите выполнить поиск в AD (и вы не должны обеспечивать внешний поиск AD без аутентификации - в целях безопасности).
Единственный реальный подход заключается в том, чтобы потребовать от пользователей входа в систему (если вы хотите предоставить пользовательский интерфейс).