Conectar-se ao Microsoft Azure para configuração e coleta de dados de recursos

É possível conectar o nível Enterprise do Security Command Center ao seu ambiente do Microsoft Azure para fazer o seguinte:

  • Ative a detecção de descobertas relacionadas a configurações incorretas.
  • Identifique possíveis caminhos de ataque da Internet pública para seus recursos de alto valor do Microsoft Azure.
  • Mapeie a conformidade dos recursos do Microsoft Azure com vários padrões e comparativos.

A conexão do Security Command Center com o Microsoft Azure cria um único local para sua equipe gerenciar e corrigir as configurações incorretas no Google Cloud e no Azure.

Você configura uma conexão de confiança entre o Security Command Center e o Azure usando um Google Cloud agente de serviço e uma identidade gerenciada atribuída pelo usuário do Microsoft Azure com acesso aos recursos do Azure que você quer monitorar. Você gerencia e controla a configuração de confiança no seu ambiente do Microsoft Azure.

É possível criar uma conexão do Azure para cada Google Cloud organização.

O Security Command Center usa essa conexão para coletar periodicamente dados sobre os recursos do Microsoft Azure que você define. Esses dados são processados da mesma forma que os dados de serviço, conforme o Aviso de privacidade do Google Cloud. O conector usa chamadas de API para coletar dados de recursos do Azure. Essas chamadas de API podem gerar cobranças do Microsoft Azure.

Durante uma verificação, o pipeline de coleta de dados depende do agente de serviço para autenticação no ambiente do Microsoft Azure usando a identidade gerenciada atribuída pelo usuário.

O diagrama a seguir mostra como a confiança é estabelecida entre o Security Command Center e o Azure.

Configuração do Azure e do Security Command Center.

Este documento descreve como configurar a conexão com o Microsoft Azure. De modo geral, as etapas são as seguintes:

  1. Siga as etapas de pré-requisito em Antes de começar.

  2. Crie o conector do Azure e configure quais assinaturas e locais serão verificados. Você precisa do ID do locatário do Microsoft Azure para seguir estas etapas. Isso cria o ID do agente de serviço.

  3. Configure o ambiente do Azure para criar uma identidade gerenciada atribuída pelo usuário com as seguintes funções:

    • Leitor no escopo do grupo de gerenciamento raiz do Microsoft Azure para ler recursos, assinaturas e hierarquia de grupos de gerenciamento.

    • Key Vault Reader no escopo do grupo de gerenciamento raiz do Microsoft Azure para ler metadados sobre armazenamentos de chaves e certificados, chaves e segredos relacionados.

    • Storage Blob Data Reader no escopo do grupo de gerenciamento raiz do Microsoft Azure para ler metadados sobre recursos. Conceda essa função se você planeja ativar a opção Atribuir permissões para o serviço de descoberta de Proteção de Dados Sensíveis ao configurar o conector do Azure.

    • Leitores de diretório no Microsoft Entra ID para ler grupos e assinaturas.

    • Leitor de segurança no Microsoft Entra ID para ler políticas de autorização.

    O nome de exibição padrão do grupo de gerenciamento raiz é Tenant root group.

    Essas permissões são necessárias para que o Security Command Center identifique grupos de gerenciamento, grupos com associações e definições de função, que estão em um nível mais alto do que as assinaturas na hierarquia de recursos.

    Você também configura uma credencial de identidade federada para a identidade gerenciada atribuída pelo usuário usando informações sobre o agente de serviço.

    Você pode seguir as etapas manualmente ou usar o Terraform. Você vai precisar do ID do agente de serviço ao realizar as etapas manualmente.

  4. Conclua a configuração do conector do Azure e teste a conexão. Você usa informações sobre a identidade gerenciada atribuída pelo usuário para seguir estas etapas.

O conector do Azure não processa os registros do Azure necessários para recursos de detecção selecionados do SIEM no Security Command Center Enterprise. Para essas informações, consulte Conectar-se ao Microsoft Azure para coleta de dados de registro.

Antes de começar

As seções a seguir descrevem os pré-requisitos, as decisões e as informações necessárias antes de configurar a conexão entre o Security Command Center e o Microsoft Azure.

Analisar os recursos do Microsoft Azure

Confira se você conhece os seguintes conceitos e recursos do Microsoft Azure:

Planejar a coleta de dados

Ao planejar a estratégia de coleta de dados, faça o seguinte: Você vai precisar dessas informações ao realizar as etapas deste documento.

  • Crie ou identifique o grupo de recursos em que você vai criar a identidade gerenciada definida pelo usuário. Você vai precisar do nome do grupo de recursos durante a configuração.

    Substitua a variável RESOURCE_GROUP_NAME pelo nome do grupo de recursos para preencher o valor nas próximas etapas deste documento.

  • Identifique os recursos para os quais você quer coletar dados. Se você planeja coletar dados apenas de assinaturas ou regiões específicas, identifique e registre essas informações durante o planejamento.

    Também é possível configurar o conector do Azure para descobrir recursos automaticamente em todas as assinaturas e regiões.

Configurar permissões no Google Cloud

Em Google Cloud, para criar e gerenciar uma conexão com os provedores de nuvem de terceiros, você precisa ter o papel de proprietário de recursos do Cloud (roles/cloudasset.owner) na organização. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Configurar permissões no Microsoft Azure

Para realizar as etapas em Configurar o Microsoft Azure manualmente ou Configurar o Microsoft Azure usando o Terraform, você precisa ter uma identidade do Azure com pelo menos um grupo de recursos criado, além das permissões abaixo para configurar políticas de IAM para o Microsoft Azure e o Microsoft Entra.

É necessário ter acesso elevado para definir permissões no escopo do grupo de gerenciamento raiz. Consulte Elevar o acesso para gerenciar todas as assinaturas e grupos de gerenciamento do Azure para conferir as etapas de elevação de acesso para um administrador global.

Ativar e configurar o conector do Azure do Security Command Center

Siga estas etapas para criar e configurar o conector do Azure.

  1. Verifique se você tem as permissões definidas na seção Configurar permissões no Google Cloud.

  2. Verifique se você tem o ID do locatário do Microsoft Azure com 36 caracteres.

  3. Abra a guia Conectores na página Configurações.

    Acessar os conectores

  4. Selecione a organização em que você ativou o Security Command Center Enterprise.

  5. Clique em Adicionar conector > Microsoft Azure.

  6. Na página Configurar conector, insira o ID do locatário do Azure.

  7. Para permitir que a Proteção de Dados Sensíveis faça o perfil dos seus dados do Azure, mantenha a opção Atribuir permissões para a descoberta de Proteção de Dados Sensíveis selecionada. Essa opção adiciona o papel de leitor de dados de blob do Storage no modelo do Terraform para a identidade gerenciada definida pelo usuário.

  8. Selecione uma das seguintes opções:

    • Adicionar assinaturas automaticamente: o Security Command Center vai detectar e incluir assinaturas automaticamente. Você pode excluir a coleta de IDs de assinatura adicionando-os ao campo Excluir assinaturas do Azure.
    • Adicionar assinaturas individualmente: o Security Command Center não vai detectar assinaturas automaticamente. É necessário definir pelo menos uma assinatura usando o campo Add Azure Subscription.
  9. Na seção Selecionar locais do Azure para coletar dados, selecione um ou mais locais do Microsoft Azure para coletar dados. Deixe esse campo em branco para coletar dados de todos os locais. Quando você seleciona um local no menu, os locais desmarcados são excluídos.

    As configurações recomendadas são Descubra automaticamente suas assinaturas do Azure e use todos os locais do Microsoft Azure.

  10. Clique em Próxima. A página Conectar ao Azure é aberta.

  11. Deixe a página Conectar ao Azure aberta e continue com Configurar o ambiente do Microsoft Azure.

    Depois de configurar o Microsoft Azure, você vai retornar a esta página para concluir a configuração do conector do Azure.

Configurar o ambiente do Microsoft Azure

Preencha uma das seções a seguir:

Configurar o Microsoft Azure manualmente

A seção a seguir descreve as etapas manuais de alto nível para configurar o ambiente do Azure que estabelece a confiança entre o Security Command Center e o Microsoft Azure. Este procedimento não é abrangente. Cada seção fornece links para a documentação do Microsoft Azure que explica como realizar essa tarefa.

Pré-requisitos

Etapa 1: criar uma identidade gerenciada atribuída pelo usuário em um grupo de recursos

  1. Siga as etapas em Gerenciar identidades gerenciadas atribuídas pelo usuário para criar a identidade gerenciada atribuída pelo usuário.

    Ao criar a identidade, especifique o seguinte:

    • Assinatura: selecione a assinatura em que a identidade será gerenciada.
    • Grupo de recursos: especifique o nome do grupo de recursos, RESOURCE_GROUP_NAME, em que a identidade será gerenciada. Você identificou isso ao planejar a coleta de dados.
    • Região: selecione uma região, por exemplo, East US.
    • Nome: insira um nome para a identidade gerenciada atribuída pelo usuário, por exemplo, gcp-managed-identity. Substitua a variável USER_ASSIGNED_MANAGED_IDENTITY_NAME pelo nome da identidade. Ela será preenchida nas etapas deste documento quando necessário.
  2. Grave as seguintes informações. Você vai usar isso nas próximas etapas.

    • ID do cliente: o valor de 36 caracteres atribuído à identidade.
    • ID do objeto (principal): o valor de 36 caracteres atribuído à identidade.
    • Nome da identidade: o valor que você definiu para Nome.

Etapa 2: criar uma credencial federada para a identidade gerenciada atribuída pelo usuário

Para adicionar uma credencial federada na identidade gerenciada atribuída pelo usuário, siga as etapas em Configurar uma identidade gerenciada atribuída pelo usuário para confiar em um provedor de identidade externo.

Use as orientações descritas pelo Outro cenário de emissor e defina o seguinte:

  • Cenário de credencial federada: escolha Outro: configure uma identidade gerenciada por um provedor externo do OpenID Connect para acessar recursos do Microsoft Azure como este aplicativo.
  • URL do emissor: digite https://accounts.google.com.
  • Identificador de assunto: insira o ID do agente de serviço gerado quando você criou o conector do Azure do Security Command Center.
  • Nome: insira um nome para a credencial federada, por exemplo, gcp-managed-identity-fic.
  • Público-alvo: insira https://cloud.google.com.

Etapa 3: atribuir funções integradas do Microsoft Azure

Siga as etapas em Atribuir funções do Azure usando o portal do Azure para atribuir os seguintes papéis integrados do Microsoft Azure à identidade gerenciada atribuída pelo usuário:

  • Leitor do Vault
  • Leitor
  • Leitor de dados de blob do Storage

Conceda essas funções no escopo do grupo de gerenciamento raiz.

Etapa 4: atribuir as funções integradas do Microsoft Entra ID

Siga as etapas em Atribuir funções do Microsoft Entra aos usuários para atribuir as seguintes funções integradas do Microsoft Entra ID à identidade gerenciada atribuída pelo usuário:

  • Leitores de diretório
  • Leitor de segurança

Quando terminar, continue com a seção Concluir a configuração do conector do Azure.

Configurar o Microsoft Azure usando o Terraform

As etapas gerais a seguir descrevem como usar o Terraform para configurar o Microsoft Azure. Este procedimento não é abrangente. Para mais detalhes sobre como usar o Terraform para provisionar recursos, consulte a documentação do Terraform no Azure.

  1. Abra a página Conectar ao Azure que você deixou aberta quando criou o conector do Azure.

  2. Clique em Fazer o download dos modelos do Terraform. Isso faz o download do arquivo azure_terraform.zip que contém vários arquivos JSON.

  3. Faça login no Microsoft Azure e abra o Azure Cloud Shell com o BASH ou o Azure PowerShell.

  4. Configure o Terraform de acordo com as políticas da sua organização usando uma das seguintes instruções:

  5. Copie o arquivo azure_terraform.zip para o ambiente do Azure Cloud Shell e extraia o conteúdo. Você vai encontrar os seguintes arquivos: main.tf.json, outputs.tf.json, providers.tf.json e variables.tf.json.

  6. Crie cópias desses arquivos em um diretório separado.

    1. Crie um novo diretório para testar o exemplo de código do Terraform e torná-lo o diretório atual.
    2. No diretório recém-criado, crie cópias dos arquivos JSON extraídos com o mesmo nome do arquivo original:

      • Crie um novo arquivo chamado main.tf.json e copie e cole o código do arquivo main.tf.json extraído.
      • Crie um novo arquivo chamado providers.tf.json e copie e cole o código do arquivo providers.tf.json extraído.
      • Crie um novo arquivo chamado outputs.tf.json e copie e cole o código do arquivo outputs.tf.json extraído.
      • Crie um novo arquivo chamado variables.tf.json e copie e cole o código do arquivo variables.tf.json extraído.
  7. Execute o comando a seguir para inicializar a implantação do Terraform.

    terraform init -upgrade
    
  8. Execute o comando a seguir para criar um plano de execução.

    terraform plan -out main.tfplan -var="resource_group_name=RESOURCE_GROUP_NAME" -var="user_assigned_managed_identity_name=USER_ASSIGNED_MANAGED_IDENTITY_NAME"
    

    Substitua:

    • RESOURCE_GROUP_NAME: o nome do grupo de recursos do Microsoft Azure em que a identidade gerenciada atribuída pelo usuário será criada.
    • USER_ASSIGNED_MANAGED_IDENTITY_NAME: o nome da identidade gerenciada atribuída pelo usuário que será criada. Se não for especificado, o valor padrão será google-cloud-managed-identity.
  9. Execute o comando a seguir para aplicar o plano de execução à infraestrutura do Microsoft Azure.

    terraform apply main.tfplan
    
  10. Continue com a seção Concluir a configuração do conector do Azure.

Concluir a configuração do conector da Azure

  1. Confira se você tem as seguintes informações sobre a identidade gerenciada atribuída pelo usuário do Microsoft Azure:

    • ID do cliente: o valor de 36 caracteres atribuído à identidade.
    • ID do objeto (principal): o valor de 36 caracteres atribuído à identidade.

    Para saber como encontrar essas informações, consulte Listar identidades gerenciadas atribuídas pelo usuário.

  2. Abra a página Conectar ao Azure que você deixou aberta quando criou o conector do Azure.

  3. Na seção Dados da identidade gerenciada pelo Azure, insira o seguinte:

    • ID do cliente da identidade gerenciada: é o ID do cliente.
    • ID do objeto da identidade gerenciada: é o ID do objeto (principal).
  4. Clique em Continuar.

  5. Na página Test connector, clique em Test Connector para verificar se o Security Command Center pode se conectar ao ambiente do Microsoft Azure.

    Se a conexão for bem-sucedida, Google Cloud o agente de serviço poderá assumir a identidade gerenciada atribuída pelo usuário do Microsoft Azure e terá as permissões necessárias do Microsoft Azure e do Microsoft Entra. Se a conexão não funcionar, consulte Solução de problemas ao testar a conexão.

  6. Clique em Salvar. A página Conectores é exibida.

O conector começa a verificar e coletar dados das assinaturas e dos locais do Azure que você especificou. Pode levar até 24 horas para que os resultados apareçam.

Solução de problemas de erros ao testar a conexão

A seção a seguir descreve os erros que podem ocorrer ao testar a conexão entre o Security Command Center e o Microsoft Azure e como resolver cada um deles.

Erro AZURE_ENABLED_SUBSCRIPTIONS_NOT_FOUND

O conector do Azure não encontrou assinaturas ativadas no locatário identificado pelo campo ID do locatário do Azure. Verifique:

  • Se a opção Adicionar assinaturas automaticamente estiver selecionada, verifique se o tenant inclui assinaturas que estão no estado Enabled e que não aparecem no campo Excluir assinaturas do Azure.
  • Se a opção Adicionar assinaturas individualmente estiver selecionada, verifique se as assinaturas especificadas têm o estado Enabled.

Erro AZURE_FAILED_TO_ASSUME_MANAGED_IDENTITY

A conexão é inválida porque a identidade gerenciada atribuída pelo usuário do Microsoft Azure não pode ser assumida pelo agente de serviço Google Cloud . As causas abaixo podem ser possíveis:

  • A identidade gerenciada atribuída pelo usuário especificada na conexão não existe ou a configuração está incorreta.
  • A identidade gerenciada atribuída pelo usuário especificada na conexão pode não ter a credencial de identidade federada necessária para confiar no agente de serviço Google Cloud .

Para resolver esse problema, faça o seguinte:

Erro AZURE_MANAGED_IDENTITY_MISSING_REQUIRED_PERMISSION

A conexão é inválida porque a identidade gerenciada atribuída pelo usuário do Azure está sem uma função necessária do Microsoft Azure ou do Microsoft Entra. A mensagem de erro inclui o papel ausente.

Para resolver esse problema, revise as configurações definidas ao configurar os papéis integrados do Microsoft Azure e papéis integrados do Microsoft Entra para garantir que a configuração esteja correta.

Erro AZURE_MANAGED_IDENTITY_ASSUMPTION_FAILED_AND_MISSING_REQUIRED_PERMISSION

A conexão é inválida porque a identidade gerenciada atribuída pelo usuário do Microsoft Azure não foi assumida pelo agente de serviço Google Cloud e, ao mesmo tempo, alguns dos papéis necessários do Microsoft Azure ou do Microsoft Entra estão ausentes.

A mensagem de erro inclui detalhes sobre qual escopo a identidade gerenciada atribuída pelo usuário não conseguiu assumir e quais funções estão faltando.

Para resolver esse problema, faça o seguinte:

Outras dicas de solução de problemas

A seção a seguir descreve comportamentos e possíveis etapas para resolver o problema.

A descoberta é retornada para um recurso do Azure excluído

Depois que um recurso do Azure é excluído, pode levar até 40 horas para que ele seja removido do sistema de inventário de ativos do Security Command Center. Se você optar por resolver uma descoberta excluindo o recurso, ela poderá ser informada neste período porque o recurso ainda não foi removido do sistema de inventário de recursos do Security Command Center.

A seguir