Share via


Alerta sobre atribuições de função privilegiadas do Azure

As funções privilegiadas do Azure, como Colaborador, Proprietário ou Administrador de Acesso de Usuário, são funções poderosas e podem introduzir riscos em seu sistema. Talvez você queira ser notificado por e-mail ou mensagem de texto quando essas ou outras funções forem atribuídas. Este artigo descreve como ser notificado de atribuições de função privilegiada em um escopo de assinatura criando uma regra de alerta usando o Azure Monitor.

Pré-requisitos

Para criar uma regra de alerta, você deve ter:

  • Aceder a uma subscrição do Azure
  • Permissão para criar grupos de recursos e recursos dentro da assinatura
  • O Log Analytics está configurado para ter acesso à tabela AzureActivity

Estimar custos antes de usar o Azure Monitor

Há um custo associado ao uso do Azure Monitor e das regras de alerta. O custo é baseado na frequência com que a consulta é executada e nas notificações selecionadas. Para obter mais informações, consulte Preços do Azure Monitor.

Criar uma regra de alerta

Para ser notificado sobre atribuições de função privilegiada, crie uma regra de alerta no Azure Monitor.

  1. Inicie sessão no portal do Azure.

  2. Navegue até Monitor.

  3. Na navegação à esquerda, clique em Alertas.

  4. Clique em Criar>regra de alerta. A página Criar uma regra de alerta é aberta.

  5. Na guia Escopo, selecione sua assinatura.

  6. Na guia Condição, selecione o nome do sinal de pesquisa de log personalizado.

  7. Na caixa Consulta de log, adicione a seguinte consulta Kusto que será executada no log da assinatura e acionará o alerta.

    Esta consulta filtra as tentativas de atribuir as funções de Colaborador, Proprietário ou Administrador de Acesso de Usuário no escopo da assinatura selecionada.

    AzureActivity
    | where CategoryValue =~ "Administrative" and
        OperationNameValue =~ "Microsoft.Authorization/roleAssignments/write" and
        (ActivityStatusValue =~ "Start" or ActivityStatus =~ "Started")
    | extend Properties_d = todynamic(Properties)
    | extend RoleDefinition = extractjson("$.Properties.RoleDefinitionId",tostring(Properties_d.requestbody),typeof(string))
    | extend PrincipalId = extractjson("$.Properties.PrincipalId",tostring(Properties_d.requestbody),typeof(string))
    | extend PrincipalType = extractjson("$.Properties.PrincipalType",tostring(Properties_d.requestbody),typeof(string))
    | extend Scope = extractjson("$.Properties.Scope",tostring(Properties_d.requestbody),typeof(string))
    | where Scope !contains "resourcegroups"
    | extend RoleId = split(RoleDefinition,'/')[-1]
    | extend RoleDisplayName = case(
        RoleId =~ 'b24988ac-6180-42a0-ab88-20f7382dd24c', "Contributor",
        RoleId =~ '8e3af657-a8ff-443c-a75c-2fe8c4bcb635', "Owner",
        RoleId =~ '18d7d88d-d35e-4fb5-a5c3-7773c20a72d9', "User Access Administrator",
        "Irrelevant")
    | where RoleDisplayName != "Irrelevant"
    | project TimeGenerated,Scope, PrincipalId,PrincipalType,RoleDisplayName
    

    Screenshot of Create an alert rule condition tab in Azure Monitor.

  8. Na seção Medição, defina os seguintes valores:

    • Medida: Linhas da tabela
    • Tipo de agregação: Contagem
    • Granularidade da agregação: 5 minutos

    Para granularidade de agregação, você pode alterar o valor padrão para uma frequência desejada.

  9. Na seção Dividir por dimensões, defina a coluna ID do recurso como Não dividir.

  10. Na seção Lógica de alerta, defina os seguintes valores:

    • Operador: Maior que
    • Valor limite: 0
    • Frequência da avaliação: 5 minutos

    Para Frequência de avaliação, você pode alterar o valor padrão para uma frequência desejada.

  11. Na guia Ações, crie um grupo de ações ou selecione um grupo de ações existente.

    Um grupo de ações define as ações e notificações que são executadas quando o alerta é acionado.

    Ao criar um grupo de ações, você deve especificar o grupo de recursos no qual colocar o grupo de ações. Em seguida, selecione as notificações (Email/SMS message/Push/Voice action) para invocar quando a regra de alerta for acionada. Pode ignorar os separadores Ações e Etiquetas . Para obter mais informações, consulte Criar e gerenciar grupos de ações no portal do Azure.

  12. Na guia Detalhes, selecione o grupo de recursos para salvar a regra de alerta.

  13. Na seção Detalhes da regra de alerta, selecione uma Severidade e especifique um nome de regra de alerta.

  14. Para Região, você pode selecionar qualquer região, já que os logs de atividade do Azure são globais.

  15. Ignore a guia Marcas .

  16. No separador Rever + criar, clique em Criar para criar a regra de alerta.

Testar a regra de alerta

Depois de criar uma regra de alerta, você pode testar se ela é acionada.

  1. Atribua a função de Colaborador, Proprietário ou Administrador de Acesso de Usuário no escopo da assinatura. Para obter mais informações, consulte Atribuir funções do Azure utilizando o portal do Azure.

  2. Aguarde alguns minutos para receber o alerta com base na granularidade da agregação e na frequência de avaliação da consulta de log.

  3. Na página Alertas, monitore o alerta especificado no grupo de ações.

    Screenshot of the Alerts page showing that role assignment alert fired.

    A imagem a seguir mostra um exemplo do alerta de e-mail.

    Screenshot of an email alert for a role assignment.

Excluir a regra de alerta

Siga estas etapas para excluir a regra de alerta de atribuição de função e interromper custos adicionais.

  1. No Monitor, navegue até Alertas.

  2. Na barra, clique em Regras de alerta.

  3. Adicione uma marca de seleção ao lado da regra de alerta que você deseja excluir.

  4. Clique em Excluir para remover o alerta.

Próximos passos