Я пытаюсь настроить Windows 2012, общая конфигурация IIS8. То есть два сервера IIS используют один и тот же файл конфигурации, который хранится в общей сетевой папке.
Я установил общий ресурс и предоставил пользователю «полный контроль» над ним. Я также предоставил учетной записи userA разрешение на "изменение" защиты файлов.
Затем я запустил следующий сценарий VB:
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/REDIRECTION"
Set configurationRedirection = adminManager.GetAdminSection( "configurationRedirection", "MACHINE/REDIRECTION" )
configurationRedirection.Properties.Item( "enabled" ).Value = True
configurationRedirection.Properties.Item( "path" ).Value = "\\server\iis-config"
configurationRedirection.Properties.Item( "userName" ).Value = "ourdomain\userA"
configurationRedirection.Properties.Item( "password" ).Value= "password"
adminManager.CommitChanges
Когда я пытаюсь получить доступ к серверу через диспетчер IIS, я получаю следующую ошибку:
There was an error while performing this operation.
Details:
Filename: MACHINE/WEBROOT/APPHOST
Error: Cannot read configuration file due to insufficient permissions
Что я делаю не так? Как я могу заставить это работать?
Похоже, я смог разобраться в этом самостоятельно. В документации Microsoft:
* Примечание: если NT Service \ WMSVC не имеет разрешений на общий ресурс UNC - что будет иметь место для общих ресурсов UNC на другом компьютере - (WMSVC не означает ничего за пределами области локального компьютера), обновите удостоверение веб-управления Service (services.msc), чтобы быть пользователем домена, имеющим доступ к серверу, а также к общему ресурсу UNC.
Итак, что мне нужно было сделать, это зайти в services.msc на каждом из веб-серверов и изменить «Службу веб-управления» для работы с моей новой учетной записью домена (ourdomain \ userA), и теперь все работает.
Надеюсь, это поможет кому-то другому.