Pour contrôler précisément les droits d'accès des utilisateurs aux services, configurez une liste noire ou une liste blanche dans les politiques de sécurité correspondantes de Service Mesh (ASM). Les listes noires et les listes blanches sont des mécanismes d'autorisation courants qui interdisent ou autorisent l'accès des requêtes spécifiées aux applications. ASM vous permet de configurer ces listes afin de contrôler le trafic est-ouest et le trafic nord-sud selon plusieurs dimensions, telles que les adresses IP, les noms de domaine HTTP et les ports. Cela garantit la sécurité des applications dans ASM. Cette rubrique explique comment configurer une liste noire pour le trafic est-ouest dans une politique de sécurité ASM.
Prérequis
Une passerelle d'entrée est déployée et son adresse IP a été obtenue. Pour plus d'informations, consultez la section Créer une passerelle d'entrée.
Une application est déployée dans le cluster ajouté à l'instance ASM.
Une passerelle Istio et un service virtuel ont été créés. L'URL http://${IP address of the ingress gateway}/productpage est accessible. Pour plus d'informations, reportez-vous aux étapes 1 à 3 de la section Utiliser les ressources Istio pour router le trafic vers différentes versions d'un service.
Procédure
Connectez-vous à la console ASM. Dans le volet de navigation de gauche, sélectionnez .
Sur la page Mesh Management, cliquez sur le nom de l'instance ASM. Dans le volet de navigation de gauche, sélectionnez .
Sur la page ASMSecurityPolicy, cliquez sur Create. Dans la boîte de dialogue Create ASMSecurityPolicy, cliquez sur Black/White List puis sur OK.
-
À l'étape Workload and Match Rules de l'assistant de configuration, définissez les paramètres suivants, puis cliquez sur Submit.
Paramètre
Description
ASMSecurityPolicyName
Définissez le nom sur test.
Workload List
-
Cliquez sur Add Workload.
-
Dans la boîte de dialogue Add Workload, cochez la case Workload Scope. Définissez le paramètre Namespaces sur default et le paramètre Workload Type sur Service.
-
Dans la section Select workloads, sélectionnez productpage, cliquez sur l'icône
pour ajouter la charge de travail sélectionnée à la section selected, puis cliquez sur OK.
Match Rule List
Définissez le paramètre Match Mode sur Black List, activez l'interrupteur Port et saisissez 9080. Cette configuration refuse toutes les requêtes adressées au port 9080 du pod productpage.
Une fois la politique créée, l'assistant de configuration affiche le message ASM security policy created successfully à l'étape Complete. Cliquez sur View YAML pour afficher le fichier YAML de la ressource, ou sur Complete pour revenir à la page ASMSecurityPolicy et consulter la nouvelle politique de sécurité.
-
-
Exécutez la commande suivante pour vérifier si les configurations de la liste noire prennent effet :
curl ${ASM_GATEWAY_IP}/productpage -IRésultat attendu :
HTTP/1.1 403 Forbidden content-length: 19 content-type: text/plain date: Fri, 22 Dec 2023 03:07:26 GMT server: istio-envoy x-envoy-upstream-service-time: 10Le système renvoie une réponse HTTP
403. Cela indique que vous ne disposez pas des autorisations nécessaires pour accéder à l'application productpage, ce qui confirme que la liste noire est effective.
Références
Pour plus d'informations sur les concepts et les fonctionnalités des politiques de sécurité ASM, consultez la section Présentation des politiques de sécurité ASM.
Activez la fonctionnalité d'audit de maillage pour enregistrer ou tracer les opérations quotidiennes des différents utilisateurs. Vous pouvez également configurer des alertes d'audit pour les opérations effectuées sur les ressources ASM et envoyer des notifications d'alerte aux contacts concernés dès qu'une modification importante intervient sur les ressources critiques. Pour plus d'informations, consultez les sections Utiliser la fonctionnalité d'audit des opérations KubeAPI dans ASM et Configurer des alertes d'audit pour les opérations sur les ressources ASM.