Ошибка при соединении через OPCUА

Стартовая страница Форумы Ошибки в работе Ошибки Коммуникатора Ошибка при соединении через OPCUА

Помечено: 

  • В этой теме 6 ответов, 2 участника, последнее обновление 1 год назад сделано Mikhail.
Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Сообщения
  • #28672
    Monk
    Участник

    Добрый день,
    Подскажите в чем может быть проблема?
    При нажатии кнопки «соединится с сервером» получаю ошибку «Ошибка при соединении с OPC-сервером: certificate doesn’t meet minimum key lenght requirement (1024<2048)»

    #28673
    Monk
    Участник

    разобрался. В файле «DrvOpcUa.View» нужно внести изменения:
    <!— WARNING: SHA1 signed certficates are by default rejected and should be phased out. —>
    <RejectSHA1SignedCertificates>false</RejectSHA1SignedCertificates>
    <MinimumCertificateKeySize>1024</MinimumCertificateKeySize>

    #28674
    Monk
    Участник

    Перечень тегов получить удалось, но вот при попытках опроса в логи стали сыпаться такие ошибки:
    2023-05-25 07:46:56 Задержка перед соединением 4,9 с
    2023-05-25 07:47:01 Соединение с opc.tcp://192.168.1.2:55100
    2023-05-25 07:47:01 Ошибка при соединении с OPC-сервером:
    System.AggregateException: One or more errors occurred. (Certificate doesn’t meet minimum key length requirement. (1024<2048))
    —> Opc.Ua.ServiceResultException: Certificate doesn’t meet minimum key length requirement. (1024<2048)
    —> Opc.Ua.ServiceResultException: Certificate doesn’t meet minimum key length requirement. (1024<2048)
    — End of inner exception stack trace —
    at Opc.Ua.CertificateValidator.Validate(X509Certificate2Collection chain, ConfiguredEndpoint endpoint)
    at Opc.Ua.Client.Session.Open(String sessionName, UInt32 sessionTimeout, IUserIdentity identity, IList`1 preferredLocales, Boolean checkDomain)
    at Opc.Ua.Client.Session.Create(ApplicationConfiguration configuration, ITransportWaitingConnection connection, ConfiguredEndpoint endpoint, Boolean updateBeforeConnect, Boolean checkDomain, String sessionName, UInt32 sessionTimeout, IUserIdentity identity, IList`1 preferredLocales)
    at Scada.Comm.Drivers.DrvOpcUa.OpcClientHelperBase.ConnectAsync()
    — End of inner exception stack trace —
    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
    at Scada.Comm.Drivers.DrvOpcUa.Logic.OpcClientHelper.Connect()

    #28675
    Monk
    Участник

    В итоге все-таки нашел где еще нужно поправить настройки — файл «DrvOpcUa.Logic.xml». Но есть одно но, приходится вносить изменения этот файл после каждой загрузки конфигурации.
    Как решить эту проблему?

    #28676
    Mikhail
    Модератор

    Добрый день!
    Информация о внесенных изменениях может быть полезной для всех, спасибо.
    Файл DrvOpcUa.Logic.xml скопируйте внутрь проекта в конфигурацию Коммуникатора. Тогда при каждой передаче конфигурации он будет передаваться на исполнение.

    Специально используются раздельные DrvOpcUa.View.xml и DrvOpcUa.Logic.xml, т.к. параметры подключения рабочей станции и производственного сервера могут различаться.

    #28684
    Monk
    Участник

    Файл DrvOpcUa.Logic.xml скопируйте внутрь проекта в конфигурацию Коммуникатора. Тогда при каждой передаче конфигурации он будет передаваться на исполнение.

    это первое что я сделал — но не помогает. Файл который лежит в папке проекта не применяется.

    #28700
    Mikhail
    Модератор

    Какой полный путь к файлу DrvOpcUa.Logic.xml на сервере?
    Куда положили в проекте (сделайте скриншот)?

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Вы должны авторизироваться для ответа в этой теме.