Proteger os Gêmeos Digitais do Azure

Este artigo explica as práticas recomendadas de segurança dos Gêmeos Digitais do Azure. Ele abrange funções e permissões, identidade gerenciada, acesso à rede privada com Link Privado do Azure, marcas de serviço, criptografia de dados inativos e CORS (Compartilhamento de Recursos entre Origens).

Por questão de segurança, os Gêmeos Digitais do Azure permitem o controle preciso de dados, recursos e ações específicos em sua implantação. Esse serviço faz isso por meio de uma estratégia de gerenciamento de permissão e função e uma chamada RBAC (controle de acesso baseado em função) do Azure.

Os Gêmeos Digitais do Azure também são compatíveis com a criptografia de dados inativos.

Funções e permissões com o RBAC do Azure

O RBAC do Azure é fornecido aos Gêmeos Digitais do Azure por meio da integração com a ID do Microsoft Entra.

Use o RBAC do Azure para conceder permissões a uma entidade de segurança, que pode ser um usuário, um grupo ou uma entidade de serviço de aplicativo. A entidade de segurança é autenticada pelo Microsoft Entra ID e recebe um token OAuth 2.0 em troca. Esse token pode ser usado para autorizar uma solicitação de acesso a uma instância dos Gêmeos Digitais do Azure.

Autenticação e autorização

Com o Microsoft Entra ID, o acesso é um processo de duas etapas. Quando uma entidade de segurança (um usuário, grupo ou aplicativo) tenta acessar o Gêmeos Digitais do Azure, a solicitação deve ser autenticada e autorizada.

  1. Primeiro, a identidade da entidade de segurança é autenticada e um token OAuth 2.0 é retornado.
  2. Em seguida, o token é passado como parte de uma solicitação para o serviço dos Gêmeos Digitais do Azure para autorizar o acesso ao recurso especificado.

A etapa de autenticação requer que toda solicitação do aplicativo contenha um token de acesso OAuth 2.0 no runtime. Se um aplicativo estiver em execução em uma entidade do Azure, como um aplicativo do Azure Functions, ele poderá usar uma identidade gerenciada para acessar os recursos. Leia mais sobre identidades gerenciadas na próxima seção.

A etapa de autorização requer que uma função do Azure seja atribuída à entidade de segurança. As funções atribuídas a uma entidade de segurança determinam as permissões que a entidade terá. Os Gêmeos Digitais do Azure fornecem funções do Azure que abrangem conjuntos de permissões para recursos dos Gêmeos Digitais do Azure. Essas funções serão descritas posteriormente neste artigo.

Para saber mais sobre funções e atribuições de função com suporte no Azure, confira Entender as diferentes funções na documentação do RBAC do Azure.

Autenticação com identidades gerenciadas

As identidades gerenciadas para recursos do Azure são um recurso do Azure que permite criar uma identidade segura associada à implantação na qual o código do aplicativo é executado. Dessa forma, você pode associar essa identidade a funções de controle de acesso para conceder permissões personalizadas para acessar recursos do Azure específicos que seu aplicativo precisar.

Com identidades gerenciadas, a plataforma do Azure gerencia essa identidade de runtime. Você não precisa armazenar nem proteger as chaves de acesso no código ou na configuração do aplicativo, seja para a própria identidade ou para os recursos que você precisa acessar. Um aplicativo cliente dos Gêmeos Digitais do Azure em execução em um aplicativo do Serviço de Aplicativo do Azure não precisa manipular regras e chaves de SAS nem nenhum outro token de acesso. O aplicativo cliente precisa apenas do endereço do ponto de extremidade do namespace dos Gêmeos Digitais do Azure. Quando o aplicativo se conecta, os Gêmeos Digitais do Azure associam o contexto da entidade gerenciada ao cliente. Depois que está associado com uma identidade gerenciada, o cliente dos Gêmeos Digitais do Azure pode realizar todas as operações autorizadas. A autorização será concedida por meio da associação de uma entidade gerenciada com uma função dos Gêmeos Digitais do Azure (descrita abaixo).

Autorização: funções do Azure para Gêmeos Digitais do Azure

O Azure fornece duas funções internas do Azure para autorizar o acesso às APIs do plano de dados dos Gêmeos Digitais do Azure. Você pode consultar as funções por nome ou por ID:

Função interna Descrição ID
Proprietário de Dados dos Gêmeos Digitais do Azure Fornece acesso completo aos recursos dos Gêmeos Digitais do Azure bcd981a7-7f74-457b-83e1-cceb9e632ffe
Leitor de dados dos Gêmeos Digitais do Azure Fornece acesso somente leitura aos recursos dos Gêmeos Digitais do Azure d57506d4-4c8d-48b1-8587-93c323f6a5a3

Você pode atribuir funções de duas maneiras:

Para obter etapas detalhadas sobre como atribuir funções a uma instância do Gêmeos Digitais do Azure, consulte Configurar uma instância e autenticação. Para obter mais informações sobre como as funções internas são definidas, confira Entender as definições de função na documentação do RBAC do Azure.

Você também pode criar funções personalizadas do Azure para sua instância. Isso permite que você conceda permissão para ações específicas em áreas de dados individuais, incluindo gêmeos, comandos, relacionamentos, rotas de eventos, trabalhos, modelos e consultas. Para obter mais informações sobre funções personalizadas no Azure, consulte Funções personalizadas do Azure.

Automatizando funções

Ao fazer referência a funções em cenários automatizados, é recomendável fazê-lo por suas IDs, em vez de seus nomes. Os nomes poderão ser alterados entre as versões, mas as IDs não, tornando-as uma referência mais estável na automação.

Dica

Caso esteja atribuindo funções com um cmdlet, como New-AzRoleAssignment (referência), será possível usar o parâmetro -RoleDefinitionId em vez de -RoleDefinitionName a fim de passar uma ID em vez de um nome para a função.

Escopos de permissão

Antes de atribuir uma função do Azure a uma entidade de segurança, determine o escopo do acesso que essa entidade de segurança deve ter. De acordo com as melhores práticas, é melhor conceder o escopo mais estreito possível.

A lista a seguir descreve os níveis de escopo de acesso que você pode definir para os recursos de Gêmeos Digitais do Azure.

  • Modelos: as ações para este recurso determinam o controle sobre os modelos carregados nos Gêmeos Digitais do Azure.
  • Consultar Grafo de Gêmeos Digitais: as ações para esse recurso determinam a capacidade de executar operações de consulta em gêmeos digitais no grafo dos Gêmeos Digitais do Azure.
  • Gêmeo Digital: as ações desse recurso fornecem controle sobre as operações CRUD em gêmeos digitais no grafo gêmeo.
  • Relação de gêmeo digital: as ações para esse recurso definem o controle sobre as operações CRUD em relações entre gêmeos digitais no grafo gêmeo.
  • Rota de evento: as ações para este recurso determinam as permissões para rotear eventos dos Gêmeos Digitais do Azure para um serviço de ponto de extremidade como Hubs de Eventos, Grade de Eventos ou Barramento de Serviço.

Solucionar problemas de permissões

Se um usuário tentar executar uma ação não permitida por sua função, ele poderá receber um erro da leitura da solicitação de serviço 403 (Forbidden). Para saber mais e obter etapas de solução de problemas, confira Solução de problemas de falha na solicitação de serviço dos Gêmeos Digitais do Azure: Erro 403 (Proibido).

Identidade gerenciada para acessar outros recursos

Configurar uma identidade gerenciada da IDdo Microsoft Entra para uma instância do Gêmeos Digitais do Azure pode permitir que a instância acesse facilmente outros recursos protegidos do Microsoft Entra, como o Cofre de Chaves do Azure. A identidade é gerenciada pela plataforma do Azure e não exige provisionamento nem alternância de segredo. Para saber mais sobre identidades gerenciadas na ID do Microsoft Entra, consulte Identidades gerenciadas para recursos do Azure.

Os Gêmeos Digitais do Azure dão suporte aos dois tipos de identidades gerenciadas, atribuída pelo sistema e atribuída pelo usuário.

Use qualquer um desses tipos de identidade gerenciada para autenticar em um ponto de extremidade definido como personalizado. Os Gêmeos Digitais do Azure dão suporte à autenticação baseada em identidade para pontos de extremidade para os destinos de Hub de Eventos e Barramento de Serviço e para um ponto de extremidades do Contêiner do Armazenamento do Microsoft Azure para eventos de mensagens inativas. Atualmente, não há suporte para pontos de extremidade da Grade de Eventos para identidades gerenciadas.

Para obter instruções sobre como habilitar uma identidade gerenciada para um ponto de extremidade do Gêmeos Digitais do Azure que pode ser usado para rotear eventos, consulte Opções de ponto de extremidade: autenticação baseada em identidade.

Usando o serviço confiável da Microsoft para rotear eventos para Hubs de Eventos e pontos de extremidade do Barramento de Serviço

Os Gêmeos Digitais do Azure podem se conectar a Hubs de Eventos e pontos de extremidade do Barramento de Serviço para enviar dados de eventos, usando os pontos de extremidade públicos desses recursos. No entanto, se esses recursos estiverem vinculados a uma rede virtual, a conectividade com os recursos será bloqueada por padrão. Como resultado, essa configuração impede que os Gêmeos Digitais do Azure enviem dados de eventos para seus recursos.

Para resolver isso, habilite a conectividade de sua instância de Gêmeos Digitais do Azure para seus Hubs de Eventos ou recursos do Barramento de Serviço por meio da opção de serviço confiável da Microsoft (consulte Serviços confiáveis da Microsoft para Hubs de Eventos e Serviços confiáveis da Microsoft para Barramento de Serviço).

Você precisará concluir as etapas a seguir para habilitar a conexão de serviço confiável da Microsoft.

  1. Sua instância do Azure Digital Twins deve usar uma identidade gerenciada atribuída pelo sistema. Isso permite que outros serviços localizem sua instância como um serviço confiável da Microsoft. Para obter instruções sobre como configurar uma identidade gerenciada pelo sistema na instância, consulte Habilitar identidade gerenciada para a instância.
  2. Depois que uma identidade gerenciada atribuída ao sistema for provisionada, conceda permissão para a identidade gerenciada da instância acessar os Hubs de Eventos ou o ponto de extremidade do Barramento de Serviço (esse recurso não tem suporte na Grade de Eventos). Para obter instruções sobre como atribuir as funções adequadas, consulte Atribuir funções do Azure à identidade.
  3. Para Hubs de Eventos e pontos de extremidade do Barramento de Serviço que tenham configurações de firewall em vigor, habilite a configuração Permitir que serviços confiáveis da Microsoft ignorem esse firewall .

O Link Privado do Azure é um serviço que permite que você acesse recursos do Azure (como Hubs de Eventos do Azure, Armazenamento do Azure e Azure Cosmos DB) e serviços de parceiros e clientes hospedados no Azure, por meio de um ponto de extremidade privado em sua VNet (Rede Virtual do Azure).

Da mesma forma, você pode usar pontos de extremidade de acesso privado para sua instância de Gêmeos Digitais do Azure para permitir que os clientes localizados em sua rede virtual tenham acesso seguro à API REST à instância por Link Privado. Configurar um ponto de extremidade de acesso privado para sua instância do Gêmeos Digitais do Azure permite que você proteja sua instância do Gêmeos Digitais do Azure e elimine a exposição pública. Além disso, ele ajuda a evitar a exfiltração de dados de sua VNet (Rede Virtual) do Azure.

O ponto de extremidade de acesso privado usa um endereço IP do seu espaço de endereço de rede virtual do Azure. O tráfego de rede entre um cliente em sua rede privada e a instância dos Gêmeos Digitais do Azure atravessa a VNet e um Link Privado na rede do backbone da Microsoft, eliminando a exposição à Internet pública. Aqui está uma representação visual deste sistema:

Diagram showing a network that is a protected VNET with no public cloud access, connecting through Private Link to an Azure Digital Twins instance.

Configurar um ponto de extremidade de acesso privado para sua instância de Gêmeos Digitais do Azure permite que você proteja sua instância de Gêmeos Digitais do Azure e elimine a exposição pública, além de evitar a exfiltração de dados de sua rede virtual.

Para obter instruções de como configurar o Link Privado para os Gêmeos Digitais do Azure, confira Habilitar o acesso privado com o Link Privado.

Observação

O acesso à rede privada com o Link Privado do Azure se aplica ao acesso aos Gêmeos Digitais do Azure por meio de suas APIs restantes. Esse recurso não se aplica a cenários de saída usando o recurso de roteamento de eventos do Gêmeos Digitais do Azure.

Considerações sobre o design

Ao trabalhar com o Link Privado para os Gêmeos Digitais do Azure, veja alguns fatores a considerar:

  • Preço: para obter detalhes de preço, confira Preço do Link Privado do Azure.
  • Disponibilidade regional: o Link Privado dos Gêmeos Digitais do Azure está disponível em todas as regiões do Azure em que os Gêmeos Digitais do Azure estão disponíveis.
  • Azure Digital Twins Explorer: o Azure Digital Twins Explorer não pode acessar instâncias dos Gêmeos Digitais do Azure que têm o acesso público desabilitado. No entanto, você pode usar as funções do Azure para implantar a base de código do Azure Digital Twins Explorer de forma privada na nuvem. Para obter instruções sobre como fazer isso, confira o Azure Digital Twins Explorer: em execução na nuvem.
  • Número máximo de pontos de extremidade privados por instância de Gêmeos Digitais do Azure: 10
  • Outros limites: para obter mais informações sobre os limites do Link Privado, confira Documentação do Link Privado do Azure: Limitações.

Marcas de serviço

Uma marca de serviço representa um grupo de prefixos de endereço IP de um determinado serviço do Azure. A Microsoft gerencia os prefixos de endereço englobados pela marca de serviço e atualiza automaticamente a marca de serviço em caso de alteração de endereços, minimizando a complexidade de atualizações frequentes das regras de segurança de rede. Para obter mais informações sobre marcas de serviço, confira Marcas de rede virtual.

Você pode usar marcas de serviço para definir os controles de acesso à rede em grupos de segurança de rede ou Firewall do Azure, usando as marcas de serviço no lugar de endereços IP específicos ao criar regras de segurança. Ao especificar o nome da marca de serviço (neste caso, AzureDigitalTwins) no campo correto de origem ou destino de uma regra, você poderá permitir ou negar o tráfego para o serviço correspondente.

Abaixo estão os detalhes da marca de serviço AzureDigitalTwins.

Marca Finalidade É possível usar entrada ou saída? Pode ser regional? É possível usar com o Firewall do Azure?
AzureDigitalTwins Gêmeos Digitais do Azure
Observação: esta marca ou os endereços IP cobertos por essa marca podem ser usados para restringir o acesso a pontos de extremidade configurados para rotas de eventos.
Entrada Não Sim

Usando marcas de serviço para acessar pontos de extremidade de rota de evento

Aqui estão as etapas para acessar pontos de extremidade de rota de evento usando marcas de serviço com Gêmeos Digitais do Azure.

  1. Primeiro, baixe esta referência de arquivo JSON mostrando intervalos de IP do Azure e marcas de serviço: Intervalos de IP do Azure e Marcas de Serviço.

  2. Procure os intervalos de IP "AzureDigitalTwins" no arquivo JSON.

  3. Confira a documentação do recurso externo conectado ao ponto de extremidade (por exemplo, a Grade de Eventos, os Hubs de Eventos, o Barramento de Serviço ou o Armazenamento do Azure para eventos de mensagens mortas) para ver como definir filtros de IP para esse recurso.

  4. Defina os filtros de IP nos recursos externos usando os intervalos de IP da Etapa 2.

  5. Atualize periodicamente os intervalos de IP conforme necessário. Os intervalos podem mudar ao longo do tempo, portanto, é uma boa ideia verificá-los regularmente e atualizá-los quando necessário. A frequência dessas atualizações pode variar, mas é uma interessante verificá-los uma vez por semana.

Criptografia de dados em repouso

Os Gêmeos Digitais do Azure fornecem criptografia de dados inativos e em trânsito conforme eles são gravados em nossos data centers e descriptografa esses dados para você conforme você os acessa. Essa criptografia ocorre com uma chave de criptografia gerenciada pela Microsoft.

CORS (Compartilhamento de Recursos entre Origens)

Atualmente, os Gêmeos Digitais do Azure não dão suporte ao CORS (compartilhamento de recursos entre origens) . Como resultado, se você estiver chamando uma API REST por meio de um aplicativo de navegador, uma interface de APIM (Gerenciamento de API) ou um conector dos Power Apps, você poderá ver um erro de política.

Para resolver esse erro, você pode realizar uma das seguintes ações:

  • Remova o cabeçalho CORS Access-Control-Allow-Origin da mensagem. Esse cabeçalho indica se a resposta pode ser compartilhada.
  • Como alternativa, crie um proxy CORS e faça a solicitação da API REST dos Gêmeos Digitais do Azure.

Próximas etapas