模拟好地方,但不是在服务器(Impersonation okay local but not on

2019-10-17 12:27发布

我有一个问题, 我想模仿,但我可能是错误的。

我有一个IBM XMS消费者,从队列中消费数据。 工作正常。 为了被授权访问该服务需要运行为特定用户的队列,为了这个,我已经实现了净模拟。 在我能够得到队列中运行的所有系统中,当有需要重新启动时出现问题。

为了测试重新启动我已经把一个简单的if(消息== 500)扔...触发取消,断开和重新连接。

我安装的应用程序作为Windows服务,以我的本地机器,它连接(使用模拟),达到500,两罚全中,断开连接,重新连接并继续处理消息。 然而,当我在我们的服务器上运行相同的代码它试图创建一个队列连接失败。 以下是错误:

7765 [20] ERROR SIS(空) - 无法连接到WebSphere MQ IBM.XMS.XMSException:CWSMQ0006E:System.ComponentModel.Win32Exception(0X80004005):在调用方法ConnectionFactory.CreateConnection过程中接收到的一个例外访问被拒绝
在System.Diagnostics.ProcessManager.OpenProcess(的Int32的ProcessID,的Int32访问,布尔throwIfExited)在System.Diagnostics.NtProcessManager.GetModuleInfos(的Int32的ProcessID,布尔firstModuleOnly)在System.Diagnostics.ProcessManager.GetModuleInfos(的Int32的ProcessID)
在System.Diagnostics.Process.get_Modules()在IBM.WMQ.CommonServices.TraceEnvironment()在IBM.WMQ.CommonServices.CreateCommonServices()在IBM.WMQ.CommonServices.TraceEnabled()在IBM.WMQ.MQBase..ctor( )
在IBM.WMQ.Nmqi.Phconn..ctor(NmqiEnvironment ENV)在IBM.WMQ.Nmqi.NmqiEnvironment.NewPhconn()在IBM.XMS.Client.WMQ.WmqConnection..ctor(NmqiEnvironment nmqiEnv,NmqiMQ nmqiMQ,XmsPropertyContext connectProps)在IBM.XMS.Client.WMQ.Factories.WmqConnectionFactory.CreateV7ProviderConnection(XmsPropertyContext connectionProps)。 在所规定的方法的执行的例外是由另一组件抛出。 请参阅链接的异常以获取更多信息。 在IBM.XMS.Client.WMQ.Factories.WmqConnectionFactory.CreateProviderConnection(XmsPropertyContext connectionProps)在IBM.XMS.Client.Impl.XmsConnectionFactoryImpl.CreateConnection(字符串userid,字符串密码)在IBM.XMS.Client.Impl.XmsConnectionFactoryImpl.CreateConnection( )在Spin.TradingServices.DataAcquisition.Domain.DataProcessing.SIS.SISMQConnection.Connect(ImpersonationCredentials impersonationCredentials)

链接的异常:System.ComponentModel.Win32Exception(0x80004005的):访问是在System.Diagnostics.ProcessManager.OpenProcess(的Int32的ProcessID,的Int32访问,布尔throwIfExited)维持在系统System.Diagnostics.NtProcessManager.GetModuleInfos(的Int32的ProcessID,布尔firstModuleOnly)否认.Diagnostics.ProcessManager.GetModuleInfos(的Int32的ProcessID)
在System.Diagnostics.Process.get_Modules()在IBM.WMQ.CommonServices.TraceEnvironment()在IBM.WMQ.CommonServices.CreateCommonServices()在IBM.WMQ.CommonServices.TraceEnabled()在IBM.WMQ.MQBase..ctor( )
在IBM.WMQ.Nmqi.Phconn..ctor(NmqiEnvironment ENV)在IBM.WMQ.Nmqi.NmqiEnvironment.NewPhconn()在IBM.XMS.Client.WMQ.WmqConnection..ctor(NmqiEnvironment nmqiEnv,NmqiMQ nmqiMQ,XmsPropertyContext connectProps)在IBM.XMS.Client.WMQ.Factories.WmqConnectionFactory.CreateV7ProviderConnection(XmsPropertyContext connectionProps)

Answer 1:

貌似正在模拟用户ID没有足够的权限,而不是与XMS问题。

这里是可以对你有所帮助的链接。

访问在System.Diagnostics.Process.StartWithCreateProcess被拒绝(的ProcessStartInfo的StartInfo)

而这也。



Answer 2:

看来,在IBM网站上有这个错误可以修复:

http://www-01.ibm.com/support/docview.wss?uid=swg1IC90674

(请使用Wayback机器https://archive.org/web/如果URL不再可用)

他们也说,有一个本地修订:

授予“查询过程中的信息和读取过程的虚拟内存”的权限模拟用户,使OpenProcess成功。



文章来源: Impersonation okay local but not on server