OAuth-Authentifizierung: Änderung der Verhaltensweise von Netzwerkrichtlinien (Verschoben)¶
Bemerkung
Diese Verhaltensänderung war Teil des Bundles 2025_06, die Änderung wurde aber verschoben. Die Änderung wird in einem zukünftigen Bundle eingeführt. Die Änderung ist nicht zum Testen verfügbar.
Wenn diese Verhaltensänderung aktiviert ist, gibt es Änderungen an Snowflake OAuth und External OAuth in Bezug auf die Frage, wie Snowflake Netzwerkrichtlinien zur Beschränkung des eingehenden Datenverkehrs von Clients und Endbenutzenden erzwingt.
Snowflake-OAuth-Authentifizierung: Änderung der Netzwerkrichtlinie, die für eine Anfrage vom Client an Snowflake verwendet wird¶
Snowflake OAuth ermöglicht die Verwendung einer Netzwerkrichtlinie, um den Netzwerkdatenverkehr vom OAuth-Client und von der benutzenden Person, die sich authentifiziert, zu beschränken. Es kann drei verschiedene Netzwerkrichtlinien geben, die diesen Datenverkehr einschränken:
Eine Netzwerkrichtlinie, die die Anforderungen vom OAuth-Client steuert. Diese Netzwerkrichtlinie ist mit der Sicherheitsintegration verknüpft, die es dem Client ermöglicht, mit Snowflake zu interagieren.
Eine Netzwerkrichtlinie, die die Anforderungen des Benutzenden steuert, der sich authentifiziert. Diese Netzwerkrichtlinie ist dem Benutzenden zugeordnet.
Eine Netzwerkrichtlinie auf Kontoebene, die gilt, wenn es keine Netzwerkrichtlinie auf Integrations- oder Benutzerebene gibt.
Diese Verhaltensänderung wirkt sich darauf aus, welche Netzwerkrichtlinie für eine Anforderung des OAuth-Clients an Snowflake gilt. Die folgende Abbildung zeigt die Anforderung, die von der Änderung betroffen ist:
- Vor der Änderung:
Für eine Anforderung, die ein Zugriffstoken vom OAuth-Client an Snowflake als Ressourcenserver sendet, gilt die Netzwerkrichtlinie auf Benutzerebene und nicht die Netzwerkrichtlinie auf Integrationsebene.
- Nach der Änderung:
Die Netzwerkrichtlinie auf Integrationsebene, falls angegeben, steuert eine Anforderung, die ein Zugriffstoken vom OAuth-Client an Snowflake als Ressourcenserver sendet. Wenn es keine Netzwerkrichtlinie auf Integrationsebene gibt, gilt die Netzwerkrichtlinie auf Kontoebene.
Die Netzwerkrichtlinien, die andere Anforderungen an Snowflake regeln, haben sich nicht geändert:
Benutzerautorisierungs- und Benutzerzustimmungsanfragen, die vom Benutzenden an Snowflake gesendet werden, unterliegen weiterhin der Netzwerkrichtlinie auf Benutzerebene, sofern diese angegeben ist.
Die vom OAuth-Client an Snowflake gesendete Zugriffstoken-Anforderung wird weiterhin von der Netzwerkrichtlinie auf Integrationsebene geregelt, falls angegeben.
Externer OAuth: Netzwerkrichtlinien auf Integrationsebene haben Vorrang¶
Wenn dieses Bundle aktiviert ist, können Sie eine Netzwerkrichtlinie mit einer externen OAuth-Sicherheitsintegration verknüpfen. Bisher konnte nur eine Snowflake-OAuth-Sicherheitsintegration mit einer Netzwerkrichtlinie verknüpft werden.
Im Rahmen dieser Änderung berücksichtigt Snowflake bei der Einschränkung des Netzwerkdatenverkehrs vom OAuth-Client keine Netzwerkrichtlinien auf Benutzerebene mehr. Snowflake wird diese Änderung schrittweise gemäß dem folgenden Zeitplan durchsetzen:
Wenn die Änderung standardmäßig aktiviert ist, berücksichtigt Snowflake die Netzwerkrichtlinie auf Benutzerebene und die Netzwerkrichtlinie auf Integrationsebene bei der Einschränkung von Anforderungen vom OAuth-Client.
Um Ausfälle während dieses Zeitraums zu vermeiden, fügen Sie der Sicherheitsintegration die aktuelle Netzwerkrichtlinie auf Benutzerebene hinzu. Der folgende Code zeigt Ihnen, wie Sie die den Benutzenden zugewiesen Netzwerkrichtlinie ermitteln, und können dann dieselbe Richtlinie der Integration zuweisen.
Suchen Sie die Netzwerkrichtlinie, die den Benutzenden zugeordnet ist:
SHOW PARAMETERS LIKE 'network_policy' IN USER <user_name>;
Verbinden Sie die vom vorangegangenen Befehl zurückgegebene Netzwerkrichtlinie mit der External OAuth-Sicherheitsintegration:
ALTER SECURITY INTEGRATION <external_oauth_integration_name> SET NETWORK_POLICY = <network_policy_attached_to_user>;
Wenn die Änderung allgemein aktiviert ist, hat eine Netzwerkrichtlinie auf Benutzerebene keine Auswirkungen auf Anfragen vom OAuth-Client an Snowflake. Snowflake prüft diese -Anforderungen anhand der Netzwerkrichtlinie auf Integrationsebene und überprüft dann die Richtlinie auf Kontoebene. Da die Netzwerkrichtlinie auf Benutzerebene keine Wirkung hat, sollten Sie sie von den Benutzenden entfernen, indem Sie den folgenden Befehl ausführen:
ALTER USER <user_name> UNSET NETWORK_POLICY;
Ref: 2094