Criar cloudFirewallRule

Namespace: microsoft.graph.networkaccess

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Crie um novo objeto cloudFirewallRule em um cloudFirewallPolicy.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet
✅ ✅ ✅ ❌

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) NetworkAccess.ReadWrite.All Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application NetworkAccess.ReadWrite.All Indisponível.

Importante

Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:

  • Administrador Global de Acesso Seguro
  • Administrador de Segurança

Solicitação HTTP

POST /networkAccess/cloudFirewallPolicies/{cloudFirewallPolicyId}/policyRules

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto cloudFirewallRule .

Você pode especificar as propriedades a seguir ao criar um cloudFirewallRule.

Propriedade Tipo Descrição
name Cadeia de caracteres Um nome de exibição exclusivo para a regra. Obrigatório.
description Cadeia de caracteres Uma descrição da regra. Opcional.
prioridade Int64 Um valor de prioridade exclusivo que determina a ordem de avaliação da regra. Obrigatório.
ação microsoft.graph.networkaccess.cloudFirewallAction A ação a ser tomada quando o tráfego corresponde à regra. Os valores possíveis são: allow, block, unknownFutureValue. Obrigatório.
settings microsoft.graph.networkaccess.cloudFirewallRuleSettings Definições de configuração da regra. Obrigatório.
matchingConditions microsoft.graph.networkaccess.cloudFirewallMatchingConditions As condições às quais o tráfego deve corresponder para que a regra seja aplicada. Obrigatório.

Resposta

Se for bem-sucedido, esse método retornará um código de 201 Created resposta e um objeto cloudFirewallRule no corpo da resposta.

Exemplos

Solicitação

O exemplo a seguir mostra uma solicitação que cria uma regra para bloquear tráfego específico. As condições de correspondência usam a lógica AND entre propriedades (origens E destinos devem corresponder), enquanto os itens dentro das coleções usam a lógica OR (qualquer endereço ou porta pode corresponder).

POST https://graph.microsoft.com/beta/networkAccess/cloudFirewallPolicies/80b58b7d-572f-4457-8944-c804fcf3b694/policyRules
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallRule",
  "name": "Block outbound to risky destinations",
  "description": "Block traffic to specific IPs on common ports",
  "priority": 100,
  "action": "block",
  "settings": {
    "status": "enabled"
  },
  "matchingConditions": {
    "sources": {
      "addresses": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallSourceIpAddress",
          "values": ["192.168.1.1", "192.168.0.0/16", "172.16.0.0-172.16.255.255"]
        }
      ],
      "ports": ["80", "443", "445-447"]
    },
    "destinations": {
      "addresses": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallDestinationIpAddress",
          "values": ["10.0.0.1"]
        }
      ],
      "ports": ["80", "443", "445-447"],
      "protocols": "tcp"
    }
  }
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallRule",
  "id": "406ebb24-e229-4011-8240-e11bbaa4f49d",
  "name": "Block outbound to risky destinations",
  "description": "Block traffic to specific IPs on common ports",
  "priority": 100,
  "action": "block",
  "settings": {
    "status": "enabled"
  },
  "matchingConditions": {
    "sources": {
      "addresses": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallSourceIpAddress",
          "values": ["192.168.1.1", "192.168.0.0/16", "172.16.0.0-172.16.255.255"]
        }
      ],
      "ports": ["80", "443", "445-447"]
    },
    "destinations": {
      "addresses": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.cloudFirewallDestinationIpAddress",
          "values": ["10.0.0.1"]
        }
      ],
      "ports": ["80", "443", "445-447"],
      "protocols": "tcp"
    }
  }
}