Anfordern von Berechtigungen in einem Verbraucherkonto¶
Dieses Thema enthält allgemeine Informationen darüber, wie Anbieter Berechtigungen anfordern können, nachdem ein Verbraucher eine Snowflake Native App installiert hat.
Allgemeine Informationen zu Berechtigungen und Referenzen in einer Snowflake Native App¶
In einer einfachen Snowflake Native App werden alle erforderlichen Objekte innerhalb des APPLICATION-Objekts erstellt, wenn das Setup-Skript während der Installation ausgeführt wird. In diesem Zusammenhang werden alle von einer Snowflake Native App benötigten Objekte innerhalb der installierten App erstellt und zugänglich gemacht. Der Verbraucher ist nicht verpflichtet, der Snowflake Native App irgendwelche Berechtigungen zu erteilen. Alle erforderlichen Berechtigungen werden über Anwendungsrollen verwaltet.
Bei einer komplexeren Snowflake Native App kann es jedoch erforderlich sein, neue Objekte zu erstellen oder auf bestehende Objekte im Konto des Verbrauchers zuzugreifen, die außerhalb des APPLICATION-Objekts liegen, das im Verbraucherkonto erstellt wird. In diesen Kontexten muss der Verbraucher die erforderlichen Berechtigungen für das Erstellen oder den Zugriff auf diese Objekte erteilen.
Mit Snowflake Native App Framework können Anbieter Folgendes tun:
Prüfen, ob das Verbraucherkonto über Berechtigungen auf Kontoebene verfügt.
Anfordern von Berechtigungen auf Kontoebene, um Aufgaben auszuführen, z. B. das Erstellen einer Datenbank
Anfordern von Berechtigungen auf Objektebene mithilfe von Referenzen
Anbieter können eine Snowflake Native App entwickeln, mit der Sie wie folgt den Zugriff auf ein Verbraucherkonto anfordern:
- Globale Berechtigungen
Schließen Sie Berechtigungen ein, mit denen die Snowflake Native App Aufgaben im Verbraucherkonto ausführen kann. Weitere Informationen dazu finden Sie unter Berechtigungen, die der Anbieter vom Verbraucher anfordern kann.
- Referenzen
Erlauben Sie der Snowflake Native App den Zugriff auf Objekte, die bereits im Verbraucherkonto vorhanden sind, sich aber nicht im APPLICATION-Objekt befinden. Ein Anbieter definiert die von der Snowflake Native App benötigten Referenzen. Nach Installation der App ordnet der Verbraucher ein Objekt in seinem Konto der Anwendung zu, indem er den Namen und das Schema des gewünschten Objekts angibt.
Mithilfe von Referenzen kann der Anbieter Code unter Verwendung eines logischen Namens für ein Objekt schreiben. Dies erleichtert das Schreiben von Code, ohne dass Sie sich den Namen des Objekts und seines übergeordneten Schemas oder der Datenbank merken müssen.
Gewähren von Zugriff auf eine Snowflake Native App durch den Verbraucher¶
Für jede Prüfung oder Anfrage, die eine Snowflake Native App durchführt, muss ein Verbraucher die erforderlichen Berechtigungen erteilen, damit die Anwendung diese Aktionen durchführen kann. Es gibt zwei Möglichkeiten, wie ein Verbraucher diese Berechtigungen an eine Snowflake Native App vergeben kann:
Der Anbieter verwendet ein SDK, das vom Snowflake Native App Framework bereitgestellt wird, um eine Benutzeroberfläche als Streamlit-App zu erstellen. Die Streamlit-App ermöglicht es dem Verbraucher, die gewünschten Berechtigungen über Snowsight zu erteilen. Bei diesem Ansatz muss der Anbieter zusätzliche Schritte ausführen, um die Schnittstelle zu implementieren, aber es vereinfacht die Benutzung für den Verbraucher.
Der Anbieter fordert den Verbraucher auf, die SQL-Befehle manuell auszuführen, um die erforderlichen Berechtigungen nach der Installation der Snowflake Native App zu gewähren. Bei diesem Ansatz muss der Anbieter dem Verbraucher mitteilen, welche GRANT <Berechtigungen>-Anweisungen er ausführen muss.
Die Snowflake Native App funktioniert möglicherweise erst, wenn der Verbraucher die SQL-Befehle ausführt. Dieser Ansatz erfordert eine zusätzliche Kommunikation zwischen Anbieter und Verbraucher.