Compartir a través de


Configuración de Acceso a Internet de Microsoft Entra mediante las API de Microsoft Graph

Acceso a Internet de Microsoft Entra proporciona una solución de puerta de enlace web segura (SWG) centrada en la identidad para aplicaciones de software como servicio (SaaS) y otro tráfico de Internet. Los administradores usan Acceso a Internet de Microsoft Entra para proteger a los usuarios, dispositivos y datos del amplio panorama de amenazas de Internet con los mejores controles de seguridad y visibilidad a través de los registros de tráfico. Profundamente integrado con Microsoft Entra ID acceso condicional, el SWG de Microsoft se centra en la identidad, lo que facilita a los administradores de TI administrar la directiva de su organización en un solo motor.

En este tutorial, aprenderá a configurar Acceso a Internet de Microsoft Entra mediante programación mediante las API de acceso a red de Microsoft Graph. Tú:

  • Cree directivas de filtrado de contenido web para permitir o bloquear el acceso a destinos determinados.
  • Alinee las directivas de filtrado de contenido web a las directivas de acceso condicional a través de un contenedor de perfiles de filtrado, también conocido como perfil de seguridad.

Importante

Algunas operaciones de API de este tutorial usan el punto de beta conexión.

Requisitos previos

Para completar este tutorial, necesita:

  • Un inquilino de Microsoft Entra con la licencia de Microsoft Entra Suite.
  • Un cliente de API, como Graph Explorer , con una cuenta que tenga los roles de administrador admitidos. Los siguientes roles de Microsoft Entra son los menos privilegiados para las operaciones de este tutorial:
    • Administrador de acceso seguro global para configurar las directivas de filtrado de contenido web y los perfiles de filtrado.
    • Administrador de acceso condicional para configurar directivas de acceso condicional.
  • Permisos delegados: NetworkAccess.Read.All, NetworkAccess.ReadWrite.All y Policy.ReadWrite.ConditionalAccess
  • Un usuario de prueba que se va a asignar a la directiva de acceso condicional.
  • El cliente de acceso seguro global (GSA) implementado en los dispositivos de la organización.

Paso 1: Habilitar el reenvío de tráfico de Acceso a Internet

Antes de configurar Acceso a Internet de Microsoft Entra directivas de filtrado, empiece por implementar el cliente de acceso seguro global (GSA) en los dispositivos de la organización. A continuación, empiece a reenviar el tráfico a ubicaciones perimetrales de GSA habilitando el perfil de reenvío de Acceso a Internet.

Paso 1.1: Recuperar el perfil de reenvío de tráfico de Internet Access

Registre el identificador del perfil para usarlo más adelante en este tutorial.

Solicitud

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

Respuesta

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"
  }
}

Paso 1.2: Habilitar el estado del perfil de reenvío de Acceso a Internet

La solicitud devuelve una 204 No Content respuesta.

Solicitud

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

{
  "state": "enabled"
}

Paso 2: Crear una directiva de filtrado de contenido web y un perfil de seguridad

Para configurar directivas en Acceso a Internet de Microsoft Entra, primero debe crear una directiva de filtrado, que es una colección de reglas que rigen el acceso a destinos como categorías web y nombres de dominio completos (FQDN). Por ejemplo, puede crear una directiva de filtrado con reglas que bloqueen el acceso a la categoría inteligencia artificial y a los FQDN individuales. A continuación, organiza las directivas de filtrado en un perfil de seguridad al que puede dirigirse con directivas de acceso condicional.

Paso 2.1: Crear una directiva de filtrado de contenido web

En este ejemplo, creará una directiva de filtrado con reglas que bloquean el acceso a la categoría "Inteligencia artificial" y fqdN para bing.com. Una vez creada esta directiva, tome nota del identificador de directiva de filtrado para vincularla en el perfil de filtrado.

Solicitud

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"
}

Respuesta

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"
}

Paso 2.2: Editar o actualizar la directiva de filtrado de contenido web

Después de crear una directiva de filtrado, puede editarla o actualizarla mediante programación. Para agregar nuevas reglas a la directiva, envíe una solicitud POST o actualice los destinos de las reglas existentes mediante una solicitud PATCH. Cualquiera de estos cambios le permite ajustar las directivas de filtrado a medida que cambian las necesidades de su organización, como el bloqueo de más categorías o dominios o la modificación de reglas existentes.

En este ejemplo, se usa una solicitud PATCH para agregar un destino a la regla creada en el paso 2.1.

Solicitud

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"
    }
  ]
}

Respuesta

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"
    }
  ]
}

Paso 2.3: Crear un perfil de filtrado o un perfil de seguridad

Cree un perfil de filtrado o de seguridad para contener las directivas y dirigirse a él en el control de sesión de acceso condicional. Después de crear el perfil, anote el identificador de perfil de filtrado para su uso posterior en la directiva de acceso condicional.

Solicitud

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

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

Respuesta

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"
}

Solicitud

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"
}

Respuesta

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 aplicar el perfil de filtrado, debe vincularlo a una directiva de acceso condicional (CA). Esto hace que el contenido del perfil de filtrado sea compatible con el usuario y el contexto. En este paso, creará una directiva de CA con la siguiente configuración:

  • Dirigirlo a un usuario con identificador 00aa00aa-bb11-cc22-dd33-44ee44ee44ee y la aplicación "Todos los recursos de Internet con acceso seguro global" con appId5dc48733-b5df-475c-a49b-fa307ef00853.
  • Configure un control de sesión con el identificador dddddddd-9999-0000-1111-eeeeeeeeeeeeglobalSecureAccessFilteringProfile .

Solicitud

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"
}

Respuesta

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
        }
    }
}

Conclusión

Ahora que ha configurado un perfil de seguridad o un perfil de filtrado que bloquea la inteligencia artificial y bing.com para el usuario de ejemplo, ese usuario no puede acceder a esos sitios.