Beispiele für die Erstellung und Konfiguration von Zugriffssteuerungslisten
In diesem Artikel finden Sie Beispiele zum Erstellen und Aktualisieren von Zugriffssteuerungslisten (Access Control Lists, ACLS).
Übersicht über den ACL-Erstellungsfluss
Das Erstellen einer Zugriffssteuerungsliste (Access Control List, ACL), die einer Network-to-Network Interconnect (NNI) zugeordnet ist, umfasst die folgenden Schritte:
Erstellen Sie eine Network Fabric-Ressource, und fügen Sie ihr eine untergeordnete NNI-Ressource hinzu.
Erstellen Sie ACL-Ressourcen mithilfe des
az networkfabric acl create
Befehls, und erstellen Sie ACL-Ressourcen. Sie können Übereinstimmungskonfigurationen und die Standardaktion für die ACL bereitstellen. Sie können auch dynamische Übereinstimmungskonfigurationen entweder inline oder in einer Datei bereitstellen, die in Ihrem Blob-Container für Ihr Azure-Speicherkonto gespeichert ist.Aktualisieren Sie die NNI-Ressource mit den Eingangs- und Ausgangs-ACL-IDs mithilfe des
az networkfabric nni update
Befehls. Sie müssen gültige ACL-Ressourcen-IDs in den--ingress-acl-id
und--egress-acl-id
Parametern angeben.Stellen Sie die Network Fabric-Ressource mithilfe des
az networkfabric fabric provision
Befehls bereit. Dadurch werden die Basiskonfiguration und die dynamische Übereinstimmungskonfiguration für die ACLs generiert und an die Geräte gesendet.
Übersicht über den ACL-Aktualisierungsfluss
Erstellen Sie ACL-Ressourcen mithilfe von Eingangs- und Ausgangsressourcen
az networkfabric acl create
, wie im vorherigen Abschnitt beschrieben.Aktualisieren Sie die Eingangs- oder Ausgangs-ACL mithilfe des
az networkfabric acl update
Befehls.Überprüfen Sie den Konfigurationsstatus der ACL.
accepted
Überprüfen Sie den Konfigurationsstatus des Fabric.
accepted
Führen Sie Fabric Commit aus, um die ACL zu aktualisieren.
Beispielbefehle
Zugriffssteuerungsliste in einer Netzwerk-zu-Netzwerkverbindung
In diesem Beispiel wird gezeigt, wie Sie einen NNI mit zwei ACLs erstellen– eine für den Ausgang und eine für den Ausgang.
Die ACLs müssen vor der Bereitstellung der Network Fabric angewendet werden. Diese Einschränkung ist temporär und wird in zukünftiger Version entfernt. Die Eingangs- und Ausgangs-ACLs werden vor der NNI-Ressource erstellt und beim Erstellen des NNI referenziert, wodurch auch die Erstellung der ACLs ausgelöst wird. Diese Konfiguration muss ausgeführt werden, bevor die Netzwerk fabric bereitgestellt wird.
Erstellen eines Eingangs-ACL: Beispielbefehl
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'}]}]"
Erstellen eines Ausgangs-ACL: Beispielbefehl
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']}]}]"
Zugriffssteuerungsliste für eine Isolation Standard externes Netzwerk
Verwenden Sie den az networkfabric acl create
Befehl, um Eingangs- und Ausgangs-ACLs für das externe Netzwerk zu erstellen. Im Beispiel geben wir die Ressourcengruppe, den Namen, den Standort, die Netzwerk fabric-ID, die externe Netzwerk-ID und andere Parameter an. Sie können auch die Übereinstimmungsbedingungen und Aktionen für die ACL-Regeln mithilfe der und --action
der --match
Parameter angeben.
Dieser Befehl erstellt einen Eingangs-ACL-Namen acl-ingress
, der ICMP-Datenverkehr von jeder Quelle zum externen Netzwerk zulässt:
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
Verwenden Sie den az networkfabric externalnetwork update
Befehl, um das externe Netzwerk mit der Ressourcengruppe, dem Namen und der Netzwerk fabric-ID zu aktualisieren. Sie müssen auch die Eingangs- und Ausgangs-ACL-IDs mithilfe der und --egress-acl-id
der --ingress-acl-id
Parameter angeben. Der folgende Befehl aktualisiert z. B. das externe Netzwerk, das benannt ext-net
ist, um auf den Eingangs-ACL-Namen acl-ingress
zu verweisen:
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
Weitere Beispielszenarien und Befehle
Um eine ACL für einen Ausgang für einen NNI zu erstellen, der den gesamten Datenverkehr außer HTTP und HTTPS verweigert, können Sie diesen Befehl verwenden:
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
Um eine vorhandene ACL zu aktualisieren, um eine neue Übereinstimmungsbedingung und -aktion hinzuzufügen, können Sie diesen Befehl verwenden:
az networkfabric acl update \
--name acl-ingress \
--resource-group myResourceGroup \
--match "ip protocol icmp" \
--action allow \
--append-match-configurations
Um alle ACLs in einer Ressourcengruppe auflisten zu können, können Sie diesen Befehl verwenden:
az networkfabric acl list --resource-group myResourceGroup
Um die Details einer bestimmten ACL anzuzeigen, können Sie diesen Befehl verwenden:
az networkfabric acl show \
--name acl-ingress \
--resource-group myResourceGroup
Um eine ACL zu löschen, können Sie diesen Befehl verwenden:
az networkfabric acl delete \
--name acl-egress \
--resource-group myResourceGroup