Jak*_*urc 5 security permissions vbscript iis-6 asp-classic
我必须从一些传统的ASP应用程序运行命令行操作.
这是我的代码:
<%
cmd = "%comspec% /c echo Hello"
set wsh = CreateObject("WScript.Shell")
ireturn = wsh.Run(cmd, 0, true)
set wsh = nothing
%>
Run Code Online (Sandbox Code Playgroud)
这是我收到的结果:
Microsoft VBScript运行时错误"800a0046"
没有权限
/test.asp,第6行
您是否知道如何使IIS6运行此代码?
注意:当然我不必运行echo命令,但我想排除问题的任何其他原因.
更新:我尝试了大多数事情,但是没有任何帮助.也许我可以稍微改变一下问题.我该如何调试这个问题?
ASP通常被拒绝访问任何有潜在危险的东西,例如cmd.exe.检查cmd.exe上的文件权限,看看是否适合你(我想是的).
如果您确实必须使用cmd.exe来执行页面处理的一部分,请更改cmd.exe上的文件权限(不建议面向Internet的Web服务器使用),或者确保ASP页面运行未被拒绝的凭据访问该文件.
要实现此目的,请使用IIS管理控制台删除对ASP页面的"匿名访问"并使用Windows集成身份验证(如果可行),或者保持"匿名访问"并输入应使用的一组固定凭据默认的"IUSR _...".
或者,如果您只是使用cmd.exe来启动向STDOUT输出内容的程序,则可以尝试直接启动该程序,而不将其包装在cmd.exe调用中.同样,ASP页面运行的用户需要访问该程序的可执行文件.
| 归档时间: |
|
| 查看次数: |
8042 次 |
| 最近记录: |