Partager via


Exemples de création et de configuration de liste de contrôle d’accès

Cet article fournit des exemples de création et de mise à jour des listes de contrôle d’accès (ACLS).

Vue d’ensemble du flux de création de liste de contrôle d’accès

La création d’une liste de contrôle d’accès (ACL) associée à une interconnexion réseau à réseau (NNI) implique les étapes suivantes :

  • Créez une ressource Network Fabric et ajoutez-y une ressource enfant NNI.

  • Créez des ressources ACL d’entrée et de sortie à l’aide de la az networkfabric acl create commande. Vous pouvez fournir des configurations de correspondance et l’action par défaut pour la liste de contrôle d’accès. Vous pouvez également fournir des configurations de correspondance dynamiques inline ou dans un fichier stocké dans votre conteneur d’objets blob de compte de stockage Azure.

  • Mettez à jour la ressource NNI avec les ID ACL d’entrée et de sortie à l’aide de la az networkfabric nni update commande. Vous devez fournir des ID de ressource ACL valides dans les paramètres et --egress-acl-id les --ingress-acl-id paramètres.

  • Provisionnez la ressource Network Fabric à l’aide de la az networkfabric fabric provision commande. Cela génère la configuration de base et la configuration de correspondance dynamique pour les listes de contrôle d’accès et les envoie aux appareils.

Vue d’ensemble du flux de mise à jour de la liste de contrôle d’accès

  • Créez des ressources az networkfabric acl create ACL d’entrée et de sortie comme décrit dans la section précédente.

  • Mettez à jour l’entrée ou l’ACL de sortie à l’aide de la az networkfabric acl update commande.

  • Vérifiez que l’état de configuration de la liste de contrôle d’accès est accepted.

  • Vérifiez que l’état de configuration de l’infrastructure est accepted.

  • Exécutez la validation Fabric pour mettre à jour la liste de contrôle d’accès.

Exemple de commandes

Liste de contrôle d’accès sur une interconnexion réseau à réseau

Cet exemple montre comment créer une NNI avec deux ACL : une pour l’entrée et une pour la sortie.

Les listes de contrôle d’accès doivent être appliquées avant l’approvisionnement de Network Fabric. Cette limitation est temporaire et sera supprimée dans la prochaine version. Les ACL d’entrée et de sortie sont créées avant la ressource NNI et référencées lors de la création de la NNI, ce qui déclenche également la création des listes de contrôle d’accès. Cette configuration doit être effectuée avant de provisionner l’infrastructure réseau.

Créer une liste de contrôle d’accès d’entrée : exemple de commande

az networkfabric acl create \
    --resource-group "example-rg"
    --location "eastus2euap" \
    --resource-name "example-Ipv4ingressACL" \
    --configuration-type "Inline" \
    --default-action "Permit" \
    --dynamic-match-configurations "[{ipGroups:[{name:'example-ipGroup',ipAddressType:IPv4,ipPrefixes:['10.20.3.1/20']}],vlanGroups:[{name:'example-vlanGroup',vlans:['20-30']}],portGroups:[{name:'example-portGroup',ports:['100-200']}]}]" \
    --match-configurations "[{matchConfigurationName:'example-match',sequenceNumber:123,ipAddressType:IPv4,matchConditions:[{etherTypes:['0x1'],fragments:['0xff00-0xffff'],ipLengths:['4094-9214'],ttlValues:[23],dscpMarkings:[32],portCondition:{flags:[established],portType:SourcePort,layer4Protocol:TCP,ports:['1-20']},protocolTypes:[TCP],vlanMatchCondition:{vlans:['20-30'],innerVlans:[30]},ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.20.20.20/12']}}],actions:[{type:Count,counterName:'example-counter'}]}]"

Créer une liste de contrôle d’accès de sortie : exemple de commande

az networkfabric acl create \
    --resource-group "example-rg" \
    --location "eastus2euap" \
    --resource-name "example-Ipv4egressACL" \
    --configuration-type "File" \
    --acls-url "https://ACL-Storage-URL" \
    --default-action "Permit" \
    --dynamic-match-configurations "[{ipGroups:[{name:'example-ipGroup',ipAddressType:IPv4,ipPrefixes:['10.20.3.1/20']}],vlanGroups:[{name:'example-vlanGroup',vlans:['20-30']}],portGroups:[{name:'example-portGroup',ports:['100-200']}]}]"

Liste de contrôle d’accès sur un réseau externe de domaine d’isolation

Utilisez la az networkfabric acl create commande pour créer des listes de contrôle d’accès d’entrée et de sortie pour le réseau externe. Dans l’exemple, nous spécifions le groupe de ressources, le nom, l’emplacement, l’ID de l’infrastructure réseau, l’ID de réseau externe et d’autres paramètres. Vous pouvez également spécifier les conditions et les actions de correspondance pour les règles de liste de contrôle d’accès à l’aide des paramètres et --action des --match paramètres.

Cette commande crée une liste de contrôle d’accès entrante nommée acl-ingress qui autorise le trafic ICMP de n’importe quelle source vers le réseau externe :

az networkfabric acl create \
    --resource-group myResourceGroup \
    --name acl-ingress \
    --location eastus \
    --network-fabric-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkFabrics/myNetworkFabric \
    --external-network-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/externalNetworks/ext-net \
    --match "ip protocol icmp" \
    --action allow

Utilisez la az networkfabric externalnetwork update commande pour mettre à jour le réseau externe avec le groupe de ressources, le nom et l’ID de l’infrastructure réseau. Vous devez également spécifier les ID d’entrée et de sortie DCL à l’aide des paramètres et --egress-acl-id des --ingress-acl-id paramètres. Par exemple, la commande suivante met à jour le réseau externe nommé ext-net pour référencer l’ACL d’entrée nommée acl-ingress:

az networkfabric externalnetwork update \
    --resource-group myResourceGroup \
    --name ext-net \
    --network-fabric-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkFabrics/myNetworkFabric \
    --ingress-acl-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/acls/acl-ingress

Autres exemples de scénarios et de commandes

Pour créer une liste de contrôle d’accès de sortie pour une NNI qui refuse tout le trafic, à l’exception de HTTP et HTTPS, vous pouvez utiliser cette commande :

az networkfabric acl create \
    --name acl-egress \
    --resource-group myResourceGroup \
    --nni-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkInterfaces/myNni \
    --match "ip protocol tcp destination port 80 or 443" \
    --action allow \
    --default-action deny

Pour mettre à jour une liste de contrôle d’accès existante pour ajouter une nouvelle condition et une action de correspondance, vous pouvez utiliser cette commande :

az networkfabric acl update \
    --name acl-ingress \
    --resource-group myResourceGroup \
    --match "ip protocol icmp" \
    --action allow \
    --append-match-configurations

Pour répertorier toutes les ACL d’un groupe de ressources, vous pouvez utiliser cette commande :

az networkfabric acl list --resource-group myResourceGroup

Pour afficher les détails d’une liste de contrôle d’accès spécifique, vous pouvez utiliser cette commande :

az networkfabric acl show \
    --name acl-ingress \
    --resource-group myResourceGroup

Pour supprimer une liste de contrôle d’accès, vous pouvez utiliser cette commande :

az networkfabric acl delete \
    --name acl-egress \
    --resource-group myResourceGroup