Infraestrutura de certificados OPC UA do conector para OPC UA
O conector para OPC UA é um aplicativo cliente OPC UA que permite que você se conecte com segurança aos servidores OPC UA. No OPC UA, a segurança inclui:
- Autenticação do aplicativo
- Assinatura de mensagem
- Criptografia de dados
- Autenticação e autorização de usuário.
Este artigo se concentra na autenticação de aplicativos e em como configurar o conector para OPC UA para se conectar com segurança aos servidores OPC UA na borda. No OPC UA, cada instância de aplicativo tem um certificado X.509 que usa para estabelecer confiança com os outros aplicativos OPC UA com os quais ele se comunica.
Para saber mais sobre a segurança do aplicativo OPC UA, confira Autenticação de Aplicativo.
Certificado de instância de aplicativo do conector para OPC UA
O conector para OPC UA é um aplicativo cliente OPC UA. O conector para OPC UA usa um único certificado de instância de aplicativo OPC UA para todas as sessões estabelecidas para coletar dados telemétricos de servidores OPC UA. Uma implantação padrão do conector para OPC UA usa cert-manager para gerenciar seu certificado de instância de aplicativo:
- O Cert-manager gera um certificado compatível com OPC UA autoassinado e o armazena como segredo nativo do Kubernetes. O nome padrão deste certificado é aio-opc-opcuabroker-default-application-cert.
- O conector para OPC UA mapeia e usa esse certificado para todos os pods que ele usa para se conectar aos servidores OPC UA.
- O gerenciador de certificados renova automaticamente os certificados antes de expirarem.
Por padrão, o conector para OPC UA se conecta a um servidor OPC UA usando o ponto de extremidade com o nível de segurança mais alto com suporte. Portanto, um handshake de confiança mútua entre os dois aplicativos OPC UA deve ser estabelecido com antecedência. Para habilitar a confiança de autenticação de aplicativo mútuo, você precisa:
- Exportar a chave pública do certificado da instância de aplicativo do conector para OPC UA do repositório de segredos do Kubernetes e adicioná-la à lista de certificados confiáveis para o servidor OPC UA.
- Exporte a chave pública da instância do aplicativo do servidor OPC UA e adicione-a à lista de certificados confiáveis para o conector para OPC UA.
A validação de confiança mútua entre o servidor OPC UA e a instância do conector para OPC UA agora é possível. Agora você pode configurar um AssetEndpointProfile
para o servidor OPC UA na interface do usuário da web da experiência de operações e começar a trabalhar com ele.
A lista de certificados confiáveis do conector para OPC UA
Você precisa manter uma lista de certificados confiáveis que contenha os certificados de todos os servidores OPC UA em que o conector para OPC UA confia. Para criar uma sessão com um servidor OPC UA:
- O conector para OPC UA envia a chave pública do certificado.
- O servidor OPC UA valida o certificado do conector em relação à lista de certificados confiáveis dele.
- O conector valida o certificado do servidor OPC UA em relação à lista de certificados confiáveis dele.
Se o conector para OPC UA confiar em uma autoridade de certificação, ele confiará automaticamente em qualquer servidor que tenha um certificado de instância de aplicativo válido assinado pela autoridade de certificação.
Para saber como projetar os certificados confiáveis do Azure Key Vault no cluster do Kubernetes, confira Gerenciar segredos para sua implantação das Operações do Azure IoT.
O nome padrão do recurso personalizado SecretProviderClass
que manipula a lista de certificados confiáveis é aio-opc-ua-broker-trust-list.
A lista de certificados do emissor do conector para OPC UA
Se o certificado da instância de aplicativo do servidor OPC UA for assinado por uma autoridade de certificação intermediária, mas você não quiser confiar automaticamente em todos os certificados emitidos pela autoridade de certificação, você poderá usar uma lista de certificados do emissor para gerenciar a relação de confiança. Esta lista de certificados do emissor armazena os certificados de autoridade de certificação em que o conector para OPC UA confia.
Se o certificado de aplicativo de um servidor OPC UA for assinado por uma autoridade de certificação intermediária, o conector para OPC UA validará a cadeia completa de autoridades de certificação até a raiz. A lista de certificados do emissor deve conter os certificados de todas as autoridades de certificação na cadeia para garantir que o conector para OPC UA possa validar os servidores OPC UA.
Você gerencia a lista de certificados do emissor da mesma forma que gerencia a lista de certificados confiáveis. O nome padrão do recurso personalizado SecretProviderClass
que manipula a lista de certificados do emissor é aio-opc-ua-broker-issuer-list.
Recursos com suporte
A tabela a seguir mostra o nível de suporte de recursos para autenticação na versão atual do conector para OPC UA:
Recursos | Significado | Símbolo |
---|---|---|
Configuração do certificado de instância de aplicativo autoassinado do OPC UA | Com suporte | ✅ |
Manipulação da lista de certificados confiáveis do OPC UA | Com suporte | ✅ |
Manipulação da listas de certificados confiáveis do emissor OPC UA | Com suporte | ✅ |
Configuração do certificado de instância de aplicativo de grau empresarial do OPC UA | Com suporte | ✅ |
Manipulação de certificados não confiáveis do OPC UA | Sem suporte | ❌ |
Tratamento do Serviço de Descoberta Global do OPC UA | Sem suporte | ❌ |