Deklaratives verbraucherseitiges Ausführungsmodell der App

Wenn Sie eine Declarative Native App als verbrauchende Person installieren, isoliert das Native App Framework den Datenzugriff der App und die Ausführung von Code in einer kontrollierten Umgebung und verhindert so, dass die App auf Daten zugreift oder Ressourcen im Verbraucherkonto anderweitig beeinflusst.

Das Native App Framework erzwingt Sicherheitsgrenzen für Declarative Native Apps im Sandbox-Stil, sodass die App nur auf Daten zugreifen kann, die im App-Paket enthalten sind. Dadurch wird sichergestellt, dass die App nicht auf andere Daten, Coderessourcen oder Systemressourcen im Verbraucherkonto zugreifen kann. Dies bietet eine sichere Umgebung für die Ausführung der App und schützt die Verbraucher-Assets.

Die Sicherheitsgrenzen für Declarative Native Apps sind restriktiver als die für Native App Framework-Apps, die bei entsprechenden Berechtigungen auf zusätzliche Ressourcen im Verbraucherkonto zugreifen können.

Eingebettete Codeobjekte für Declarative Native Apps

Die einzigen Codeobjekte, die derzeit für Declarative Native Apps unterstützt werden, sind Snowflake-Notebooks. Derzeit können Declarative Native Apps keine anderen Arten von Coderessourcen für die Logik verwenden, wie z. B. Streamlits, gespeicherte Prozeduren oder UDFs. Die eingebetteten Codeobjekte in einer Declarative Native App können nur Folgendes tun:

  • Auf Daten oder Codeobjekte innerhalb des App-Pakets zugreifen.

  • Abfragen, Visualisierungen und Funktionen für die vom App-Paket bereitgestellten Tabellen und Ansichten ausführen. Die App hat SELECT-Zugriff auf diese Tabellen, Ansichten und Funktionen.

Die eingebettete Logik kann Folgendes nicht tun:

  • Auf alle anderen Datenprodukte im Verbraucherkonto zugreifen.

  • Auf jede andere Logik im Verbraucherkonto zugreifen.

  • Auf Metadaten zu anderen Datenprodukten zugreifen, die im Verbraucherkonto installiert sind.

  • Auf alle Systemressourcen im Verbraucherkonto zugreifen, wie z. B. Systemtabellen oder -ansichten. Die Ausführung von SHOW DATABASES oder SHOW TABLES gibt beispielsweise nur die Datenbanken und Tabellen zurück, die Teil des App-Pakets sind. Andere Datenbanken und Tabellen im Verbraucherkonto sind für die App nicht sichtbar.

  • Systemparameter oder Einstellungen im Verbraucherkonto ändern, z. B. die Warehouse-Größe oder die Benutzerrollen.

  • Ressourcen oder externen Integrationen im Verbraucherkonto erstellen, z. B. neue Warehouses, Datenbanken, Tabellen oder Ansichten, die nicht Teil des App-Pakets sind.

Bemerkung

Die App verwendet das Standard-Warehouse des aktuellen Benutzerkontos. Weitere Informationen zum Erstellen eines Warehouse finden Sie unter CREATE WAREHOUSE. Weitere Informationen zum Festlegen eines Standard-Warehouse für ein Benutzerkonto finden Sie unter ALTER USER.