CREATE NETWORK RULE¶
Erstellt eine Netzwerkregel oder ersetzt eine bestehende.
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>' ]
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 ParameterMODE
aufEGRESS
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 EigenschaftTYPE
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
undTYPE=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:
Der Kontoadministrator muss den Parameter ENFORCE_NETWORK_RULES_FOR_INTERNAL_STAGES aktivieren.
Die Eigenschaft
TYPE
der Netzwerkregel mussAWSVPCEID
sein.
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 Bereich192.168.1.0
bis192.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';
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';
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');