Partager via


Restreindre l’accès sortant à partir de votre cluster Azure Data Explorer

La restriction de l’accès sortant de votre cluster est importante pour atténuer les risques comme l’exfiltration des données. Un acteur malveillant pourrait créer une table externe dans un compte de stockage et extraire de grandes quantités de données. Vous pouvez contrôler l’accès sortant au niveau du cluster en activant l’accès sortant restreint et en configurant soit des listes d’autorisation basées sur des FQDN soit des stratégies d'appel.

Important

Vous pouvez configurer soit la liste blanche basée sur le FQDN, soit les stratégies de légende pour l’accès sortant restreint. La configuration des deux entraîne une erreur.

Protection contre l’exfiltration des données

L’exfiltration des données est une préoccupation importante pour les entreprises, en particulier lorsque des données sensibles ou propriétaires sont stockées dans des clusters. Sans contrôles appropriés, les acteurs malveillants ou les systèmes mal configurés peuvent potentiellement transférer des données vers des destinations externes non autorisées.

La fonctionnalité d’accès sortant restreint permet d’atténuer ce risque en vous permettant de :

  • Restreindre le trafic sortant : empêchez les transferts de données non autorisés en bloquant tout le trafic sortant, sauf pour les destinations explicitement autorisées.
  • Contrôler l’accès avec des listes d’autorisation basées sur le nom de domaine complet : spécifiez les noms de domaine complets (FQDN) exacts auxquels le cluster peut communiquer, ce qui garantit que les données sont envoyées uniquement aux points de terminaison approuvés.
  • Appliquer des stratégies de rappel : définissez des règles granulaires pour des types spécifiques de trafic sortant, tels que des appels de données SQL ou externes, pour autoriser ou refuser l’accès en fonction des exigences de sécurité de votre organisation.

En implémentant un accès sortant restreint, les entreprises peuvent s’assurer que leurs clusters Azure Data Explorer sont protégés contre les risques d’exfiltration des données, en s’alignant sur les normes de conformité et de sécurité.

Activer ou désactiver l’accès sortant restreint

Vous pouvez activer ou désactiver l’accès sortant restreint au niveau de la couche ARM en configurant la propriété dans le restrictOutboundNetworkAccess modèle ARM de votre cluster.

Une fois que l’accès sortant restreint est activé, vous ne pouvez pas apporter de modifications à la stratégie de légende à l’aide des commandes de stratégie de cluster .alter ou .alter-merge. Pour apporter des modifications à la stratégie d'alerte, mettez à jour la propriété allowedFqdnList ou la propriété allowedCallout dans le modèle ARM ou à l’aide de l'Azure CLI.

Exemple : Activer l’accès sortant restreint

Le modèle ARM suivant active l’accès sortant restreint pour votre cluster :

Dans l’exemple suivant, remplacez <ClusterName> et <ClusterRegion> par vos propres valeurs.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.Kusto/Clusters",
      "apiVersion": "2021-02-01",
      "name": "<ClusterName>",
      "location": "<ClusterRegion>",
      "properties": {
        "restrictOutboundNetworkAccess": "Enabled"
      }
    }
  ]
}

Exemple : Désactiver l’accès sortant restreint

Pour désactiver l’accès sortant restreint, définissez la restrictOutboundNetworkAccess propriété sur Disabled:

Dans l’exemple suivant, remplacez <ClusterName> et <ClusterRegion> par vos propres valeurs.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.Kusto/Clusters",
      "apiVersion": "2021-02-01",
      "name": "<ClusterName>",
      "location": "<ClusterRegion>",
      "properties": {
        "restrictOutboundNetworkAccess": "Disabled"
      }
    }
  ]
}

Exemple : Activer l’accès sortant restreint à l’aide du portail Azure

  1. Accédez à votre cluster dans le portail Azure .

  2. Accédez à Sécurité + réseaux>Réseaux>Restreindre l'accès sortant.

  3. Sélectionnez Activé pour activer l’accès sortant restreint.

    Capture d’écran de la page de configuration réseau montrant la configuration d’accès sortant restreint sans noms de domaine complets configurés.

  4. Sélectionnez Enregistrer pour envoyer la configuration.

Configurer des listes d’autorisation basées sur un nom de domaine complet

Lorsque l'accès sortant restreint est activé, vous pouvez autoriser des noms de domaine complets (FQDN) spécifiques en les ajoutant à la propriété allowedFqdnList de votre modèle ARM de cluster.

Exemple : Autoriser des noms de domaine complets spécifiques à l’aide de modèles ARM

Le modèle ARM suivant autorise l’accès sortant à des noms de domaine complets spécifiques tout en gardant l’accès sortant restreint activé :

Dans l’exemple suivant, remplacez <ClusterName> et <ClusterRegion> par vos propres valeurs.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.Kusto/Clusters",
      "apiVersion": "2021-02-01",
      "name": "<ClusterName>",
      "location": "<ClusterRegion>",
      "properties": {
        "restrictOutboundNetworkAccess": "Enabled",
        "allowedFqdnList": [
          "example.sql.azuresynapse.net",
          "example.blob.core.windows.net"
        ]
      }
    }
  ]
}

Exemple : Autoriser des noms de domaine complets spécifiques à l’aide du portail Azure

  1. Accédez à votre cluster dans le portail Azure .

  2. Accédez à Sécurité + réseaux>Réseaux>Restreindre l'accès sortant.

  3. Sélectionnez Activé pour activer l’accès sortant restreint et configurer les noms de domaine complets.

    Capture d’écran de la page de configuration réseau montrant la configuration de l’accès sortant restreint avec les noms de domaine complets configurés.

  4. Sélectionnez Enregistrer pour envoyer la configuration.

Configurer des stratégies de rappel (aperçu)

Vous pouvez également configurer des stratégies de légende directement dans le modèle ARM ou à l’aide d’Azure CLI. Les stratégies d'appel vous permettent de définir des règles spécifiques pour l’accès sortant à SQL, au stockage ou à d’autres points de terminaison.

Remarque

Vous ne pouvez pas configurer de stratégies de légende avec des restrictions d’accès sortant directement depuis le portail Azure.

Exemple : Configurer des politiques d'appel à l’aide d’un modèle ARM

Le modèle ARM suivant configure les stratégies de légende ainsi que l’accès sortant restreint :

Dans l’exemple suivant, remplacez <ClusterName> et <ClusterRegion> par vos propres valeurs.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.Kusto/Clusters",
      "apiVersion": "2021-02-01",
      "name": "<ClusterName>",
      "location": "<ClusterRegion>",
      "properties": {
        "restrictOutboundNetworkAccess": "Enabled",
        "calloutPolicies": [
          {
            "calloutType": "sql",
            "calloutUriRegex": "[a-z0-9][a-z0-9\\-]{0,61}[a-z0-9]?\\.database\\.windows\\.net/?$",
            "outboundAccess": "Allow"
          },
          {
            "calloutType": "external_data",
            "calloutUriRegex": ".*",
            "outboundAccess": "Deny"
          }
        ]
      }
    }
  ]
}

Exemple : Configurer des stratégies d'appel à l’aide d’Azure CLI

Vous pouvez également configurer des stratégies de légende l’aide d’Azure CLI. La commande suivante définit les stratégies d'appel d’un cluster :

Dans l’exemple suivant, remplacez <ResourceGroupName et >ClusterName<> par vos propres valeurs.

az resource update --resource-group <ResourceGroupName> \
  --name <ClusterName> \
  --resource-type Microsoft.Kusto/clusters \
  --set properties.calloutPolicies='[
  {
    "calloutType": "sql",
    "calloutUriRegex": "sqlname\\.database\\.azure\\.com/?$",
    "outboundAccess": "Allow"
  }
]'

Vérifier l’accès sortant restreint et les stratégies

Après avoir activé l’accès sortant restreint ou configuré des stratégies d'appels sortants, vous pouvez vérifier la configuration en exécutant la commande de gestion suivante dans l’interface Web utilisateur d’Azure Data Explorer :

.show cluster policy callout

Cette commande affiche les politiques de notification actuelles et les noms de domaine pleinement qualifiés (FQDN) autorisés.

Remarque

Il existe des stratégies par défaut définies pour qu’un cluster communique avec sa couche de stockage interne, ce qui n’expose aucun risque d’exfiltration de données.

Limites

Bien que l’accès sortant restreint offre une sécurité robuste, il est important de connaître certaines limitations :

  • Les listes d’autorisation basées sur des noms de domaine complets ne prennent pas en charge les légendes webapi.
  • Vous pouvez configurer soit des listes d’autorisation basées sur un nom de domaine complet, soit des stratégies de légende, mais pas les deux. La tentative de configuration des deux entraîne une erreur de configuration.
  • Les clusters ont un ensemble de stratégies par défaut pour la communication interne avec sa couche de stockage. Ces stratégies ne peuvent pas être modifiées et ne présentent pas de risque pour l’exfiltration des données.
  • Vous ne pouvez pas configurer de stratégies de légende avec des restrictions d’accès sortant directement depuis le portail Azure.