Compartilhar via


Configurar Acesso à Internet do Microsoft Entra com as APIs do Microsoft Graph

Acesso à Internet do Microsoft Entra fornece uma solução de Gateway Web Seguro (SWG) centrada em identidades para aplicações De Software como Serviço (SaaS) e outro tráfego de Internet. Os administradores utilizam Acesso à Internet do Microsoft Entra para proteger utilizadores, dispositivos e dados do panorama de ameaças da Internet com os melhores controlos de segurança e visibilidade através dos registos de tráfego. Profundamente integrado com o Acesso Condicional Microsoft Entra ID, o SWG da Microsoft é centrado em identidades, facilitando a gestão da política da sua organização num único motor.

Neste tutorial, vai aprender a configurar Acesso à Internet do Microsoft Entra programaticamente com as APIs de acesso à rede do Microsoft Graph. O utilizador:

  • Crie políticas de filtragem de conteúdos Web para permitir ou bloquear o acesso a determinados destinos.
  • Alinhe as políticas de filtragem de conteúdos Web com as políticas de Acesso Condicional através de um contentor de perfil de filtragem, também conhecido como perfil de segurança.

Importante

Algumas operações de API neste tutorial utilizam o beta ponto final.

Pré-requisitos

Para concluir este tutorial, precisa de:

  • Um inquilino Microsoft Entra com a licença de Suíte do Microsoft Entra.
  • Um cliente de API, como o Graph Explorer com uma conta que tenha as funções de administrador suportadas. As seguintes funções de Microsoft Entra são as menos privilegiadas para as operações neste tutorial:
    • Administrador Global de Acesso Seguro para configurar as políticas de filtragem de conteúdo Web e perfis de filtragem.
    • Administrador de Acesso Condicional para configurar políticas de Acesso Condicional.
  • Permissões delegadas: NetworkAccess.Read.All, NetworkAccess.ReadWrite.All e Policy.ReadWrite.ConditionalAccess
  • Um utilizador de teste para atribuir à política de Acesso Condicional.
  • O cliente de Acesso Seguro Global (GSA) implementado nos dispositivos da sua organização.

Passo 1: Ativar o reencaminhamento de tráfego do Internet Access

Antes de configurar Acesso à Internet do Microsoft Entra políticas de filtragem, comece por implementar o cliente de Acesso Seguro Global (GSA) nos dispositivos da sua organização. Em seguida, comece a reencaminhar o tráfego para as localizações de limite GSA ao ativar o perfil de reencaminhamento do Internet Access.

Passo 1.1: Obter o perfil de reencaminhamento de tráfego do Internet Access

Registe o ID do perfil para utilização mais adiante neste tutorial.

Solicitação

GET https://graph.microsoft.com/beta/networkAccess/forwardingProfiles?$filter=trafficForwardingType eq 'internet'

Resposta

HTTP/1.1 200 OK
Content-type: application/json

{
  "trafficForwardingType": "internet",
  "priority": 2,
  "id": "bbbbbbbb-1111-2222-3333-cccccccccccc",
  "name": "Internet traffic forwarding profile",
  "description": "Default traffic forwarding profile for Internet traffic acquisition. Assign the profile to client or branch offices to acquire Internet traffic for Zero Trust Network Access.Internet traffic forwarding profile will exclude all endpoints defined in Microsoft 365 traffic forwarding profile.",
  "state": "enabled",
  "version": "1.0.0",
  "lastModifiedDateTime": "2025-01-14T13:11:57.9295327Z",
  "associations": [],
  "servicePrincipal": {
    "appId": "00001111-aaaa-2222-bbbb-3333cccc4444",
    "id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
  }
}

Passo 1.2: Ativar o estado do perfil de reencaminhamento do Internet Access

O pedido devolve uma 204 No Content resposta.

Solicitação

PATCH https://graph.microsoft.com/beta/networkAccess/forwardingProfiles/bbbbbbbb-1111-2222-3333-cccccccccccc
Content-type: application/json

{
  "state": "enabled"
}

Passo 2: Criar uma política de filtragem de conteúdo Web e um perfil de segurança

Para configurar políticas no Acesso à Internet do Microsoft Entra, primeiro tem de criar uma política de filtragem, que é uma coleção de regras que regem o acesso a destinos como categorias Web e Nomes de Domínio Completamente Qualificados (FQDNs). Por exemplo, pode criar uma política de filtragem com regras que bloqueiam o acesso à categoria Inteligência Artificial e FQDNs individuais. Em seguida, organiza as políticas de filtragem num perfil de segurança que pode direcionar com políticas de Acesso Condicional.

Passo 2.1: Criar uma política de filtragem de conteúdo Web

Neste exemplo, vai criar uma política de filtragem com regras que bloqueiam o acesso à categoria "Inteligência Artificial" e FQDNs para bing.com. Assim que esta política for criada, tome nota do ID da política de filtragem para ligar no perfil de filtragem.

Solicitação

POST https://graph.microsoft.com/beta/networkaccess/filteringPolicies
Content-type: application/json

{
  "name": "AI and Bing",
  "policyRules": [
    {
      "@odata.type": "#microsoft.graph.networkaccess.webCategoryFilteringRule",
      "name": "AI",
      "ruleType": "webCategory",
      "destinations": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.webCategory",
          "name": "ArtificialIntelligence"
        }
      ]
    },
    {
      "@odata.type": "#microsoft.graph.networkaccess.fqdnFilteringRule",
      "name": "bing FQDNs",
      "ruleType": "fqdn",
      "destinations": [
        {
          "@odata.type": "#microsoft.graph.networkaccess.fqdn",
          "value": "bing.com"
        },
        {
          "@odata.type": "#microsoft.graph.networkaccess.fqdn",
          "value": "*.bing.com"
        }
      ]
    }
  ],
  "action": "block"
}

Resposta

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

{
  "id": "cccccccc-2222-3333-4444-dddddddddddd",
  "name": "AI and Bing",
  "description": null,
  "version": "1.0.0",
  "lastModifiedDateTime": "2025-02-05T18:10:28.9760687Z",
  "createdDateTime": "2025-02-05T18:10:27Z",
  "action": "block"
}

Passo 2.2: Editar ou atualizar a política de filtragem de conteúdos Web

Depois de criar uma política de filtragem, pode editá-la ou atualizá-la programaticamente. Pode adicionar novas regras à política ao enviar um pedido POST ou atualizar destinos em regras existentes através de um pedido PATCH. Qualquer uma destas alterações permite-lhe ajustar as políticas de filtragem à medida que as necessidades da sua organização mudam, como bloquear mais categorias ou domínios ou modificar regras existentes.

Neste exemplo, vai utilizar um pedido PATCH para adicionar um destino à regra criada no passo 2.1.

Solicitação

POST https://graph.microsoft.com/beta/networkaccess/filteringPolicies('cccccccc-2222-3333-4444-dddddddddddd')/policyRules('<policyRuleId>')
Content-type: application/json

{
  "@odata.type": "#microsoft.graph.networkaccess.fqdnFilteringRule",
  "destinations": [
    {
      "@odata.type": "#microsoft.graph.networkaccess.fqdn",
      "value": "bing.com"
    },
    {
      "@odata.type": "#microsoft.graph.networkaccess.fqdn",
      "value": "*.bing.com"
    },
    {
      "@odata.type": "#microsoft.graph.networkaccess.fqdn",
      "value": "bing.co.uk"
    }
  ]
}

Resposta

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

{
  "@odata.type": "#microsoft.graph.networkaccess.fqdnFilteringRule",
  "id": "cccccccc-2222-3333-4444-dddddddddddd",
  "name": "bing FQDNs",
  "ruleType": "fqdn",
  "destinations": [
    {
        "@odata.type": "#microsoft.graph.networkaccess.fqdn",
        "value": "google.co.uk"
    },
    {
        "@odata.type": "#microsoft.graph.networkaccess.fqdn",
        "value": "google.com"
    },
    {
        "@odata.type": "#microsoft.graph.networkaccess.fqdn",
        "value": "bing.com"
    }
  ]
}

Passo 2.3: Criar um perfil de filtragem ou perfil de segurança

Crie um perfil de filtragem ou segurança para manter as políticas e direcioná-lo para o controlo de sessão de Acesso Condicional. Depois de criar o perfil, tenha em atenção o ID do perfil de filtragem para utilização posterior na política de Acesso Condicional.

Solicitação

POST https://graph.microsoft.com/beta/networkaccess/filteringProfiles
Content-type: application/json

{
  "name": "Security Profile for UserA",
  "state": "enabled",
  "priority": 100,
  "policies": []
}

Resposta

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

{
  "priority": 100,
  "createdDateTime": "2025-02-05T18:27:31Z",
  "id": "dddddddd-3333-4444-5555-eeeeeeeeeeee",
  "name": "Security Profile for UserA",
  "description": null,
  "state": "enabled",
  "version": "1.0.0",
  "lastModifiedDateTime": "2025-02-05T18:27:31.660891Z"
}

Solicitação

POST https://graph.microsoft.com/beta/networkaccess/filteringProfiles/dddddddd-3333-4444-5555-eeeeeeeeeeee/policies
Content-type: application/json

{
  "priority": 100,
    "state": "enabled",
    "@odata.type": "#microsoft.graph.networkaccess.filteringPolicyLink",
    "loggingState": "enabled",
    "policy": {
        "id": "cccccccc-2222-3333-4444-dddddddddddd",
        "@odata.type": "#microsoft.graph.networkaccess.filteringPolicy"
}

Resposta

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

{
    "id": "dddddddd-9999-0000-1111-eeeeeeeeeeee",
    "priority": 100,
    "state": "enabled",
    "version": "1.0.0",
    "loggingState": "enabled",
    "lastModifiedDateTime": "2025-02-05T18:31:32Z",
    "createdDateTime": "2025-02-05T18:31:32Z",
    "policy": {
        "@odata.type": "#microsoft.graph.networkaccess.filteringPolicy",
        "id": "cccccccc-2222-3333-4444-dddddddddddd",
        "name": "AI and Bing",
        "description": null,
        "version": "1.0.0",
        "lastModifiedDateTime": "2025-02-05T18:15:17.0759384Z",
        "createdDateTime": "2025-02-05T18:15:16Z",
        "action": "block"
    }
}

Para impor o seu perfil de filtragem, tem de o ligar a uma política de Acesso Condicional (AC). Ao fazê-lo, torna os conteúdos do seu perfil de filtragem de utilizador e de contexto conscientes. Neste passo, vai criar uma política de AC com as seguintes definições:

  • Direcione-o para um utilizador com o ID 00aa00aa-bb11-cc22-dd33-44ee44ee44ee e a aplicação "Todos os recursos da Internet com Acesso Seguro Global" com appId5dc48733-b5df-475c-a49b-fa307ef00853.
  • Configure um controlo de sessão com o ID globalSecureAccessFilteringProfile.dddddddd-9999-0000-1111-eeeeeeeeeeee

Solicitação

POST https://graph.microsoft.com/beta/identity/conditionalAccess/policies
Content-type: application/json

{
    "conditions": {
        "applications": {
            "includeApplications": [
                "5dc48733-b5df-475c-a49b-fa307ef00853"
            ]
        },
        "users": {
            "includeUsers": [
                "00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
            ]
        }
    },
    "displayName": "UserA Access to AI and Bing",
    "sessionControls": {
        "globalSecureAccessFilteringProfile": {
            "profileId": "dddddddd-9999-0000-1111-eeeeeeeeeeee",
            "isEnabled": true
        }
    },
    "state": "enabled"
}

Resposta

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

{
    "id": "9c5fbb22-30ff-4a17-9b83-ea9fbf2912a9",
    "templateId": null,
    "displayName": "UserA Access to AI and Bing",
    "createdDateTime": "2025-02-05T18:58:32.7622998Z",
    "modifiedDateTime": null,
    "state": "enabled",
    "grantControls": null,
    "partialEnablementStrategy": null,
    "conditions": {
        "userRiskLevels": [],
        "signInRiskLevels": [],
        "clientAppTypes": [
            "all"
        ],
        "platforms": null,
        "locations": null,
        "times": null,
        "deviceStates": null,
        "devices": null,
        "clientApplications": null,
        "applications": {
            "includeApplications": [
                "5dc48733-b5df-475c-a49b-fa307ef00853"
            ],
            "excludeApplications": [],
            "includeUserActions": [],
            "includeAuthenticationContextClassReferences": [],
            "applicationFilter": null
        },
        "users": {
            "includeUsers": [
                "00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
            ],
            "excludeUsers": [],
            "includeGroups": [],
            "excludeGroups": [],
            "includeRoles": [],
            "excludeRoles": [],
            "includeGuestsOrExternalUsers": null,
            "excludeGuestsOrExternalUsers": null
        }
    },
    "sessionControls": {
        "disableResilienceDefaults": null,
        "applicationEnforcedRestrictions": null,
        "cloudAppSecurity": null,
        "signInFrequency": null,
        "persistentBrowser": null,
        "continuousAccessEvaluation": null,
        "secureSignInSession": null,
        "globalSecureAccessFilteringProfile": {
            "profileId": "dddddddd-9999-0000-1111-eeeeeeeeeeee",
            "isEnabled": true
        }
    }
}

Conclusão

Agora que configurou um perfil de segurança ou um perfil de filtragem a bloquear a Inteligência Artificial e bing.com para o utilizador de exemplo, esse utilizador está impedido de aceder a esses sites.