在 SYSTEM 下运行的 OPC 服务器无法由在 SYSTEM 下运行的本地或远程 OPC 客户端浏览

在 SYSTEM 下运行的 OPC 服务器无法由在 SYSTEM 下运行的本地或远程 OPC 客户端浏览

我有一家第三方供应商提供的解决方案,该解决方案使用专有 OPC 服务器,该服务器作为用户进程(而非服务)运行。当管理员帐户登录且 OPC 客户端尝试连接时,它会启动。因此,它以管理员身份运行。

我的 OPC 客户端(在远程计算机上)以 SYSTEM 帐户作为服务运行。不幸的是,使用此配置,我的 OPC 客户端无法访问供应商的 OPC 服务器,因为它们在不同的凭据下运行。

如果我以 AS 管理员身份运行我的 OPC 客户端(在远程计算机上),我就可以正常浏览供应商的 OPC 服务器,因为客户端和服务器现在都以相同的凭据运行 AS 管理员。

我不想让我的 OPC 客户端以管理员身份运行 - 我希望它以系统身份运行,就像大多数服务一样。我不喜欢必须自定义配置我的系统才能与第三方系统通信 - 我宁愿第三方系统负责按原样与我的系统通信。

我已设法通过 psexec 让供应商的 OPC 服务器以 AS SYSTEM 身份运行。不幸的是,我的 OPC 客户端(以 AS SYSTEM 身份运行)仍然无法查看/连接到 OPC 服务器。

DCOM 配置为“连接”和“识别”,并且 SYSTEM 帐户被授予本地/远程启动/激活权限。

这个文件Kepware OPC 配置指南建议通过运行 AS SYSTEM 的 OPC 进行通信应该工作。

只是为了好玩,我通过 psexec 在供应商的应用服务器上启动了 OPC 服务器和便携式 Matrikon OPC 客户端,两者都以 AS SYSTEM 运行,都在会话 0 中运行,并启用了交互服务。即使在这种情况下,设置为浏览 LOCALHOST 的 OPC 客户端也无法连接到 OPC 服务器。

这是在工作组环境中,但我不认为这是问题。

我读了一些资料,据我所知,会话 0 隔离仅“隔离”具有 GUI 的服务......与网络隔离无关。

我错过了什么?这简单吗?

相关内容