В IIS учетные данные физического пути задаются в applicationHost.config следующим образом:
<virtualDirectory path="/" physicalPath="C:\Path\to\files" userName="user" password="[enc:IISCngProvider:ENCRYPTEDBLOBHERE=:enc]" />
К установлен или же изменение значение имени пользователя и пароля, я могу использовать Set-WebConfigurationProperty:
$xpath = "system.applicationhost/sites/site[@name='Веб-сайт по умолчанию']/application[@path='/MyApplication']/virtualDirectory[@path='/']"
Set-WebConfigurationProperty $xpath -name userName -value "ИМЯ ПОЛЬЗОВАТЕЛЯ"
Set-WebConfigurationProperty $xpath -имя пароль -значение "ПАРОЛЬ"
Но как удалить эти атрибуты, чтобы IIS снова переключился на сквозную аутентификацию? Я пробовал все следующее без успеха:
Remove-WebConfigurationProperty $xpath -name userName
# Имя свойства userName не указывает на коллекцию.
Remove-WebConfigurationProperty "$xpath/@userName"
# Параметр Name обязателен
Remove-WebConfigurationProperty "$xpath/@userName" -name .
# ВНИМАНИЕ: свойство . не найден в /system.applicationHost/sites/site[@name='Веб-сайт по умолчанию' и @id='1']/application[@path='/MyApplication']/virtualDirectory[@path='/'] /@имя пользователя.
Clear-WebConfiguration "$xpath/@userName" -Force
# Ничего не меняется
Remove-ItemProperty "IIS:\Sites\Default Web Site\MyApplication" -Name userName
# Имя свойства userName не указывает на коллекцию.
Я знаю, что могу сделать это с помощью appcmd, но не должен ли быть способ сделать это с помощью модуля WebAdministration?