asp-classic – 从ASP访问IIS WMI提供程序的访问被拒绝错误
我有一台运行IIS 6的
Windows 2003服务器,并且有一些自动设置和创建网站的脚本.他们没有在我调试的新服务器上工作(他们已经在其他3台W2K3服务器上工作愉快).问题似乎归结为IIS提供程序上的WMI安全性.下面的ASP代码表示问题(虽然它不是导致问题的原始代码 – 这是问题的简化演示).
Set wmiProvider = GetObject("winmgmts:.rootMicrosoftIISv2") If wmiProvider is Nothing Then Response.Write "Failed to get WMI provider MicrosoftIISv2<br>" End If Response.Write "Querying for IISWebService...<br>" Set colItems = wmiProvider.ExecQuery("Select * From IISWebServer",0) Response.Write "Error: " & Hex(Err.Number) & " (" & Err.Description & ")<br>" 如果我在浏览器中运行此命令,则会在ExecQuery调用后报告访问被拒绝错误.我已经从Root分支一直为IUSR_用户设置了WMI访问权限.事实上,我可以非常愉快地使用CIMV2提供商查询IP地址信息.如果我把IUSR用户放在机器管理员组中,它一切正常,但我真的不想这样做. 这必须是DCOM / WMI安全问题,但我无法解决其他问题.谁能摆脱任何光明? 解决方法
在阅读G. Stoynev的评论询问是否在Windows日志中记录了任何事件后,我检查了我试图通过WMI远程访问IIS的服务器上的事件日志,并且看到我发现了一个带有以下文本的事件:
请参阅this answer中的相关SO问题c# – “Access is denied” Exception with WMI中的代码. 以下是我添加的一些示例C#代码,似乎可以解决这个问题: ConnectionOptions options = new ConnectionOptions(); options.Authentication = AuthenticationLevel.PacketPrivacy; ManagementScope managementScope = new ManagementScope(@"remote-serverrootWebAdministration",options); // ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET MVC和IE缓存 – 操作响应头无效
- asp.net-mvc – 如果有的话,设计模式在实现基于用户的记录级
- Asp.Net MVC缺少样式并默认为登录页面
- asp-classic – VBScript条件短路解决方法
- asp.net-mvc-3 – MVC按钮点击动作
- asp.net-mvc – 相同的项目解决方案或同一解决方案中的新项
- asp.net – HttpHandler 101失败
- asp.net – 在页面的css部分插入内联服务器标签的正确方法是
- asp.net – web.config在文件夹允许全部或没有用户身份验证
- asp.net – ASP .NET核心Cookie身份验证到期时返回时从时间
- asp.net-core – 我可以提交MVC6视图组件吗?
- 具有多个身份验证过滤器的ASP.net Web API 2控制
- 如何在glimpse / Asp.NET MVC中显示控制器使用的
- 在ASP.NET中,获取基本UR1请求的最快方法是什么?
- asp.net-web-api – 在WebAPI中的TaskScheduler.
- ASP.NET Ajax回发突然停止在IPhone / IPad上
- ASP.NET上的ASP.NET未来?
- asp.net – Crystal Report Viewer – 以编程方式
- 锯齿状数组< - > ASP.NET中的多维数组转换
- asp.net – ASP MVC用户配置文件