Computação confidencial em uma plataforma de saúde

AKS (Serviço de Kubernetes do Azure)

Este artigo apresenta uma solução que a ACC (computação confidencial) do Azure oferece para a criptografia de dados em uso.

Arquitetura

Diagram of a confidential healthcare platform demonstration. The platform includes a hospital, medical platform provider, and diagnostic provider.

Baixe um Arquivo Visio dessa arquitetura.

O diagrama descreve a arquitetura. Em todo o sistema:

Workflow

A solução envolve as seguintes etapas:

  1. Um funcionário de um hospital local abre um portal da Web. Todo o aplicativo da web é um site estático do Azure Blob Storage.
  2. O funcionário insere dados no portal da Web do hospital, que se conecta a uma API Web baseada em Python Flask criada por um fornecedor popular de plataforma de serviços médicos. Um nó confidencial no software de computação confidencial SCONE protege os dados do paciente. O SCONE funciona em um cluster do AKS que tem o SGX (Software Guard Extensions) habilitado que ajuda a executar o contêiner em um enclave. A API Web fornecerá evidências de que os dados confidenciais e o código do aplicativo serão criptografados e isolados em um Ambiente de Execução Confiável. Isso significa que ninguém, nenhum processo e nenhum log tem acesso aos dados de texto não criptografado ou ao código do aplicativo.
  3. O cliente do aplicativo Web do hospital solicita que um serviço de atestado (Atestado do Azure) valide essas evidências e receba um token de atestado assinado para outros aplicativos verificarem.
  4. Se a API Web exigir componentes adicionais (como um cache Redis), ele poderá transmitir o token de atestado para verificar se os dados e o código do aplicativo foram mantidos em um enclave seguro até o momento (confira a etapa 6 para verificação).
  5. A API Web pode, até mesmo, consumir serviços remotos, como um modelo de ML hospedado por um provedor de diagnóstico de terceiros. Ao fazer isso, ela continua transmitindo os tokens de atestado para a evidência de que os enclaves necessários são seguros. A API Web também pode tentar receber e verificar os tokens de atestado para a infraestrutura do provedor de diagnóstico.
  6. A infraestrutura remota aceita o token de atestado da API Web da plataforma de serviços médicos e o verifica com um certificado público encontrado no serviço de Atestado do Azure. Se o token for verificado, será quase certo de que o enclave é seguro e que nem os dados nem o código do aplicativo foram abertos fora do enclave.
  7. O provedor de diagnóstico, certo de que os dados não foram expostos, envia-os para um enclave próprio em um servidor de runtime do ONNX (Open Neural Network Exchange). Um modelo de IA interpreta as imagens médicas e retorna os resultados de diagnóstico novamente para o aplicativo de API Web confidencial da plataforma de serviços médicos. Daí em diante, o software pode interagir com os registros do paciente e/ou entrar em contato com outra equipe do hospital.

Componentes

  • A hospedagem de sites estáticos no Azure Blob Storage fornece conteúdo estático como HTML, CSS, JavaScript e arquivos de imagem diretamente em um contêiner de armazenamento.

  • O Atestado do Azure é uma solução unificada que verifica remotamente a confiabilidade de uma plataforma. Ele também verifica remotamente a integridade dos binários que são executados na plataforma. Use o Atestado do Azure para estabelecer uma relação de confiança com o aplicativo confidencial.

  • O Azure Kubernetes Service simplifica o processo de implantação e gerenciamento de um cluster do Kubernetes.

  • Os nós de computação confidencial são hospedados em uma série específica de máquinas virtuais que pode executar cargas de trabalho confidenciais no AKS em um TEE (ambiente de execução confiável) baseado em hardware, permitindo que o código de usuário aloque regiões privadas de memória, conhecidas como enclaves. Os nós de computação confidencial podem dar suporte a contêineres confidenciais ou a contêineres com reconhecimento de enclave.

  • A plataforma SCONE é uma solução de ISV (fornecedor independente de software) da Scontain, parceiro do Azure.

  • O Redis é um armazenamento de estrutura de dados na memória e de código aberto.

  • O SCONE (Ambiente de Contêiner Seguro) dá suporte à execução de aplicativos confidenciais em contêineres que são executados em um cluster de Kubernetes.

  • O ONNX RT – Enclave (Enclave do Confidential Inferencing ONNX Runtime Server) é um host que restringe a parte de hospedagem de ML de acessar a solicitação de inferência e a resposta correspondente.

Alternativas

  • Você pode usar o Fortanix em vez do SCONE para implantar contêineres confidenciais a fim de usá-los com seu aplicativo conteinerizado. O Fortanix fornece a flexibilidade de que você precisa para executar e gerenciar o conjunto mais amplo de aplicativos: aplicativos existentes, novos aplicativos nativos de enclave e aplicativos pré-empacotados.

  • O Graphene é um sistema operacional convidado leve e de código aberto. Ele pode executar um aplicativo Linux individual em um ambiente isolado com benefícios comparáveis à execução de um sistema operacional completo. Traz excelentes ferramentas de suporte para converter os aplicativos de contêiner existentes do Docker em GSC (Contêineres Blindados do Graphene).

Detalhes do cenário

Quando as organizações colaboram, elas compartilham informações. Mas a maioria dos envolvidos não quer permitir aos terceiros o acesso a todas as partes dos dados. Existem mecanismos para proteger os dados inativos e em trânsito. No entanto, a criptografia de dados em uso apresenta desafios diferentes.

Usando contêineres e a computação confidencial, a solução fornece uma forma para um aplicativo hospedado pelo provedor colaborar com segurança com um hospital e um provedor de diagnóstico de terceiros. O AKS (Serviço de Kubernetes do Azure) hospeda os nós de computação confidencial. O Atestado do Azure estabelece uma relação de confiança com o provedor de diagnóstico. Usando esses componentes do Azure, a arquitetura isola os dados confidenciais dos pacientes do hospital enquanto os dados compartilhados específicos são processados na nuvem. Em seguida, os dados do hospital ficam inacessíveis para o provedor de diagnóstico. Por meio dessa arquitetura, o aplicativo hospedado pelo provedor também pode aproveitar a análise avançada. O provedor de diagnóstico disponibiliza essas análises como serviços de computação confidencial de aplicativos de ML (machine learning).

Possíveis casos de uso

Muitos setores protegem os dados usando a computação confidencial para estas finalidades:

  • Proteção de dados financeiros
  • Proteção de informações de pacientes
  • Execução de processos de ML em informações confidenciais
  • Execução de algoritmos em conjuntos de dados criptografados de várias fontes
  • Proteção de dados de contêiner e integridade de código

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

As VMs (máquinas virtuais) de computação confidencial do Azure estão disponíveis em tamanhos da família D de 2ª geração para necessidades de uso geral. Esses tamanhos são conhecidos em conjunto como séries D v2 ou DCsv2. Este cenário usa máquinas virtuais da série DCs_v2 habilitadas para Intel SGX com imagens do sistema operacional Gen2. No entanto, só é possível implantar determinados tamanhos em algumas regiões. Para obter mais informações, confira Guia de Início Rápido: Implantar uma VM de Computação Confidencial do Azure no Marketplace e Produtos disponíveis por região.

Otimização de custo

A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Para explorar o custo da execução desse cenário, use a Calculadora de Preços do Azure, que configura previamente todos os serviços do Azure.

Um exemplo de perfil de custo está disponível para a plataforma de SaaS de serviços médicos da Contoso, conforme mostrado no diagrama. Inclui os seguintes componentes:

  • Pool de nós do sistema e pool de nós do SGX: nenhum disco, todos efêmeros
  • Balanceador de carga do AKS
  • Rede virtual do Azure: nominal
  • Registro de Contêiner do Azure
  • Conta de armazenamento para o SPA (aplicativo de página única)

O perfil não inclui os seguintes componentes:

  • Serviço de Atestado do Azure: gratuito

  • Logs do Azure Monitor: baseados em uso

  • Licenciamento de ISV do SCONE

  • Serviços de conformidade necessários para soluções que trabalham com os dados confidenciais, incluindo:

    • Microsoft Defender para Nuvem e Microsoft Defender para Kubernetes
    • Proteção contra DDoS do Azure: Proteção de Rede
    • Firewall do Azure
    • Gateway de Aplicativo do Azure e Firewall de Aplicativo Web do Azure
    • Cofre de Chave do Azure

Implantar este cenário

A implantação desse cenário envolve as seguintes etapas de alto nível:

  • Implantar o servidor de inferência confidencial em um cluster existente do AKS habilitado para SGX. Confira o projeto de servidor de inferência confidencial do ONNX no GitHub para saber mais sobre essa etapa.

  • Configurar as políticas do Atestado do Azure.

  • Implantar um pool de nós de cluster do AKS habilitado para SGX.

  • Obtenha acesso a aplicativos confidenciais coletados chamados SconeApps. Os SconeApps estão disponíveis em um repositório privado do GitHub que atualmente só está disponível para clientes comerciais por meio da Edição Standard do SCONE. Acesse o site do SCONE e entre em contato com a empresa diretamente para obter esse nível de serviço.

  • Instalar e executar os serviços do SCONE no cluster do AKS.

  • Instalar e testar o aplicativo baseado em Flask no cluster do AKS.

  • Implantar e acessar o cliente Web.

Essas etapas se concentram nos contêineres de enclave. Uma infraestrutura protegida se estenderá para além dessa implementação e incluirá requisitos de conformidade, como proteções adicionadas exigidas pelo HIPAA.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Próximas etapas