让人头疼的BCProxy权限

EP站点的应用程序池必须用BCProxy账户运行,并且AX中必须设定BCProxy为代理账户,另外BCProxy必须属于IIS_WPG和STS_WPG这两个组,另外BCProxy必须能连接Sharepoint的配置数据库和EP站点对应的内容数据库,这个在WSS2.0上没什么问题,昨天试了把WSS3.0,可把俺整死了。
按照跟WSS2.0同样的设置,配置和创建站点没有问题,登陆站点的时候开始倒也没啥问题,只是速度暴慢,过一会后报个运行时异常,让调试,到事件查看器里发现两个异常信息:
第一条是w3wp报的错,后面的十六进制的数据看不懂,这里略去
事件类型:    错误
事件来源:    Windows SharePoint Services 
3 Error Reporting
事件种类:    无
事件 ID:    
5000
日期:        
2007-4-7
事件:        
4:32:43
用户:        N
/A
计算机:    WANGLAI
描述:
EventType ulsexception12, P1 w3wp.exe, P2 
6.0.3790.1830, P3 42435be1, P4 mscorlib, P5 2.0.0.0, P6 4333ab80, P7 11209, P8 88, P9 unauthorizedaccessexception, P10 8yr8.

有关更多信息,请参阅在 http:
//go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
          
第二条是.NET 2.0运行时报的错

事件类型:    错误
事件来源:    .NET Runtime 
2.0 Error Reporting
事件种类:    无
事件 ID:    
5000
日期:        
2007-4-7
事件:        
4:32:45
用户:        N
/A
计算机:    WANGLAI
描述:
EventType clr20r3, P1 w3wp.exe, P2 
6.0.3790.1830, P3 42435be1, P4 mscorlib, P5 2.0.0.0, P6 4333ab80, P7 2bc9, P8 46, P9 system.unauthorizedaccess, P10 NIL.

有关更多信息,请参阅在 http:
//go.microsoft.com/fwlink/events.asp 的帮助和支持中心。

都是告诉俺没有权限,反复确认了BCProxy属于文档中要求的两个组,访问Sharepoint的配置和EP的站点内容服务器都没有任何问题。结果还出这样的错,把BCProxy添加到administrators组中没有任何问题,说明确实是权限的问题。但是把BCProxy加到管理员组里确实不是好注意,那BCProxy还属于哪个组才好那?翻遍了AX的实施文档,里面都是讲加到IIS_WPG和STS_WPG就OK了,但现实是确实不行。后来跑到MSDN上狂搜了一把找到如下文章:
http://msdn2.microsoft.com/en-us/library/aa548699.aspx这个页面是解决EP配置过程中的异常的,里面有一段针对这个异常的解决方案:
Error message: "Cannot add the specified assembly to the global assembly cache" or "w3wp.exe unhandled exception (System.UnauthorizedAccessException)"

The Business Connector proxy account might not have the appropriate permissions on the server to allow access. The Business Connector proxy must:

Be a user 
in Active Directory. 

Be a member of the Power Users, IIS_WPG, STS_WPG, and the Performance Monitor Windows groups on the server that runs IIS and hosts Enterprise Portal.

For more information about creating a Business Connector proxy account, see Set up the Business Connector proxy user 
for Enterprise Portal.

其中第四行提到了除IIS_WPT,STS_WPG(安装WSS3.0后这个组改成了WSS_WPG),还有Power Users和Performance Monitor这两个组(搞笑的是,解决方案里提到的,更多信息参阅Set up the Business Connector Proxy user for Enterprise Portal这篇文章里,提到的还是IIS_WPG和STS_WPG......)
把BCProxy添加到Performance Monitor组后,确实没有上述两个异常信息了,取而代之的是另一个异常:
事件类型:    错误
事件来源:    Perflib
事件种类:    无
事件 ID:    
1023
日期:        
2007-4-7
事件:        
5:27:22
用户:        N
/A
计算机:    WANGLAI
描述:
Windows 无法加载可扩展计数器 DLL MSSQLServerOLAPService,数据段中的第一个 DWORD 是 Windows 错误码。

有关更多信息,请参阅在 http:
//go.microsoft.com/fwlink/events.asp 的帮助和支持中心。

不太清楚为什么要检测MSSSQLServerOLAPService的效率,我的机子上装了SQL Server2005的Analysis Services,根据出错信息应该是对Analysis Services的某个文件没有权限。
找到Analysis Services的安装文件夹E:\Program Files\Microsoft SQL Server\MSSQL.2\OLAP\bin,这个文件夹给Performance Monitor组赋读权限,找到bin目录里的msmdctr90.DLL文件,给Performance Monitor赋读写权限。
OK,到这里AX与WSS3.0的整合应该没任何问题可以放心使用了。
原文地址:https://www.cnblogs.com/Farseer1215/p/703941.html