Teilnehmerrollen in Collaboration Data Clean Rooms

Überblick der Zusammenarbeitsrollen

Teilnehmer haben eine oder mehrere der folgenden Zusammenarbeitsrollen in einem Reinraum-Zusammenarbeitsszenario. In diesem Fall ist eine Zusammenarbeitsrolle eine Sammlung von Fähigkeiten und keine RBAC-Rolle:

  • Eigentümer: Diese Person definiert, erstellt und besitzt die Zusammenarbeit und definiert, welche Teilnehmenden eingeladen werden und welche Zusammenarbeitsrollen sie haben. Ein Eigentümer ist nicht automatisch ein Analyseausführer oder Datenanbieter und hat keine erhöhten Ausführungsberechtigungen. Die Hauptfähigkeiten dieser Person bestehen darin, den Clean Room zu erstellen, Zusammenarbeitsrollen zuzuweisen, zu bestimmen, wer mit wem Daten teilen darf, und den Clean Room wieder abzubauen. Eine Zusammenarbeit kann nur einer Person gehören.

  • Datenanbieter: Stellt Datenangebote, wie z. B. Tabellen und Ansichten, für eine Zusammenarbeit bereit und gibt an, welche Analyseprotokolle diese verwenden können. Das heißt, Konto A ist ein Datenanbietender für die Konten B und C, wie in der Spezifikation der Zusammenarbeit angegeben.

  • Analysis Runner: Führt zulässige Vorlagen auf zulässigen Datenangeboten aus, wie in der Spezifikation der Zusammenarbeit angegeben. Ein Analysis-Runner ist standardmäßig kein Datenanbieter für sich selbst, es sei denn, dies ist in der Spezifikation für die Zusammenarbeit angegeben.

Ein Teilnehmender kann innerhalb einer Zusammenarbeit mehrere Zusammenarbeitsrollen haben, und mehrere Teilnehmende können dieselbe Zusammenarbeitsrolle besitzen (mit Ausnahme der Eigentümerrolle, die nur einem Benutzer zugewiesen ist). Der Eigentümer einer Zusammenarbeit kann zum Beispiel auch ein Datenanbieter und ein Analyseausführer sein.

Der Eigentümer gibt alle Teilnehmenden und deren Rollen an, wenn sie die Zusammenarbeit erstellen. Teilnehmende und ihre Zusammenarbeitsrollen können nicht mehr geändert werden, nachdem eine Zusammenarbeit erstellt wurde. Infolgedessen werden die folgenden Rollenzuweisungen für die Zusammenarbeit festgelegt, nachdem eine Zusammenarbeit erstellt wurde:

  • Der Eigentümer kann nicht geändert werden.

  • Analyseausführer können nicht hinzugefügt oder entfernt werden.

  • Die Liste der Datenanbieter für die einzelnen Analyseausführer kann nicht geändert werden. Wenn Konto A bei der Erstellung der Zusammenarbeit nicht als Datenanbieter für Konto B definiert ist, kann Konto A niemals ein Datenanbieter für Konto B sein.

Allerdings können Teilnehmende Ressourcen hinzufügen oder entfernen, nachdem eine Zusammenarbeit erstellt wurde.

Siehe Ihre -Rolle

Rufen Sie GET_STATUS auf, um Ihre Rollen in einer Zusammenarbeit in der ROLES-Spalte zu sehen:

CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.COLLABORATION.GET_STATUS($collaboration_name);

Wenn Sie mehr Details zu Ihren Rollen anzeigen möchten, z. B. wenn Sie ein Datenanbieter sind und sehen möchten, für wen Sie Daten freigeben können, müssen Sie die Spezifikation prüfen. Hier sehen Sie, wie Sie die Zusammenarbeitsspezifikation in einem einzigen Aufruf anzeigen können, nachdem Sie einer Zusammenarbeit beigetreten sind:

CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.COLLABORATION.VIEW_COLLABORATIONS() ->>
  SELECT "COLLABORATION_SPEC" FROM $1
    WHERE "SOURCE_NAME" = $collaboration_name;

Beispiel

Das folgende Beispiel zeigt eine sehr einfache Zusammenarbeit, in der Zusammenarbeitsrollen definiert, jedoch keine Ressourcen enthalten sind. Sie können eine Zusammenarbeit mit oder ohne Ressourcen erstellen und diese später hinzufügen oder entfernen.

api_version: 2.0.0
spec_type: collaboration
name: basic_collaboration
owner: alice
collaborator_identifier_aliases:
  alice: corp1.acct123
  bob: corp2.acctxyz
analysis_runners:
  alice:
    data_providers:
      alice:
        data_offerings: []
      bob:
        data_offerings: []
  bob:
    data_providers:
      alice:
        data_offerings: []

Die vorherige Zusammenarbeit definiert die folgenden Teilnehmenden und Zusammenarbeitsrollen:

  • alice ist Eigentümer der Zusammenarbeit, Anbieter von Analysen und Datenanbieter für bob und sich selbst. alice ist der in der Zusammenarbeit für das Konto corp1.acct123 definierte Alias.

  • bob ist Analyseausführer und Datenanbieter für alice, aber nicht für sich selbst. bob ist der in der Zusammenarbeit für das Konto corp2.acctxyz definierte Alias.

Diese Zusammenarbeitsrollen können nicht mehr geändert werden, und neue Teilnehmende können nicht hinzugefügt werden, nachdem die Zusammenarbeit erstellt wurde.

Datenanbieter können Datenangebote hinzufügen, nachdem eine Zusammenarbeit erstellt wurde. Jede teilnehmende Person kann Vorlagen hinzufügen, nachdem eine Zusammenarbeit erstellt wurde. Das folgende Beispiel zeigt, wie Sie die Zusammenarbeits-API verwenden, um der vorherigen Zusammenarbeit Ressourcen hinzuzufügen, nachdem sie erstellt wurde:

api_version: 2.0.0
spec_type: collaboration
name: basic_collaboration
owner: alice
collaborator_identifier_aliases:
  alice: corp1.acct123
  bob: corp2.acctxyz
analysis_runners:
  alice:
    data_providers:
      alice:
        data_offerings:
        - id: alice_data_1
        - id: alice_data_2
      bob:
        data_offerings:
        - id: bob_data_1
    templates:
    - id: template1  # Alice can run template1 using alice_data_1, alice_data_2, or bob_data_1.
  bob:
    data_providers:
      alice:
        data_offerings:
        - id: alice_data_1
    templates:
    - id: template2  # Bob can run template2 using data from alice_data_1, provided by alice.

Die geänderte Zusammenarbeit unterstützt jetzt die folgenden Ressourcen und Funktionen:

  • alice kann Analysen mit template1 mit Daten von alice_data_1, alice_data_2``und ``bob_data_1 ausführen.

  • bob kann template2 unter Verwendung von Daten von alice_data_1 ausführen.