CREATE NETWORK RULE

Erstellt eine Netzwerkregel oder ersetzt eine bestehende.

Siehe auch:

ALTER NETWORK RULE, DROP NETWORK RULE, SHOW NETWORK RULES, DESCRIBE NETWORK RULE

Syntax

CREATE [ OR REPLACE ] NETWORK RULE <name>
   TYPE = { IPV4 | AWSVPCEID | AZURELINKID | HOST_PORT }
   VALUE_LIST = ( '<value>' [, '<value>', ... ] )
   MODE = { INGRESS | INTERNAL_STAGE | EGRESS }
   [ COMMENT = '<string_literal>' ]
Copy

Erforderliche Parameter

name

Bezeichner für die Netzwerkregel.

Der Bezeichnerwert muss mit einem alphabetischen Zeichen beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. "My object"). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist die Groß-/Kleinschreibung zu beachten.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

TYPE = { IPV4 | AWSVPCEID | AZURELINKID | HOST_PORT }

Gibt den Typ der Netzwerkbezeichner an, die zugelassen oder blockiert werden. Eine Netzwerkregel kann nur einen Typ haben.

  • IPV4 gibt an, dass die Netzwerkregel den Netzwerkdatenverkehr auf der Grundlage der IPv4-Adresse des Ursprungs der Anfrage zulässt oder blockiert.

  • AWSVPCEID gibt an, dass die Netzwerkregel den Netzwerkdatenverkehr über AWS PrivateLink zulässt oder blockiert.

  • AZURELINKID gibt an, dass die Netzwerkregel Netzwerkdatenverkehr über Azure Private Link zulässt oder blockiert.

  • HOST_PORT gibt an, dass die Netzwerkregel ausgehenden Netzwerkdatenverkehr auf der Grundlage der Domäne des Anfrageziels zulässt.

    Bei TYPE = HOST_PORT sollte der Parameter MODE auf EGRESS gesetzt werden.

VALUE_LIST = ( 'value' [, 'value', ... ] )

Gibt die Netzwerkbezeichner an, die zugelassen oder blockiert werden sollen.

Gültige Werte in der Liste werden durch den Typ der Netzwerkregel bestimmt:

  • Bei TYPE = IPV4 muss jeder Wert eine gültige IPv4-Adresse oder Adressbereich sein.

  • Bei TYPE = AWSVPCEID muss jeder Wert eine gültige VPCE-ID eines AWS S3-Endpunktes sein. VPC-IDs werden nicht unterstützt.

  • Bei TYPE = AZURELINKID muss jeder Wert eine gültige LinkID eines privaten Azure-Endpunkts sein. Führen Sie die Funktion SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS aus, um die mit einem Konto verbundene LinkID abzurufen.

  • Bei TYPE = HOST_PORT muss jeder Wert eine gültige Domäne sein. Optional kann er auch einen Port oder einen Bereich von Ports enthalten.

    Der gültige Portbereich ist 1–65.535. Wenn Sie keinen Port angeben, wird dieser standardmäßig auf 443 gesetzt. Wenn ein externer Netzwerkstandort dynamische Ports unterstützt, müssen Sie alle möglichen Ports angeben.

    Um den Zugriff auf alle Ports zu erlauben, definieren Sie den Port als 0. Beispiel: company.com:0.

MODE = { INGRESS | INTERNAL_STAGE | EGRESS }

Gibt an, was durch die Netzwerkregel eingeschränkt wird.

INGRESS

Das Verhalten im Modus INGRESS hängt vom Wert der Eigenschaft TYPE der Netzwerkregel ab.

  • Bei TYPE=IPV4 kontrolliert die Netzwerkregel standardmäßig nur den Zugriff auf den Snowflake-Dienst.

    Wenn der Kontoadministrator den Parameter ENFORCE_NETWORK_RULES_FOR_INTERNAL_STAGES aktiviert, dann schützen MODE=INGRESS und TYPE=IPV4 auch einen internen AWS-Stagingbereich.

  • Bei TYPE=AWSVPCEID kontrolliert die Netzwerkregel nur den Zugriff auf den Snowflake-Dienst.

INTERNAL_STAGE

Erlaubt oder blockiert Anfragen an einen internen AWS-Stagingbereich, ohne den Zugriff auf den Snowflake-Dienst einzuschränken. Die Verwendung dieses Modus erfordert Folgendes:

EGRESS

Ermöglicht Snowflake, Anfragen an ein externes Ziel zu senden.

Standard: INGRESS

Optionale Parameter

COMMENT = 'string_literal'

Gibt einen Kommentar für die Netzwerkregel an.

Standard: Kein Wert

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:

Berechtigung

Objekt

Anmerkungen

CREATE NETWORK RULE

Schema

Nur die Rollen ACCOUNTADMIN und SECURITYADMIN sowie der Schemaeigentümer haben standardmäßig diese Berechtigung. Sie kann je nach Bedarf weiteren Rollen erteilt werden.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.

Nutzungshinweise

  • Bei der Angabe von IP-Adressen für eine Netzwerkregel unterstützt Snowflake Bereiche von IP-Adressen unter Verwendung der Classless Inter-Domain Routing (CIDR)-Notation.

    So stellt beispielsweise 192.168.1.0/24 alle IPv4-Adressen im Bereich 192.168.1.0 bis 192.168.1.255 dar.

  • Metadaten:

    Achtung

    Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

Beispiele

Erstellen Sie eine Netzwerkregel, mit der der Datenverkehr von einem AWS S3-Endpunkt zum internen Stagingbereich zugelassen oder blockiert wird:

CREATE NETWORK RULE corporate_network
  TYPE = AWSVPCEID
  VALUE_LIST = ('vpce-123abc3420c1931')
  MODE = INTERNAL_STAGE
  COMMENT = 'corporate privatelink endpoint';
Copy

Erstellen Sie eine Netzwerkregel, mit der der Datenverkehr von einem Bereich von IP-Adressen zum Snowflake-Dienst und zum internen Stagingbereich zugelassen oder blockiert wird:

CREATE NETWORK RULE cloud_network
  TYPE = IPV4
  VALUE_LIST = ('47.88.25.32/27')
  COMMENT ='cloud egress ip range';
Copy

Erstellen Sie eine Netzwerkregel, die eine Kombination aus Domäne und Domäne/Port zulässt, wenn Snowflake Anforderungen an externe Ziele sendet:

CREATE NETWORK RULE external_access_rule
  TYPE = HOST_PORT
  MODE = EGRESS
  VALUE_LIST = ('example.com', 'company.com:443');
Copy