Partilhar via


Práticas recomendadas de segurança para soluções de IoT

Esta visão geral apresenta os principais conceitos sobre como proteger uma solução típica do Azure IoT. Cada seção inclui links para conteúdo que fornece mais detalhes e orientações.

O diagrama a seguir mostra uma visão de alto nível dos componentes em uma solução típica de IoT baseada em borda. Este artigo se concentra na segurança de uma solução de IoT baseada em borda:

Diagrama que mostra a arquitetura de solução baseada em borda IoT de alto nível, destacando a segurança.

Você pode dividir a segurança em uma solução de IoT baseada em borda nas três áreas a seguir:

  • Segurança de ativos: proteja o item de valor físico ou virtual do qual você deseja gerenciar, monitorar e coletar dados.

  • Segurança da conexão: garanta que todos os dados em trânsito entre o ativo, a borda e os serviços de nuvem sejam confidenciais e invioláveis.

  • Segurança de borda: proteja seus dados enquanto eles se movem e são armazenados na borda.

  • Segurança na nuvem: proteja seus dados enquanto eles se movem e são armazenados na nuvem.

Normalmente, em uma solução baseada em borda, você deseja proteger suas operações de ponta a ponta usando os recursos de segurança do Azure. O Azure IoT Operations tem recursos de segurança internos, como gerenciamento de segredos, gerenciamento de certificados e configurações seguras em um cluster Kubernetes habilitado para Azure Arc. Quando um cluster Kubernetes é conectado ao Azure, uma conexão de saída com o Azure é iniciada, usando SSL padrão do setor para proteger dados em trânsito, e vários outros recursos de segurança são habilitados, como:

Microsoft Defender para IoT e para contêineres

O Microsoft Defender for IoT é uma solução de segurança unificada criada especificamente para identificar dispositivos, vulnerabilidades e ameaças de IoT e tecnologia operacional (OT). O Microsoft Defender for Containers é uma solução nativa da nuvem para melhorar, monitorar e manter a segurança de seus ativos em contêineres (clusters Kubernetes, nós Kubernetes, cargas de trabalho Kubernetes, registros de contêineres, imagens de contêiner e muito mais) e seus aplicativos, em ambientes multicloud e locais.

Tanto o Defender for IoT quanto o Defender for Containers podem monitorar automaticamente algumas das recomendações incluídas neste artigo. O Defender for IoT e o Defender for Containers devem ser a linha de frente da defesa para proteger sua solução baseada em borda. Para saber mais, veja:

Segurança patrimonial

  • Gerenciamento de segredos: use o Azure Key Vault para armazenar e gerenciar informações confidenciais de ativos, como chaves, senhas, certificados e segredos. O Azure IoT Operations usa o Azure Key Vault como a solução de cofre gerenciado na nuvem e usa a extensão Azure Key Vault Secret Store para Kubernetes para sincronizar os segredos da nuvem e armazená-los na borda como segredos do Kubernetes. Para saber mais, consulte Gerenciar segredos para sua implantação de Operações do Azure IoT.

  • Gerenciamento de certificados: o gerenciamento de certificados é crucial para garantir uma comunicação segura entre os ativos e seu ambiente de tempo de execução de borda. O Azure IoT Operations fornece ferramentas para gerenciar certificados, incluindo emissão, renovação e revogação de certificados. Para saber mais, consulte Gerenciamento de certificados para comunicação interna do Azure IoT Operations.

  • Selecione hardware à prova de violação para ativos: escolha hardware de ativo com mecanismos integrados para detetar adulteração física, como a abertura da tampa do dispositivo ou a remoção de uma parte do dispositivo. Esses sinais de violação podem fazer parte do fluxo de dados carregado na nuvem, alertando os operadores sobre esses eventos.

  • Habilitar atualizações seguras para firmware de ativos: use serviços que habilitam atualizações over-the-air para seus ativos. Crie ativos com caminhos seguros para atualizações e garantia criptográfica de versões de firmware para proteger seus ativos durante e após as atualizações.

  • Implante o hardware de ativos com segurança: certifique-se de que a implantação de hardware de ativos seja o mais inviolável possível, especialmente em locais não seguros, como espaços públicos ou localidades não supervisionadas. Habilite apenas os recursos necessários para minimizar a pegada de ataque físico, como cobrir com segurança as portas USB se elas não forem necessárias.

  • Siga as práticas recomendadas de segurança e implantação do fabricante do dispositivo: se o fabricante do dispositivo fornecer diretrizes de segurança e implantação, siga essas orientações além das diretrizes genéricas listadas neste artigo.

Segurança da Ligação

  • Usar TLS (Transport Layer Security) para proteger conexões de ativos: toda a comunicação dentro das Operações IoT do Azure é criptografada usando TLS. Para fornecer uma experiência segura por padrão que minimize a exposição inadvertida de sua solução baseada em borda a invasores, o Azure IoT Operations é implantado com uma CA raiz padrão e um emissor para certificados de servidor TLS. Para uma implantação de produção, recomendamos o uso de seu próprio emissor de CA e uma solução PKI corporativa.

  • Considere o uso de firewalls ou proxies corporativos para gerenciar o tráfego de saída: se você usar firewalls ou proxies corporativos, adicione os pontos de extremidade do Azure IoT Operations à sua lista de permissões.

  • Criptografar o tráfego interno do agente de mensagens: Garantir a segurança das comunicações internas em sua infraestrutura de borda é importante para manter a integridade e a confidencialidade dos dados. Você deve configurar o broker MQTT para criptografar o tráfego interno e os dados em trânsito entre o frontend do MQTT broker e os pods de backend. Para saber mais, consulte Configurar a criptografia do tráfego interno do broker e certificados internos.

  • Configure o TLS com gerenciamento automático de certificados para ouvintes em seu broker MQTT: o Azure IoT Operations fornece gerenciamento automático de certificados para ouvintes em seu broker MQTT. Isso reduz a sobrecarga administrativa do gerenciamento manual de certificados, garante renovações oportunas e ajuda a manter a conformidade com as políticas de segurança. Para saber mais, consulte Proteger a comunicação do broker MQTT usando o BrokerListener.

  • Configurar uma conexão segura com o servidor OPC UA: Ao se conectar a um servidor OPC UA, você deve determinar em quais servidores OPC UA você confia para estabelecer uma sessão com segurança. Para saber mais, consulte Configurar a infraestrutura de certificados OPC UA para o conector para OPC UA.

Segurança de borda

  • Mantenha o ambiente de tempo de execução de borda atualizado: mantenha seu cluster e a implantação do Azure IoT Operations atualizados com os patches mais recentes e versões secundárias para obter todas as correções de segurança e bugs disponíveis. Para implantações de produção, desative a atualização automática para o Azure Arc para ter controle total sobre quando novas atualizações são aplicadas ao cluster. Em vez disso, atualize manualmente os agentes conforme necessário.

  • Verifique a integridade das imagens do docker e do helm: antes de implantar qualquer imagem no cluster, verifique se a imagem está assinada pela Microsoft. Para saber mais, consulte Validar assinatura de imagem.

  • Sempre use certificados X.509 ou tokens de conta de serviço Kubernetes para autenticação com seu broker MQTT: um broker MQTT suporta vários métodos de autenticação para clientes. Você pode configurar cada porta de ouvinte para ter suas próprias configurações de autenticação com um recurso BrokerAuthentication. Para saber mais, consulte Configurar a autenticação do agente MQTT.

  • Forneça o menor privilégio necessário para o ativo de tópico em seu broker MQTT: as políticas de autorização determinam quais ações os clientes podem executar no broker, como conectar, publicar ou assinar tópicos. Configure o broker MQTT para usar uma ou várias políticas de autorização com o recurso BrokerAuthorization. Para saber mais, consulte Configurar autorização do broker MQTT.

  • Configurar ambientes de rede isolados usando o Gerenciamento de Rede em Camadas do Azure IoT (visualização): o Gerenciamento de Rede em Camadas do Azure IoT (visualização) é um componente que facilita a conexão entre o Azure e clusters em ambientes de rede isolados. Em cenários industriais, as redes isoladas seguem a arquitetura ISA-95/Purdue Network. Para saber mais, consulte O que é o Gerenciamento de Rede em Camadas do Azure IoT (visualização)?.

Segurança da cloud

  • Usar identidades gerenciadas atribuídas pelo usuário para conexões de nuvem: sempre use a autenticação de identidade gerenciada. Sempre que possível, use a identidade gerenciada atribuída pelo usuário em pontos de extremidade de fluxo de dados para flexibilidade e auditabilidade.

  • Implantar recursos de observabilidade e configurar logs: a observabilidade fornece visibilidade em cada camada de sua configuração de Operações do Azure IoT. Ele fornece informações sobre o comportamento real dos problemas, o que aumenta a eficácia da engenharia de confiabilidade do site. O Azure IoT Operations oferece observabilidade por meio de painéis Grafana personalizados e selecionados que são hospedados no Azure. Esses painéis são alimentados pelo serviço gerenciado do Azure Monitor para Prometheus e pelo Container Insights. Implante recursos de observabilidade em seu cluster antes de implantar as Operações do Azure IoT.

  • Acesso seguro a ativos e pontos de extremidade de ativos com o Azure RBAC: ativos e pontos de extremidade de ativos no Azure IoT Operations têm representações no cluster Kubernetes e no portal do Azure. Você pode usar o RBAC do Azure para proteger o acesso a esses recursos. O RBAC do Azure é um sistema de autorização que permite gerenciar o acesso aos recursos do Azure. Você pode usar o RBAC do Azure para conceder permissões a usuários, grupos e aplicativos em um determinado escopo. Para saber mais, consulte Acesso seguro a ativos e pontos de extremidade de ativos.

Próximos passos

Para saber mais sobre segurança de IoT, consulte: