Tutorial: Erstellen und Verwalten eines Organisations-Freigabeangebots¶
Organisations-Freigabeangebote in Snowflake ermöglichen es Ihnen, Datenprodukte sicher innerhalb Ihrer Organisation zu teilen, sodass interne Teams vertrauenswürdige Ressourcen leichter entdecken und nutzen können. Als Anbieter können Sie Freigabeangebote erstellen, die den Zugriff auf Datensätze, Native Apps und andere Ressourcen zentralisieren und so die Datenfreigabe und die Datenzusammenarbeit in Ihren Teams vereinfachen. Dieser Leitfaden hilft Ihnen, die Schritte und Anforderungen zu verstehen, die für die Erstellung und Verwaltung von Freigabeangeboten erforderlich sind. So stellen Sie sicher, dass Ihre Datenprodukte zugänglich sind und Sie gleichzeitig die Kontrolle darüber behalten, wer sie sehen und nutzen kann.
Bevor Sie beginnen, vergewissern Sie sich, dass Sie über die erforderlichen Berechtigungen zum Erstellen und Verwalten von Organisations-Freigabeangeboten verfügen.
In diesem Tutorial erstellen wir eine kundenspezifische Rolle (ORG_LISTING_PROVIDER), um Freigabeangebote im Namen der Organisation zu verwalten.
Erstellen einer Rolle zur Verwaltung von Organisations-Freigabeangeboten¶
Wechseln Sie zur Rolle ORGADMIN (oder ACCOUNTADMIN), um eine neue Rolle zu erstellen und einen oder mehrere Benutzer hinzuzufügen. Diese Benutzer sind die Administratoren für Organisations-Freigabeangebote. Dann GRANT der neuen Rolle die erforderlichen Berechtigungen zum Erstellen und Freigeben von Organisations-Freigabeangeboten.
USE ROLE ACCOUNTADMIN;
CREATE ROLE ORG_LISTING_PROVIDER;
GRANT ROLE ORG_LISTING_PROVIDER TO USER <user_name>;
GRANT CREATE SHARE ON ACCOUNT TO ROLE ORG_LISTING_PROVIDER;
Ein Organisations-Freigabeangebot erstellen¶
Erstellen Sie ein Organisations-Freigabeangebot aus der Freigabe mit den erforderlichen Attributen in YAML (eingegeben in $$-Trennzeichen).
In diesem Beispiel wird das Freigabeangebot für alle Konten in der Organisation freigegeben:
USE ROLE ORG_LISTING_PROVIDER;
CREATE ORGANIZATION LISTING ORG_LISTING
SHARE ORG_SHARE AS
$$
title : 'My title'
organization_profile: INTERNAL
organization_targets:
access:
- all_accounts : true
locations:
access_regions:
- name: "ALL"
auto_fulfillment:
refresh_type: "SUB_DATABASE"
refresh_schedule: "10 MINUTE"
$$;
Ein Organisations-Freigabeangebot ändern¶
Ändern Sie Organisations-Freigabeangebote, indem Sie alle Änderungen oder zusätzlichen Attribute in die YAML aufnehmen.
In diesem Beispiel wird das Freigabeangebot nur für ein Konto freigegeben. Außerdem wird dem Freigabeangebot eine Beschreibung hinzugefügt:
USE ROLE ORG_LISTING_PROVIDER;
ALTER LISTING ORG_LISTING
AS
$$
title : 'My title'
organization_profile: INTERNAL
organization_targets:
access:
- all_accounts : false
locations:
access_regions:
- name: "ALL"
auto_fulfillment:
refresh_type: "SUB_DATABASE"
refresh_schedule: "10 MINUTE"
$$;
Eine Liste der Organisations-Freigabeangebote anzeigen¶
Um die Organisations-Freigabeangebote anzuzeigen, führen Sie den folgenden Befehl aus:
SHOW LISTINGS;
DESCRIBE LISTING ORG_LISTING;
(Optional) Fügen Sie die automatische Ausführung für Organisations-Freigabeangebote hinzu¶
Um die automatische Ausführung für Ihre Organisations-Freigabeangebote zu aktivieren, führen Sie die folgenden Befehle aus:
Wichtig
Bevor Sie den Befehl zum Aktivieren der automatischen Ausführung ausführen, prüfen Sie, ob diese Funktion bereits aktiviert ist, und notieren Sie sich die aktuellen Einstellungen. Wenn er bereits aktiviert ist, müssen Sie den Befehl nicht ausführen.
USE ROLE ACCOUNTADMIN;
GRANT MANAGE LISTING AUTO FULFILLMENT ON ACCOUNT TO ROLE ORG_LISTING_PROVIDER;
USE ROLE ORG_LISTING_PROVIDER;
SHOW ORGANIZATION ACCOUNTS;
SELECT SYSTEM$IS_GLOBAL_DATA_SHARING_ENABLED_FOR_ACCOUNT('<ORGACCOUNT>');
CALL SYSTEM$ENABLE_GLOBAL_DATA_SHARING_FOR_ACCOUNT('<ORGACCOUNT>');
Bereinigen nach dem Tutorial¶
Um unerwünschte Objekte, die Sie während dieses Tutorials erstellt haben, zu löschen, führen Sie einen oder mehrere der folgenden Befehle aus, je nach Bedarf:
Wichtig
Wenn die automatische Ausführung aktiviert war, als Sie den letzten Schritt ausgeführt haben, deaktivieren Sie sie unter DO NOT, wenn Sie nach der Abfrage aufräumen. Dadurch werden alle automatischen Ausführungen auf Ihrem Konto gestoppt!
DROP LISTING <organizational_listing_name>;
DROP SHARE org_listing1_share1;
DROP DATABASE org_listing_db1;
--CALL SYSTEM$DISABLE_GLOBAL_DATA_SHARING_FOR_ACCOUNT('ORGACCOUNT');
DROP ROLE ORG_LISTING_PROVIDER;