Почему «WindowsIdentity.GetCurrent (). Name» возвращает IISAppPool \\ [AppPoolName] - PullRequest
0 голосов
/ 10 мая 2018

У меня есть основное приложение Asp Net. Я установил Аутентификацию на Аутентификацию Windows. когда я запускаю приложение из Visual Studio, WindowsIdentity.GetCurrent().Name возвращает имя моего компьютера, а когда я размещаю его на IIS, оно дает имя IISAppPool. Я хочу получить имя пользователя домена пользователя и хранить в БД.

Вышеупомянутый сценарий был, когда у меня был anonymousAuthentication: true.

Вот когда я его поменяю. Содержание launchSettings.json для IIS:

"iisSettings": {
"windowsAuthentication": true,
"anonymousAuthentication": false,
"iisExpress": {
  "applicationUrl": "http://localhost:21021/",
  "sslPort": 0
}

Я также добавил [AbpAllowAnonymous] на TokenAuthController.

Теперь при загрузке страницы появляется запрос на ввод имени пользователя и пароля. Я не знаю, что мне следует добавить в качестве имени пользователя и пароля. Я уже попробовал свои имя пользователя и пароль для Windows, но он продолжает запрашивать у меня имя пользователя и пароль!

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

Чтобы сделать то, что вы, похоже, пытаетесь сделать, вам нужно указать iis запустить приложение как аутентифицированный пользователь. Это можно сделать для каждого отдельного домена приложения в разделе «Аутентификация> параметр конфигурации олицетворения ASP.NET»; однако вам придется как-то аутентифицировать своих пользователей, будь то обычная аутентификация, Kerberos или HTTP-модуль, который назначает принципы потоков (Basic не требует дополнительного кодирования, равно как и окна, но пользователи должны находиться в одном домене). Без этого приложение запускается как учетная запись службы пула приложений, и, таким образом, идентификатор потока будет таким. Более того, при этом у пользователя будут права, которые они имеют на сервере (поэтому, если вы войдете в папку, к которой у них нет собственного доступа, вы получите сообщение об ошибке).

0 голосов
/ 10 мая 2018

Возможно дублировать . Получить идентификатор Windows легко, если вы начинаете с нуля в предоставленном Microsoft шаблоне.

Делать это из Abp может быть немного сложнее.

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