我想修改IIS Web应用程序处理程序映射权限。
我是手动完成的,如下所示。
打开IIS,站点/ Web应用程序,单击处理程序映射,在操作中单击“编辑功能权限”,然后取消选中/检查脚本。
我想使用PowerShell自动执行此操作。
我可以使用以下代码阅读权限状态。
Get-WebConfigurationProperty -Filter /system.webServer/handlers -name accesspolicy -PSPath IIS:\ -Location 'Default Web Site/WebApplication’
我尝试使用以下代码修改权限。但这不起作用。谁能告诉我这里我做错了什么。
Set-WebConfigurationProperty -Filter /system.webServer/handlers -name accesspolicy -value "Script" -PSPath IIS:\ -Location 'Default Web Site/WebApplication’ –Force
答案 0 :(得分:1)
我认为你非常接近,但你的目标是ISAPI-dll,而不是个人处理程序。以下是各个处理程序的代码(我仍以ISAPI-dll为例):
Set-WebConfiguration "/system.webServer/handlers/add[@name='ISAPI-dll']/@requireAccess" -Value "Execute" -PSPath "IIS:/sites/Default Web Site"
以下是启用所有处理程序(包括ISAPI-dll)访问的代码:
Set -WebConfiguration "/system.webServer/handlers/@AccessPolicy" -value "Read, Script, Execute"
保留-PSPath
部分以在服务器级别执行此操作。
删除“执行”以禁用ISAPI-dll。
此外,this链接可以作为有用的参考。