[EnterpriseLibrary]为什么拒绝ASPNET对性能数据进行访问

简介:

[EntLib]为什么拒绝ASPNET对性能数据进行访问

编写者

日期

关键词

郑昀@ultrapower

2005-6-27

”Enterprise Library” ASP.NET PerfLib WMI

 

现象

浏览我们的ASP.NET站点,得到了这样的页面错误提示:

拒绝对注册表项的访问。

背景:

在一台很干净的Windows 2000服务器上,我们顺次安装了

dotnetfx.exeNDP1.1sp1-KB867460-X86.exe

之后运行EnterpriseLibraryJan2005.exe安装Microsoft Enterprise Library

之后部署我们的ASP.NET站点在这台机器上,它的特殊之处是加载页面时需要实例化Microsoft Enterprise LibraryCaching Application Block

 

在事件察看器中找到相应的错误警告:

错误:

事件类型:      错误

事件来源:      Perflib

事件种类:      

事件 ID: 1000

日期:             2005-6-27

描述:

拒绝 ASPNET

  C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_wp.exe 对性能数据进行访问

临时的解决办法

由于在现场环境急于演示ASP.NET站点,所以临时把ASPNET账号加入Administrators组中。这样页面就可以正常加载了。

然后再从Administrators组去掉ASPNET账号,页面也继续可以正常加载。

原理

Windows 2000限制了只有Administrators组才可以访问WMI数据。Microsoft Enterprise Library需要访问WMI记录的性能数据,这个可以通过我的另一篇文章《[C#]服务为何会依赖于WMI Performance Adapter.dochttp://www.cnblogs.com/zhengyun_ustc/archive/2005/06/13/173586.html中的一段话了解一二:

Microsoft.Practices.EnterpriseLibrary.Caching工程中,有对“System.Management.Instrumentation”的引用。

而这个“System.Management.Instrumentation”命名空间提供一些类,提供在规范应用程序管理并通过 WMI向潜在使用者公开管理信息和事件时必需的类。这样,Microsoft Application Center  Microsoft Operations Manager 等使用者就可以轻松地管理您的应用程序,而管理员脚本或其他应用程序(托管应用程序和非托管应用程序)也可以监视和配置您的应用程序。

也就是说,正是因为Microsoft.Practices.EnterpriseLibrary.Caching,所以为服务引入了“WMI Performance Adapter”服务的依赖性。

如果是一个未授权的账号,比如ASPNET要访问WMI数据,就会得到这样的错误:“拒绝 ASPNETC:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_wp.exe 对性能数据进行访问”。

解决方法

我们可以授权ASPNET账号以访问WMI API的权限,通过如下步骤:

1.        打开计算机管理;

2.        展开“服务和应用程序”;

3.        选中“WMI 控件”节点;

4.        右键菜单中,选择“属性”,则看到“连接到Windows管理”对话框,如下所示

然后出现“WMI 控件 属性”对话框;

5.        在“WMI 控件 属性”对话框中,查看“安全”属性页,如下所示:

6.        展开“Root”根节点,选中“WMI”节点;

7.        点击“安全设置”,添加ASPNET的访问权限,如下所示:

8.        点击“应用”和“确定”以保存设置。

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-27

”Enterprise Library” ASP.NET PerfLib WMI

目录
相关文章
|
2月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
67 0
|
SQL 开发框架 .NET
在ASP.NET中使用ListView控件对数据进行显示、分页和排序
在ASP.NET中使用ListView控件对数据进行显示、分页和排序
在ASP.NET中使用ListView控件对数据进行显示、分页和排序
|
开发框架 .NET 数据库连接
在ASP.NET中分页显示DataList控件中的数据
在ASP.NET中分页显示DataList控件中的数据
在ASP.NET中分页显示DataList控件中的数据
|
SQL 存储 开发框架
ASP.NET 使用语言集成查询 LINQ进行数据访问
ASP.NET 使用语言集成查询 LINQ进行数据访问
ASP.NET 使用语言集成查询 LINQ进行数据访问
|
开发框架 JSON 前端开发
ASP.NET MVC5----常见的数据注解和验证
ASP.NET MVC5----常见的数据注解和验证
300 0
ASP.NET MVC5----常见的数据注解和验证
|
JSON 开发框架 .NET
ASP.NET Core: 二十. Action的多种数据返回格式处理机制(四)
上一章讲了系统如何将客户端提交的请求数据格式化处理成我们想要的格式并绑定到对应的参数,本章讲一下它的“逆过程”,如何将请求结果按照客户端想要的格式返回去。
412 0
|
开发框架 JSON .NET
ASP.NET Core: 二十. Action的多种数据返回格式处理机制(三)
上一章讲了系统如何将客户端提交的请求数据格式化处理成我们想要的格式并绑定到对应的参数,本章讲一下它的“逆过程”,如何将请求结果按照客户端想要的格式返回去。
230 0
ASP.NET Core: 二十. Action的多种数据返回格式处理机制(三)
|
开发框架 .NET 数据格式
ASP.NET Core: 二十. Action的多种数据返回格式处理机制(二)
上一章讲了系统如何将客户端提交的请求数据格式化处理成我们想要的格式并绑定到对应的参数,本章讲一下它的“逆过程”,如何将请求结果按照客户端想要的格式返回去。
176 0
|
JSON 开发框架 .NET
ASP.NET Core: 二十. Action的多种数据返回格式处理机制(一)
上一章讲了系统如何将客户端提交的请求数据格式化处理成我们想要的格式并绑定到对应的参数,本章讲一下它的“逆过程”,如何将请求结果按照客户端想要的格式返回去。
214 0
|
开发框架 前端开发 .NET
ASP.NET MVC (二、数据传递)(8)
ASP.NET MVC (二、数据传递)(8)
109 0
ASP.NET MVC (二、数据传递)(8)