.net - 如何获取 OPC UA 客户端证书 (.NET)

标签 .net opc-ua

我正在为 OPC UA 服务器开发 C# 客户端。我不是 OPC 基金会的付费成员(member),因此我无法访问 SDK。我正在使用免费提供的示例应用程序和 .NET 堆栈。

我面临的问题之一是我没有安全证书。我的客户端可以连接到服务器,但它以不安全的模式连接。这导致无法访问服务器上的数据库。我相信我缺少客户端(也可能是服务器端)证书。
我可以完全访问服务器的管理,但我一直无法弄清楚如何检索/生成证书。
我该怎么做呢?

最佳答案

通常,如何获取客户端证书是 OPC UA 客户端应用程序的责任。
通常,如果没有生成和配置证书,则 SDK 会创建默认的自签名证书。如果您查看.NET UA 应用程序的xml 配置文件,那么您应该找到定义证书参数的位置,并且可以自动生成。
为了通过安全模式进行通信,客户端和服务器都应该信任彼此的证书。如果证书存储在文件系统中,则可以通过将客户端证书复制到服务器的受信任文件夹来设置对自签名证书的信任,反之亦然。
您可以通过 GetEndpoints 调用以编程方式获取服务器证书。
服务器可以从 OpenSecureChannel 请求中获取客户端的证书。

关于.net - 如何获取 OPC UA 客户端证书 (.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37430890/

相关文章:

c# - 仅在文件不存在时才创建文件

.net - NHibernate.Spatial是否与NHibernate 3.0兼容?

python - 如何让opcua在python中更加高效?

python - 连接到在容器内运行的 OPC UA 服务器

javascript - node-opcua如何写入变量

c# - 如何向超过 15000 个收件人发送邮件?

asp.net - .NET 4.0 和 4.5.1 在一台服务器上,出现问题?

c# - .NET 中的反射

c# - 使用 opc Foundation C# 获取所有字段

android - 用于移动平台的跨平台 OPC UA 通信