У нас есть IIS7, работающий на Windows Web Server 2008 R2. Он настроен для поддержки веб-развертывания. Это нормально работало, когда мы использовали учетную запись администратора по умолчанию. Недавно мы отключили эту учетную запись (по соображениям безопасности) и теперь пытаемся выполнить развертывание с использованием другой учетной записи, которая является членом группы администраторов.
С этой учетной записью развертывание не выполняется с ошибкой 401 (неавторизовано). В частности, в нем говорится:
Подключен к «<IP>» с помощью службы агента веб-развертывания, но не может авторизоваться. Убедитесь, что вы являетесь администратором «<IP>». Удаленный сервер возвратил ошибку: (401) Неавторизованный.
Как я могу решить эту проблему?
Если вы посмотрите на место, где будут храниться файлы приложения, возможно, что учетная запись «Администратор» имеет доступ, но группа «Администраторы» никогда не была настроена с такими разрешениями. Кроме того, в папку C: \ windows \ inetsvr, вероятно, потребуется запись (поскольку при развертывании необходимо обновить config / files, а при развертывании некоторых приложений обновлять ключи реестра журнала событий. Просто быть членом группы администраторов не всегда является «исправлением»). все."
Проверьте права доступа на сайте и в папке приложения, перейдите на стартовую страницу / сервер (Имя) (учетная запись) / Управление. Или на САЙТ / ПРИЛОЖЕНИЕ Management.
Что ж, это проблемы с правами: Правильное исправление:
Быстрое исправление (не рекомендуется): добавьте пользователя win, с которым вы выполняете развертывание, в группу администраторов.
Надеюсь это поможет .
Если у вас возникла эта проблема, вы можете исправить ее, создав следующий ключ реестра Windows:
HKLM:\Software\Microsoft\WebManagement\Server
"WindowsAuthenticationEnabled"
установлен в "1"
Вы можете легко добиться этого, скопировав следующие строки в консоль Powershell, запустив ее от имени администратора:
$webDeployWindowsAuth = "HKLM:\Software\Microsoft\WebManagement\Server"
$winAuthEnabled = "WindowsAuthenticationEnabled"
$winAuthValue = "1"
if(Test-Path $webDeployWindowsAuth)
{
New-ItemProperty -Path $webDeployWindowsAuth -Name $winAuthEnabled -Value $winAuthValue -PropertyType DWORD -Force
}
Затем, после проверки того, успешно ли создан этот ключ в реестре Windows, вам необходимо перезапустить службу веб-управления, чтобы затем снова попытаться развернуть свое приложение.