Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы узнаете, как настроить инфраструктуру сертификатов OPC UA для соединителя для OPC UA. Эта конфигурация позволяет определить, с какими серверами OPC UA вы доверяете безопасное создание сеанса.
На основе спецификации OPC UA соединитель для OPC UA выступает в качестве единого приложения OPC UA, когда он устанавливает безопасный обмен данными с серверами OPC UA. Соединитель для OPC UA использует один и тот же сертификат экземпляра приложения для всех безопасных каналов, которые он открывается на серверах OPC UA.
Соединитель для OPC UA должен доверять серверам OPC UA, к которым он подключается. Соединитель поддерживает список доверенных сертификатов. Дополнительные сведения см. на следующих ресурсах:
- Управление сертификатами для развертывания Операций Интернета вещей Azure . В этой статье описывается, как Операции Интернета вещей Azure используют Azure Key Vault для управления сертификатами.
- Инфраструктура сертификатов OPC UA для соединителя для OPC UA . В этой статье описываются роли списка доверенных сертификатов и списка сертификатов издателя.
Предпосылки
Экземпляр операций Интернета вещей Azure, развернутый с безопасными параметрами. При развертывании операций Интернета вещей Azure с параметрами тестирования необходимо сначала включить безопасные параметры.
Настройка самозаверяющего сертификата экземпляра приложения для соединителя для OPC UA
Развертывание соединителя по умолчанию для OPC UA устанавливает все ресурсы, необходимые cert-manager для создания самозаверяющего сертификата OPC UA. Этот сертификат хранится в секрете aio-opc-opcuabroker-default-application-cert . Этот секрет сопоставляется со всеми соединителями для модулей pod OPC UA и выступает в качестве сертификата экземпляра клиентского приложения OPC UA.
cert-manager обрабатывает автоматическое продление сертификата экземпляра приложения.
Эта конфигурация обычно достаточно для обеспечения соответствия требованиям и безопасного взаимодействия между серверами OPC UA и соединителем для OPC UA в демонстрационной или исследовательской среде. Для рабочей среды используйте сертификаты экземпляра приложения корпоративного уровня в вашем развертывании.
Настройка списка доверенных сертификатов
Чтобы подключиться к серверу OPC UA, сначала необходимо установить взаимное доверие проверки подлинности приложения. Чтобы настроить список доверенных сертификатов серверов, к которым подключится соединитель OPC UA:
Чтобы использовать веб-интерфейс операций для управления списком доверенных сертификатов, выполните следующие действия.
Получите сертификат экземпляра сервера OPC UA в виде файла. Эти файлы обычно имеют расширение
.derили.crt. Этот файл содержит только открытый ключ.Подсказка
Как правило, сервер OPC UA имеет интерфейс, который позволяет экспортировать сертификат экземпляра приложения. Этот интерфейс не стандартизирован. Для серверов, таких как KEPServerEx, существует пользовательский интерфейс конфигурации на основе Windows для управления сертификатами. Другие серверы могут иметь веб-интерфейс или использовать папки операционной системы для хранения сертификатов. Чтобы узнать, как экспортировать сертификат экземпляра приложения, ознакомьтесь с руководством пользователя сервера. После получения сертификата убедитесь, что он закодирован как DER, так и PEM. Эти сертификаты обычно хранятся в файлах с расширением
.derили.crt. Если сертификат не входит в один из этих форматов файлов, используйте средство, напримерopenssl, чтобы преобразовать сертификат в требуемый формат.Вы можете добавить сертификат непосредственно в Azure Key Vault в качестве секрета и импортировать из него или передать сертификат в список доверенных сертификатов с помощью интерфейса операций.
Замечание
Соединитель для OPC UA использует собственный секрет Kubernetes с именем aio-opc-ua-broker-trust-list для хранения списка доверенных сертификатов. Этот секрет создается при развертывании операций Интернета вещей Azure.
Перейдите на страницу "Устройства" в веб-интерфейсе пользователя операционной среды.
Чтобы просмотреть список доверенных сертификатов, выберите "Управление сертификатами и секретами" , а затем " Сертификаты:
Вы можете отправить файл сертификата с локального компьютера или добавить его, который вы ранее добавили в качестве секрета в Azure Key Vault:
Выберите Применить, чтобы сохранить изменения. Теперь сертификат добавляется в список доверенных сертификатов. Если вы отправляете сертификат, он автоматически добавляется в Azure Key Vault в качестве секрета.
Если сервер OPC UA использует сертификат, выданный центром сертификации (ЦС), вы можете доверять ЦС, добавив его сертификат открытого ключа в список доверенных сертификатов. Соединитель для OPC UA теперь автоматически доверяет всем серверам, используюющим действительный сертификат, выданный ЦС. Поэтому не нужно явно добавлять сертификат сервера OPC UA в соединитель для списка доверенных сертификатов OPC UA. В настоящее время вы не можете использовать опыт работы с операциями для добавления списка отзыва сертификатов в список доверенных сертификатов.
Подсказка
Чтобы добавить новый сертификат в опыт работы с операциями, необходимо, чтобы вам была назначена роль офицера секретов Key Vault для Azure Key Vault.
Это важно
Если вы добавляете сертификат из Azure Key Vault, он должен храниться как секрет, а не как сертификат.
Настройка списка сертификатов издателя
Если сервер OPC UA использует сертификат, выданный ЦС, но вы не хотите доверять всем сертификатам, выданным ЦС, настройте список сертификатов издателя:
Прежде чем настроить список сертификатов издателя с промежуточными сертификатами, необходимо добавить сертификат ЦС в список доверенных сертификатов. Соединитель для OPC UA использует сертификат ЦС для проверки цепочки издателей сертификата сервера OPC UA.
Чтобы использовать веб-интерфейс интерфейса операций для управления списком сертификатов издателя, выполните следующие действия.
Получите сертификат издателя, который использовался для подписи сертификатов экземпляра сервера в виде файла. Эти файлы обычно имеют расширение
.derили.crt. Этот файл содержит только открытый ключ. У вас также может быть CRL-файл (список отзыва сертификатов) для сертификата издателя.Вы можете добавить сертификат издателя непосредственно в Azure Key Vault в качестве секрета и импортировать из него, или вы можете загрузить сертификат и список отзыва сертификатов (.crl-файл) в список сертификатов издателя, используя интерфейс операций.
Замечание
Соединитель для OPC UA использует собственный секрет Kubernetes с именем aio-opc-ua-broker-issuer-list для хранения списка сертификатов издателя. Этот секрет создается при развертывании операций Интернета вещей Azure.
Перейдите на страницу "Устройства" в веб-интерфейсе операционной среды.
Чтобы просмотреть список сертификатов издателя, выберите "Управление сертификатами и секретами " и " Сертификаты". Поле фильтра позволяет просматривать различные списки сертификатов:
Вы можете отправить файл сертификата издателя с локального компьютера или добавить его, который вы ранее добавили в качестве секрета в Azure Key Vault:
Выберите Применить, чтобы сохранить изменения. Теперь сертификат добавляется в список сертификатов издателя. Если вы отправляете сертификат, он автоматически добавляется в Azure Key Vault в качестве секрета.
Вы также можете использовать интерфейс операций для добавления списка отзыва сертификатов (CRL-файл) в список доверенных сертификатов.
Подсказка
Чтобы добавить новый сертификат в опыт работы с операциями, необходимо, чтобы вам была назначена роль офицера секретов Key Vault для Azure Key Vault.
Это важно
Если вы добавляете сертификат из Azure Key Vault, он должен храниться как секрет, а не как сертификат.
Настройка сервера OPC UA
Чтобы завершить настройку взаимного доверия проверки подлинности приложения, необходимо настроить сервер OPC UA для доверия соединителю для сертификата экземпляра приложения OPC UA:
Чтобы извлечь соединитель для сертификата OPC UA в
opcuabroker.crtфайл, выполните следующую команду:kubectl -n azure-iot-operations get secret aio-opc-opcuabroker-default-application-cert -o jsonpath='{.data.tls\.crt}' | base64 -d > opcuabroker.crtkubectl -n azure-iot-operations get secret aio-opc-opcuabroker-default-application-cert -o jsonpath='{.data.tls\.crt}' | %{ [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($_)) } > opcuabroker.crtМногие серверы OPC UA поддерживают только сертификаты в формате DER. При необходимости используйте следующую команду, чтобы преобразовать сертификат opcuabroker.crt в opcuabroker.der:
openssl x509 -outform der -in opcuabroker.crt -out opcuabroker.derОзнакомьтесь с документацией сервера OPC UA, чтобы узнать, как добавить
opcuabroker.crtфайл сертификата илиopcuabroker.derфайл сертификата в список доверенных сертификатов сервера.
Настройка сертификата экземпляра приложения корпоративного уровня
В рабочих средах соединитель для OPC UA можно настроить для использования сертификата экземпляра приложения корпоративного уровня. Как правило, корпоративный ЦС выдает этот сертификат и требуется сертификат ЦС в конфигурации. Часто в конфигурацию необходимо добавить полную цепочку проверки ЦС.
Следующий пример ссылается на следующие элементы:
| Товар | Описание |
|---|---|
| opcuabroker-certificate.der | Файл, содержащий открытый ключ сертификата экземпляра приложения корпоративного уровня. |
| opcuabroker-certificate.pem | Файл, содержащий закрытый ключ сертификата экземпляра приложения корпоративного класса. |
subjectName |
Строка имени субъекта, внедренная в сертификат экземпляра приложения. |
applicationUri |
URI экземпляра приложения, внедренный в экземпляр приложения. |
| enterprise-grade-ca-1.der | Файл, содержащий открытый ключ сертификата ЦС корпоративного уровня. |
| enterprise-grade-ca-1.crl | CRL-файл ЦС. |
Как и в предыдущих примерах, вы используете выделенный секрет Kubernetes для хранения сертификатов и crls. Чтобы настроить сертификат экземпляра приложения корпоративного уровня, выполните следующие действия.
Сохраните сертификаты и список отзыва сертификатов в секрете сертификата aio-opc-ua-broker-client-certificate с помощью следующей команды:
# Create aio-opc-ua-broker-client-certificate secret # Upload OPC UA public key certificate as an entry to the secret # Upload OPC UA private key certificate as an entry to the secret az iot ops connector opcua client add \ --instance <your instance name> \ -g <your resource group> \ --public-key-file "./opcuabroker-certificate.der" \ --private-key-file "./opcuabroker-certificate.pem" \ --subject-name <subject name from the public key cert> \ --application-uri <application uri from the public key cert>Если вы используете ЦС для выдачи сертификатов для брокера OPC UA, настройте секрет aio-opc-ua-broker-issuer-list . Используйте клиент Kubernetes, например для
kubectlнастройки секретов enterprise-grade-ca-1.der и enterprise-grade-ca-1.crl:# Append CA certificate to the issuer list secret as a new entry az iot ops connector opcua issuer add --instance <your instance name> --resource-group <your resource group> --certificate-file "./enterprise-grade-ca-1.der" # Append the CRL to the issuer list secret as a new entry az iot ops connector opcua issuer add --instance <your instance name> --resource-group <your resource group> --certificate-file "./enterprise-grade-ca-1.crl"
Теперь, когда соединитель для OPC UA использует корпоративный сертификат, не забудьте добавить открытый ключ нового сертификата в списки доверенных сертификатов всех серверов OPC UA, к которым он должен подключиться.