Einrichten des externen Zugriffs für Snowflake Notebooks¶
Wenn Sie mit Notebooks arbeiten, müssen Sie möglicherweise externe Dienste aufrufen, für die oft sensible Anmeldeinformationen wie API-Schlüssel erforderlich sind. Um sensible Informationen zu schützen, können Sie in Snowflake verwaltete Geheimnisse verwenden, anstatt Anmeldeinformationen in Ihrem Notebook zu codieren.
Externe Zugriffsintegrationen (EAIs) werden über Netzwerkregeln konfiguriert und können optional Snowflake-Geheimnisse zur Authentifizierung verwenden.
Standardmäßig schränkt Snowflake den Datenverkehr von externen Endpunkten im Netzwerk ein. Um auf externe Endpunkte zuzugreifen, gehen Sie folgendermaßen vor:
Eine Netzwerkregel erstellen.
Erstellen Sie eine externe Netzwerkzugriffsintegration, die diese Regel verwendet.
Erstellen Sie ein Geheimnis für die Authentifizierung (falls erforderlich). Generische Zeichenfolgen-Geheimnisse erfordern ebenfalls eine EAI.
Verbinden Sie das Geheimnis mit der EAI.
Verknüpfen Sie EAI und das Geheimnis mit dem Notebook.
Bemerkung
EAIs und Netzwerkregeln müssen von einem Administrator der Organisation erstellt werden. Für erforderliche Berechtigungen siehe Anforderungen an die Zugriffssteuerung.
Konfigurieren Sie ein Notebook mit externem Zugriff und Geheimnissen¶
Dieses End-to-End-Beispiel zeigt, wie Sie ein Notebook so konfigurieren, dass es mit einem generischen Zeichenfolgen-Geheimnis auf die OpenAI API zugreift.
Bemerkung
Geheimnisse müssen sowohl mit der externen Zugriffsintegration (EAI) als auch mit dem Notebook verknüpft sein. Wenn ein Geheimnis nur mit einem davon verknüpft ist, ist es nicht über den Notebook-Code zugänglich.
Zugriff auf das Geheimnis in einem Notebook¶
Nachdem Sie das Geheimnis mit dem Notebook verknüpft haben, verwenden Sie das Objekt
st.secrets, um auf seinen Wert im Notebook-Code zuzugreifen:
Zusätzliche EAI-Beispiele¶
Diese Beispiele zeigen, wie Sie den externen Zugriff für gängige Websites für Data Science und maschinelles Lernen einrichten:
EAI für PyPI¶
EAI für Hugging Face¶
Erteilen Sie USAGE-Berechtigungen zur Nutzung externer Zugriffsintegrationen¶
Nachdem Sie die EAIs erstellt haben, gewähren Sie den Rollen, die sie verwenden werden, die Berechtigung USAGE für die Integration:
Die Rolle, mit der Sie das Notebook erstellen, muss über USAGE auf EAI verfügen. Die Gewährung von USAGE an die Rolle PUBLIC wird nicht funktionieren.
Aktivieren Sie externe Zugriffsintegrationen in Snowsight¶
Nachdem Sie EAIs erstellt und bereitgestellt haben, starten Sie die Notebook-Sitzung neu, um die von Ihnen erstellten Zugriffsintegrationen im Bereich External Access zu sehen.
Um Integrationen mit Snowsight zu ermöglichen:
Weitere Beispiele für Authentifizierung¶
OAuth-Zugriffstoken¶
Geheimnis-Typ: GENERIC_STRING¶
Verwenden Sie ein GENERIC_STRING-Geheimnis, um einen einzelnen Wert zu speichern, wie z. B. einen API-Schlüssel oder ein Token.
Erstellen Sie das Geheimnis:
Bei GENERIC_STRING können Sie auf die Geheimnisse per Wörterbuch oder Attribut zugreifen:
Geheimnistyp: PASSWORD (Beispiel: GitHub Basic Auth)¶
Verwenden Sie ein PASSWORD-Geheimnis, um ein Paar aus Benutzernamen und Kennwort zu speichern. Diese werden häufig für die grundlegende Authentifizierung mit externen APIs benötigt.
In diesem Beispiel greift das Notebook über ein PASSWORD-Geheimnis und eine externe Zugriffsintegration auf die GitHub REST API zu.
Erstellen Sie das Geheimnis:
Verwenden Sie das Geheimnis als Teil einer EAI:
Greifen Sie auf das Geheimnis in Ihrem Code zu:
Zusätzliche Ressourcen¶
Eine ausführliche Syntax finden Sie unter Überblick über den externen Netzwerkzugriff.
Einzelheiten zur Verwendung von CREATE SECRET finden Sie unter Erstellen eines Geheimnisses zur Darstellung von Anmeldeinformationen.
Weitere Beispiele für EAIs finden Sie unter Beispiele für externen Netzwerkzugriff oder Externen Zugriff für Snowflake Notebooks auf Github einrichten.
