解决EP拒绝访问注册表Global键的的问题
问题描述
打开EP站点时出现如下Error:
Message: An unhandled error has occurred. To view details about this error, enable debugging in the web.config file or view the Windows event logs.
Source: mscorlib
Exception details:
Access to the registry key 'Global' is denied.
at Microsoft.Win32.RegistryKey.Win32Error(Int32 errorCode, String str)
at Microsoft.Win32.RegistryKey.InternalGetValue(String name, Object defaultValue, Boolean doNotExpand, Boolean checkSecurity)
at Microsoft.Win32.RegistryKey.GetValue(String name)
at System.Diagnostics.PerformanceMonitor.GetData(String item)
at System.Diagnostics.PerformanceCounterLib.GetPerformanceData(String item)
at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
at Microsoft.Dynamics.AX.ManagedInterop.RuntimeContext.InitializePerformanceCounters(String categoryName)
at Microsoft.Dynamics.Framework.BusinessConnector.PerformanceCounters..cctor()
本文地址:http://www.cnblogs.com/Interkey/p/Access-to-the-registry-key-Global-is-denied.html
问题分析
从Exception Details 中可以得知 Exception 是在PerformanceCounters读取这个注册表key时没有相应权限而抛出的。
解决思路
授予 PerformanceCounters 对应的服务相应的权限。
解决方案
1、 因为我们这边没有权限来处理,而对方那边的操作是将安装部署的自定义用户 Service Account 加入到 Administrators用户组。
结果是:上述问题临时解决,但过段时间后依然出现上述问题。我方联系人因为以前有遇到过用户加入到Administrators用户组过段时间后用户又不在这个组的情况据此猜测对方也是遇到了这种情况,但具体情况未知。
2、 经过搜索找到了同样问题的解决方案[Message: Access to the registry key 'Global' is denied],不过是英文的,在实际操作中一时还不好理解上述的描述。故此翻译成中文并加以解释:
a) 打开Computer Management - System Tools - Local Users and Groups - Groups - Performance Log Users.
b) 添加 Identity 到Performance Log Users 组。难点在于得到正确的Identity。检查应用程序池的 Identity。如果使用的是ApplicationPoolIdentity,请继续下面的步骤。
c) 无需添加一个本地用户。因为ApplicationPoolIdentity 并不是一个实际存在的用户,所以要添加到Performance Log Users 组需要使用如下形式:IIS AppPool\AppPoolName (其中AppPoolName 是应用程序池名,例如:IIS AppPool\AX2012)。
d) 为了使更改生效,需要重启IIS或者停止再启动相应用应用程序池。回收相应应用程序池不会使更改生效。
步骤b使用的是ApplicationPoolIdentity,如果使用本地用户,则直接将此用户添加到Performance Log Users 组,但因为没有相应的权限,所以无法进行测试。
至于将用户添加到Administrators用户组过段时间后失效,暂时无法跟进。
本文地址:http://www.cnblogs.com/Interkey/p/Access-to-the-registry-key-Global-is-denied.html
Here is a link for more information about Application Pool Identities.
总结
问题的本质是赋予权限以让PerformanceCounters有读取相应注册表的权限。但方案1是直接将权限添加到管理员组,方案2是将相应的用户添加到Performance Log Users 组,因为此用户是虚拟用户,所以要按一定的格式添加。本质上还是授权。
其他
来这里以后感觉快要变成了技术支持了,工作内容与预期偏差甚远,所用技术为AX 2012 和 SharePoint 2010,而且主要工作内容为解决技术问题而非开发,.NET编程几乎没有,由于对业务还不熟悉,所以X++的编写也没有。感觉有些偏离方向了(拿手的可是C#,现阶段以开发为主),当然好处也有:规范化和时间自由。不过既然来了,肯定要把它做好!
本文地址:http://www.cnblogs.com/Interkey/p/Access-to-the-registry-key-Global-is-denied.html
解决EP拒绝访问注册表Global键的的问题的更多相关文章
- #技塑人生# windows2008无法远程— 注册表缺失键值导致高级防火墙服务异常
windows2008无法远程— 注册表缺失键值导致高级防火墙服务异常 阿里云技术支持中心:章阿贵 一.远程无法访问(windows server 2008) 症状:无法远程但是系统内网络正常,防火墙 ...
- NSIS学习记录の----查找注册表某个键是否存在
最近要做一个注册表的判断.以往都是注册表某个键的键值存在查找,但是如何判断一个空键值的键是否存在呢(很多大厂装逼不写键值,有默认就好)? 下面给出解决办法(要沟通请邮件联系:7-7-2-7-0-6-5 ...
- Qt访问注册表并调用子进程
在实际应用中需要在一个进程启动另外一个进程,可以将子进程的路径写入注册表中,然后主进程读取注册表中子进程路径,启动子进程,并以命令行参数的形式传入参数,启动子进程.具体实现方式如下 (1) ...
- 关于64位操作系统使用C#访问注册表失败的问题
通过C#的注册表类 Registry.GetValue 进行访问时,其返回值一直为空.然后认真检查检查再检查了注册表路径,发现路径没有一点问题,不说废话,上代码: if (Registry.GetVa ...
- Window权限维持(一):注册表运行键
在红队行动中在网络中获得最初的立足点是一项耗时的任务.因此,持久性是红队成功运作的关键,这将使团队能够专注于目标,而不会失去与指挥和控制服务器的通信.在Windows登录期间创建将执行任意负载的注册表 ...
- IIS 发表web 之后,访问注册表项失败得问题
错误: 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\xx\xxxx\xxxxx”的访问被拒绝. 解决办法: 打开IIS,找到应用程序池,然后找到自己web使用得程序池,右键高级 ...
- Win10 远程桌面连接出现“要求的函数不受支持”的解决办法之修改注册表
问题起因 笔者自己在阿里云上搞服务器,有一台 Windows Server 必须通过远程桌面连接来管理,由于没能完全关掉 Win10 自带的烦人的系统更新,导致昨天安装完更新后出现了连接远程桌面时“要 ...
- FAQ:注册表_键值类型
在注册表中,“键值项数据”可分为下面三种类型. 字符串值(REG_SZ) 该值一般用来作为文件描述和硬件标志,可以是字母.数字,也可以是汉字,但它是长度固定的文本字符串,最大长度不能超过255个字符. ...
- WINDOWS XP 系统显示乱码的解决方法(修改注册表,使用正常字体)
一位同事的计算机进入WINDOWS XP系统后,电脑里的所有汉字全部显示乱码,很多办公文档无法打开而影响工作.因为第一次遇到这种问题,当然首先是百度解决了,搜索了相关的信息后找到了答案 ...
随机推荐
- 剑指Offer面试题:13.调整数组顺序使奇数位于偶数前面
一.题目:调整数组顺序使奇数位于偶数前面 题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 例如有以下一个整数数组:12345 ...
- 现在创业做App,先做 Android 还是 iOS?
随着互联网+的高速发展,现在创业大部分都是在布局移动端,初期往往摆在面前最大的难题是,如何分配有限的成本,在最快的速度内占领市场?这个大难题会影响创始人在团队和产品建设方方面面的决定.缩小至移动App ...
- 一个新人如何学习在大型系统中添加新功能和Debug
文章背景: 今年七月份正式入职,公司主营ERP软件,楼主所在的组主要负责二次开发,使用的语言是Java. 什么叫二次开发呢?ERP软件的客户都是企业.而这些企业之间的情况都有所不同,一套标准版本的企业 ...
- Alljoyn瘦客户端库介绍(官方文档翻译 下)
由于其他事情耽误,这个翻译现在才完成.接上篇—— 4 瘦客户端核心库架构 由于AllJoyn瘦客户端核心库(AJTCL)必须运行在那些功耗受限.计算能力有限.资源紧缺的设备上,因此它无法像运行在通用型 ...
- 基于Quick-cocos2d-x的资源更新方案 一
图片来自网络 思绪何来 昨天写了一篇关于更新方案的理论 游戏开发:通过路径搜索优先级来进行补丁升级(从端游到手游) 今天继续细化一下 由于新项目采用的是Quick-cocos2d-x,那我就直接给出我 ...
- [ASP.NET MVC 大牛之路]02 - C#高级知识点概要(1) - 委托和事件
在ASP.NET MVC 小牛之路系列中,前面用了一篇文章提了一下C#的一些知识点.照此,ASP.NET MVC 大牛之路系列也先给大家普及一下C#.NET中的高级知识点.每个知识点不太会过于详细,但 ...
- 学用MVC4做网站六后台管理:6.1管理员(续)
接6.1 首先在~/Areas/Admin/Models文件夹添加管理员模型Administrator.cs using System.ComponentModel.DataAnnotations; ...
- Web APi之控制器创建过程及原理解析(八)
前言 中秋歇了歇,途中也时不时去看看有关创建控制器的原理以及解析,时间拖得比较长,实在是有点心有余而力不足,但又想着既然诺下了要写完原理一系列,还需有始有终.废话少说,直入主题. HttpContro ...
- android帧动画,移动位置,缩放,改变透明度等动画讲解
1.苦逼的需求又来了,需要实现一些动画效果,第一个想到的是播放gif图片,但是这样会占包的资源,并且清晰度不高,于是想着程序实现,自己用帧动画+缩放+移动+透明度 实现了一些想要的效果,这里跟大家分享 ...
- JDBC与JAVA数据库编程
一.JDBC的概念 1. JDBC (Java DataBase Connectivity) Java数据库连接 a) 主要提供java数据库应用程序的API支持 2. JDBC的主要功能 a) 创建 ...