ASP. NET MVC User.Identity.Name is Blank - PullRequest
       3

ASP. NET MVC User.Identity.Name is Blank

0 голосов
/ 19 апреля 2020

Я пытаюсь создать сайт ASP. NET MVC, который позволяет определенным пользователям домена входить в систему и получать доступ к различным функциям, которые он предлагает. Я создаю это, используя Azure AD, у которого Azure есть действительно хороший способ позволить вам загрузить предварительно созданное приложение, которое появляется на странице входа в систему Windows и уже аутентифицирует пользователя.

Здесь это страница входа Это даже предварительно заполнено с моим доменом.

Username@mydomain.com

enter image description here

Однако после успешного входа в систему свойство User.Identity.Name имеет значение null.

enter image description here

Я провел поиск в Интернете и обнаружил тонну сообщений, таких как this , в которых рекомендуется отключить анонимную аутентификацию и Windows аутентификацию в свойствах проекта. Я сделал это, но он автоматически регистрирует меня, полностью обойдя страницу входа в систему, и User.Identity.Name - это имя P C, над которым я сейчас разрабатываю. Есть ли способ включить Windows Аутентификацию и при этом работать страницу входа?

РЕДАКТИРОВАТЬ 1: Я забыл упомянуть, что свойство User.Identity.Name равно нулю после пользователь авторизован для входа в систему.

1 Ответ

0 голосов
/ 21 апреля 2020

ОБНОВЛЕНИЕ

Вы можете установить Windows Authentication для enabled и Anonymous Authentication для disabled в Visual Studio, как показано ниже. Выберите проект, нажмите F4 и затем измените эти свойства.

enter image description here

Затем вы можете запустить его, вы можете увидеть пи c.

enter image description here

Я нашел документ об этом, я думаю userClaim.Name такой же, как WindowsIdentity.GetCurrent().Name. Если вам интересно, вы можете изучить его, и мне не очень понятно о WindowsIdentity.

PRIVIOUS

Полагаю, вы хотите это name. Вы можете использовать string name=userClaims?.FindFirst("name")?.Value; чтобы получить имя пользователя.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...