如何将 UaExpert 连接到 UaServer 并接受证书+用户名/密码?

问题描述 投票:0回答:1

我创建了自己的证书和私钥(ownCert.der 和 ownKey.pem)。我已将证书作为可信证书添加到 OPC UA 服务器。 OPC UA 服务器还配置为允许使用用户名/密码进行访问。所以两者都是必需的,证书+用户名/密码。

当我使用 python 连接到服务器时,它可以工作。这是我使用的代码:

from opcua import Client
from opcua import ua
client = Client("opc.tcp://serverUrl:4810")
client.set_user('myUsername')
client.set_password('myPassword')
client.application_uri = 'urn:Foo:serverUrl:UaClient:UUID'
client.set_security_string('Basic256Sha256,SignAndEncrypt,/path/to/ownCert.der,/path/to/ownKey.pem')
client.connect()
print ("connected")
client.disconnect()

上面的代码片段有效,一旦连接,我就可以浏览、阅读等..

在 UaExpert 上,我创建一个新的服务器连接并输入相同的数据:

当我单击连接时,出现“BadSecurityChecksFailed”错误:

查看日志,似乎 UaExpert 尝试仅使用证书进行连接,而不是证书+用户名/密码。

如何使用 UaExpert 连接到服务器?

ssl opc-ua
1个回答
0
投票

打开安全通道时使用的证书(应用程序实例证书)与用于验证会话的证书不同,并且完全不相关。

现在可能的问题是您的服务器不信任 UaExpert 的应用程序实例证书。

© www.soinside.com 2019 - 2024. All rights reserved.