Network policy advisor

Vue d’ensemble

Les politiques réseau de Snowflake sont un puissant contrôle de sécurité, mais elles peuvent être difficiles à concevoir correctement, en particulier lorsqu’aucune politique actuelle n’existe ou lorsque les modèles de trafic sont complexes.

Le Network Policy Advisor est une procédure par étapes qui guide un administrateur de sécurité, c’est-à-dire un utilisateur disposant du rôle SECURITYADMIN, dans la création d’une proposition recommandée de politique de réseau d’entrée, basée sur les données historiques d’accès en entrée. En tant qu’administrateur, vous évaluez ensuite la politique recommandée à l’aide d’une simulation de scénario avant de l’activer. Vous pouvez recommander et évaluer une politique réseau pour un utilisateur ou pour tous les utilisateurs d’un compte. Cette procédure implique l’appel de deux procédures stockées système non perturbatrices. Ces procédures génèrent du code SQL lisible par l’utilisateur ainsi que des résultats d’évaluation que vous pouvez examiner, affiner, puis appliquer manuellement.

Considérations

Le Snowflake Network Policy Advisor n’active pas ou ne modifie pas automatiquement les politiques réseau existantes. Il ne détermine pas si une adresse IP est correcte ou sûre pour votre environnement réseau. La procédure fournit uniquement des recommandations et des simulations. Toute décision finale en matière de politique réseau, c’est-à-dire toute modification des règles et politiques réseau existantes, reste de la responsabilité du client.

Avantages clés

Le Network Policy Advisor offre les avantages clés suivants :

  • Permet de concevoir en toute sécurité une première politique réseau.

  • Permet de voir quel trafic serait bloqué avant que la mesure ne soit appliquée.

  • Réduit les essais et les erreurs lors du renforcement des contrôles de sécurité.

  • Prend en charge les workflows itératifs d’affinage et de validation.

Exigences en matière de contrôle d’accès

Un utilisateur doit disposer du rôle SECURITYADMIN au minimum pour exécuter ces procédures stockées.

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.

Générer et évaluer une politique réseau candidate

Pour générer et évaluer une politique réseau candidate pour un compte, connectez-vous à Snowsight, ouvrez une feuille de calcul et procédez comme suit :

  1. Générez la syntaxe SQL d’une politique candidate en appelant la procédure RECOMMEND_NETWORK_POLICY.

    USE ROLE SECURITYADMIN;
    
    CALL SNOWFLAKE.NETWORK_SECURITY.RECOMMEND_NETWORK_POLICY(
      LOOKBACK_DAYS => 30,
      );
    
  2. Examinez la syntaxe SQL générée à l’étape précédente.

  3. À partir de votre analyse, créez une règle et une politique réseau candidate en exécutant des commandes similaires aux exemples suivants.

    USE ROLE SECURITYADMIN;
    
    -- Create a network rule
    CREATE OR REPLACE NETWORK RULE my_ingress_rule
      MODE = INGRESS
      TYPE = IPV4
      VALUE_LIST = ('203.0.113.0/24', ...);
    
    -- Create a network policy
    CREATE OR REPLACE NETWORK POLICY my_ingress_policy
      ALLOWED_NETWORK_RULE_LIST = ('my_ingress_rule');
    
  4. Exécutez la procédure EVALUATE_CANDIDATE_NETWORK_POLICY sur la politique candidate pour simuler quelles adresses IP elle autoriserait ou bloquerait.

    USE ROLE SECURITYADMIN;
    
    CALL SNOWFLAKE.NETWORK_SECURITY.EVALUATE_CANDIDATE_NETWORK_POLICY(
      POLICY_NAME => 'my_ingress_policy'
      );
    
  5. Analysez la sortie pour confirmer quelles adresses IP seraient autorisées ou bloquées par la politique candidate recommandée.

  6. Affinez la politique candidate sur la base des résultats de l’évaluation.

    Par exemple, vous pouvez ajouter des règles pour autoriser les adresses IPs légitimes qui ont été bloquées et supprimer les règles pour les adresses IPs non autorisées qui ont été autorisées.

  7. Si nécessaire, réévaluez la politique candidate en exécutant à nouveau la procédure EVALUATE_CANDIDATE_NETWORK_POLICY et en définissant la politique réseau candidate jusqu’à ce qu’elle renvoie un résultat acceptable.

  8. (Facultatif) Après avoir déterminé que la politique candidate fonctionne correctement, activez-la :

    ALTER ACCOUNT SET NETWORK_POLICY = 'my_ingress_policy';
    
  9. (Facultatif) Exécutez une requête comme celle-ci pour afficher l’historique du trafic d’entrée dans votre réseau :

    USE ROLE ACCOUNTADMIN;
    
    SELECT *
      FROM SNOWFLAKE.ACCOUNT_USAGE.INGRESS_NETWORK_ACCESS_HISTORY
      LIMIT 100;