#c# #asp.net #iis #local
#c# #asp.net #iis #Местные новости
Вопрос:
На Localhost мое имя пользователя ‘MTA’ при вызове этого кода:
string opl = HttpContext.Current.User.Identity.Name.ToString();
TextBox1.Text = opl.Substring(opl.IndexOf(@"") 1);
ИЛИ этот код:
string opl = System.Environment.UserName.ToString();
TextBox1.Text = opl.Substring(opl.IndexOf(@"") 1);
Но после публикации и доступа к веб-сайту с сервера Windows. Теперь мое имя пользователя ‘SRVCMAN’.
Комментарии:
1. Мне просто нужно знать пользователя, который использует мой веб-сайт.
2. Но у разных людей может быть одно и то же имя пользователя на разных устройствах.. В чем преимущество получения имени пользователя здесь?
3. Не имеет значения, на каком устройстве он находится, главное, чтобы я мог получить его имя пользователя. Я разработал приложение службы поддержки (для ИТ-отдела предприятия) в asp.net . И приложение должно автоматически определять, кто его использует. Чтобы пользователю не приходилось снова и снова выбирать свое имя.
Ответ №1:
Чтобы это сработало, зайдите в IIS, нажмите на Authentication
и отключите Anonymous Authentication
и включите Windows Authentication
А затем используйте этот код:
var ident = (System.Security.Principal.WindowsIdentity)HttpContext.Current.User.Identity;
If(!ident.IsAnonymous amp;amp; ident.IsAuthenticated)
{
var loginUsername = ident.Name;
}
Комментарии:
1. Где я могу найти аутентификацию?
2. @BadaBoom Откройте IIS и щелкните на своем сайте слева, нажав на аутентификацию посередине под категорией IIS.
Ответ №2:
// will return the host name making the request
string s = Request.ServerVariables["REMOTE_HOST"] ;
-----------------------------------------------------------------
// will return the computer name
string s = Request.ServerVariables["SERVER_NAME"] ;
-----------------------------------------------------------------
//will return Windows account for the user.
string s = Request.ServerVariables["AUTH_USER"] ;
-----------------------------------------------------------------
Я думаю, вы пытаетесь получить информацию следующим образом:
Ответ №3:
Я полагаю, вы ищете реализацию режима проверки подлинности Windows.
Обратитесь к следующим статьям и прочитайте об этом:
Комментарии:
1. Я не думаю, что он говорит об аутентификации Windows.
2. Обратите внимание, что для реализации вышеизложенного вам необходимо настроить свой веб-сайт на использование интегрированной безопасности в IIS.
3. @Muhammad Akhtar: Он хочет аутентифицировать пользователя на предприятии, не заставляя его предоставлять свое имя пользователя и пароль. Я думаю, что проверка подлинности Windows является хорошим выбором для такого случая.
4. может быть, но из его вопроса ничего не прояснилось, чего он хочет. Но я знаю способ и внедрил в одно из моих приложений то, как вы ответили, и у меня тоже есть код, но я подумал, что ему просто нужно имя пользователя, а не аутентификация из его вопроса. Вот почему я неправильно понял вопрос.