Organisationsbenutzer

Unternehmen mit mehreren Konten müssen häufig dieselbe Person als Benutzer in mehreren dieser Konten anlegen. Um zu vermeiden, dass für die Person in jedem Konto ein eigenes Benutzerobjekt angelegt werden muss, kann der Organisationsadministrot einen Organisationsbenutzer im Organisationskonto anlegen. Jeder Organisationsbenutzer fungiert als globale Benutzerentität, die von Kontoadministratoren in reguläre Konten importiert werden kann, was den Prozess vereinfacht, wenn ein und dieselbe Person ein Benutzerobjekt in mehreren Konten hat.

Kontoadministratoren fügen Organisationsbenutzer nicht direkt zu ihrem regulären Konto hinzu. Vielmehr fügen sie Organisationsbenutzergruppen hinzu, die logische Gruppierungen von Organisationsbenutzern sind. Wenn der Kontoadministrator die Organisationsbenutzergruppe importiert, werden die Organisationsbenutzer dem Konto hinzugefügt.

Bemerkung

Wenn Sie Organisationsbenutzer für Personen erstellen möchten, die bereits ein Benutzerobjekt in einem oder mehreren regulären Konten haben, müssen Sie den Organisationsbenutzer mit dem vorhandenen Benutzerobjekt verknüpfen, nachdem Sie die Organisationsbenutzergruppe importiert haben. Weitere Informationen dazu finden Sie unter Konflikte nach dem Importieren von Benutzern lösen.

Erste Schritte

Der grundlegende Workflow, um Benutzer einer Organisation in einem oder mehreren Konten anzulegen, ist wie folgt:

  1. Als globaler Organisationsadministrator im Organisationskonto:

    1. Erstellen Sie einen Organisationsbenutzer für jede Person, die Sie als Benutzer in mehreren regulären Konten haben möchten.

    2. Erstellen Sie eine Organisationsbenutzergruppe, die eine logische Gruppierung der Benutzer darstellt.

    3. Fügen Sie die Organisationsbenutzer zur Organisationsbenutzergruppe hinzu.

    4. Machen Sie die Organisationsbenutzergruppe für die Kontoadministratoren in regulären Konten verfügbar.

  2. Als Administrator eines regulären Kontos:

    1. Importieren Sie die Organisationsbenutzergruppe in das Konto.

    2. Prüfen Sie, ob es Konflikte gibt und lösen Sie diese.

Ein vollständiges Beispiel für diesen Workflow finden Sie unter Erweitertes Beispiel.

Einen Benutzer für eine Organisation erstellen

Der Organisationsadministrator erstellt einen Organisationsbenutzer mit den grundlegenden Eigenschaften eines Benutzerobjekts wie Anmeldename und E-Mail-Administrator. Es ist nur eine E-Mail-Adresse erforderlich, jedoch können diese grundlegenden Eigenschaften nach dem Import des Nutzers in einem regulären Konto nicht mehr gesetzt werden. Eine Liste dieser grundlegenden Eigenschaften finden Sie unter CREATE ORGANIZATION USER.

Der folgende Befehl erstellt beispielsweise einen Organisationsbenutzer:

USE ROLE GLOBALORGADMIN;

CREATE ORGANIZATION USER asmith
   EMAIL = 'asmith@example.com'
   LOGIN_NAME = 'asmith@example.com';
Copy

Organisationsbenutzergruppen

Organisationsbenutzergruppen sind logische Gruppierungen von Organisationsbenutzern. Der Organisationsadministrator erstellt diese Organisationsbenutzergruppen und fügt dann die Organisationsbenutzer hinzu, die zu jeder Gruppe gehören sollen. Wenn der Kontoadministrator eine Organisationsbenutzergruppe in ein Konto importiert, werden alle Organisationsbenutzer in der Gruppe zu Benutzerobjekten im regulären Konto. Ein Organisationsbenutzer kann Mitglied mehrerer Organisationsbenutzergruppen sein.

Wenn Sie den Kontoadministrator eine Organisationsbenutzergruppe in ein reguläres Konto importiert, erstellt Snowflake eine Zugriffskontrolle Rolle mit demselben Namen. Wenn die Organisationsbenutzergruppe beispielsweise den Namen data_stewards trägt, wird beim Importieren der Gruppe in das reguläre Konto eine Rolle mit dem Namen data_stewards erstellt. Jeder Benutzer, der aus der Organisationsbenutzergruppe importiert wird, erhält diese Rolle.

Administratoren im regulären Konto können die Zugriffskontrolle feinabstimmen, indem sie der Rolle, die jedem der aus der Organisationsbenutzergruppe importierten Benutzer zugewiesen wurde, Berechtigungen erteilen oder entziehen. Sie können der neuen Rolle auch kontospezifische Rollen zuweisen oder die neue Rolle an kontospezifische Rollen vergeben.

Sie können dieselbe Organisationsbenutzergruppe in mehrere reguläre Konten importieren, um unternehmensweit einheitliche Rollen zu implementieren. Jedes reguläre Konto kann der Rolle kontospezifische Berechtigungen zuweisen, wobei die Benennung jedoch einheitlich bleibt. Alternativ können Sie für jedes Konto eine separate Organisationsbenutzergruppe erstellen und dann die Organisationsbenutzer, die in einem bestimmten Konto benötigt werden, der entsprechenden Organisationsbenutzergruppe hinzufügen.

Wenn der Administrator mehrere Organisationsbenutzergruppen importiert, die denselben Organisationsbenutzer enthalten, wird nur ein lokaler Benutzer erstellt, dem die Rollen aller Organisationsbenutzergruppen zugewiesen werden.

Die Aufgabe des Organisationsadminitrators, eine Organisationsbenutzergruppe für den Kontoverwalter der regulären Konten vorzubereiten, erfolgt in drei Schritten:

  1. Erstellen Sie die Organisationsbenutzergruppe.

  2. Fügen Sie Organisationsbenutzer zur Gruppe hinzu.

  3. Stellen Sie die Sichtbarkeit der Gruppe ein, um festzulegen, welche regulären Konten darauf zugreifen können.

Eine Organisationsbenutzergruppe erstellen

Der Organisationsadministrator führt den Befehl CREATE ORGANIZATION USER GROUP aus, um eine neue Organisationsbenutzergruppe im Organisationskonto zu erstellen.

Der folgende Befehl erstellt beispielsweise eine Organisationsbenutzergruppe, die eine logische Gruppierung von Data Engineers darstellt.

CREATE ORGANIZATION USER GROUP data_engineers_group;
Copy

Benutzer einer Organisation zu einer Benutzergruppe hinzufügen

Nachdem der Organisationsadministrator eine Organisationsbenutzergruppe erstellt hat, kann er den Befehl ALTER ORGANIZATION USER GROUP ausführen, um Organisationsbenutzer als durch Kommas getrennte Liste zur Gruppe hinzuzufügen. Um beispielsweise zwei bestehende Organisationsbenutzer zur Organisationsbenutzergruppe data_engineers_group hinzuzufügen, führen Sie Folgendes aus:

ALTER ORGANIZATION USER GROUP data_engineers_group
   ADD ORGANIZATION USERS asmith, sjohnson;
Copy

Organisationsbenutzergruppen für reguläre Konten verfügbar machen

Nachdem Sie eine Organisationsgruppe erstellt haben, müssen Sie angeben, welche regulären Konten die Gruppe anzeigen und importieren können. Kontoadministratoren können die Organisationsbenutzergruppe erst dann zum Importieren von Benutzern verwenden, wenn Sie den Befehl ALTER ORGANIZATION USER GROUP verwenden, um die Sichtbarkeit der Gruppe einzustellen. Sie können festlegen, dass alle regulären Konten die Organisationsbenutzergruppe importieren können, oder Sie können den Zugriff auf bestimmte Konten beschränken.

Wichtig

Wenn Sie den Befehl ALTER ORGANIZATION USER GROUP ausführen, um die Sichtbarkeit einzustellen, werden frühere Sichtbarkeitseinstellungen überschrieben. Wenn beispielsweise die Sichtbarkeit auf ALL gesetzt war und dann der Befehl ALTER ausgeführt wurde, um die Sichtbarkeit auf account_a zu setzen, werden die Benutzer und Rollen, die aus der Organisationsbenutzergruppe erstellt wurden, aus allen Konten mit Ausnahme von account_a entfernt.

Der folgende Befehl erlaubt es nur dem Konto-qa_env, die Organisationsbenutzergruppe hinzuzufügen:

ALTER ORGANIZATION USER GROUP data_engineers_group
   SET VISIBILITY = ACCOUNTS qa_env;
Copy

Benutzer in ein reguläres Konto importieren

Nachdem der Organisationsadministrator eine Organisationsbenutzergruppe erstellt hat, können Administratoren in regulären Konten die Organisationsbenutzer importieren, indem sie den Befehl ALTER ACCOUNT ausführen, um die Organisationsbenutzergruppe hinzuzufügen. Diese Administratoren können eine Organisationsbenutzergruppe nur importieren, wenn der Organisationsadministrator die Sichtbarkeit der Gruppe so eingestellt hat, dass das reguläre Konto darauf zugreifen kann.

Standardmäßig können nur Benutzer mit der Rolle ACCOUNTADMIN Organisationsbenutzergruppen in das reguläre Konto importieren. Um anderen Benutzern den Import einer Organisationsgruppe zu ermöglichen, erteilen Sie ihnen die Berechtigung IMPORT ORGANIZATION USER GROUPS.

Die Syntax zum Importieren einer Organisationsbenutzergruppe in ein reguläres Konto lautet wie folgt:

ALTER ACCOUNT ADD ORGANIZATION USER GROUP <group_name>
Copy

Ein Beispiel für das Importieren einer Organisationsbenutzergruppe zum Hinzufügen von Benutzern finden Sie unter Erweitertes Beispiel.

Konflikte nach dem Importieren von Benutzern lösen

Der Kontoadministrator, der Organisationsbenutzer in sein reguläres Konto importiert, muss manuell auf Konflikte prüfen. Diese Konflikte können zwischen den Eigenschaften der Benutzer oder dem Namen der Organisationsbenutzergruppe entstehen.

Konflikt zwischen der Organisationsbenutzergruppe und der vorhandenen Rolle

Ein Konflikt tritt auf, wenn der Name der Organisationsbenutzergruppe mit dem Namen einer bestehenden Rolle im regulären Konto übereinstimmt. Die Benutzer der Gruppe werden erst importiert, wenn Sie den Konflikt gelöst haben.

Um zu prüfen, ob nach dem Importieren einer Organisationsbenutzergruppe ein Konflikt vorliegt, gehen Sie wie folgt vor:

  1. Führen Sie den Befehl SHOW ORGANIZATION USER GROUPS aus.

  2. Prüfen Sie in der Spalte is_imported, ob der Wert TRUE lautet. Wenn der Wert FALSE lautet, wurde die Organisationsbenutzergruppe nicht erfolgreich importiert, was auf einen Konflikt hindeuten könnte.

Sie können den Konflikt zwischen einer Rolle und einer Organisationsbenutzergruppe lösen, indem Sie die Rolle mit der Gruppe verknüpfen. Wenn Sie eine Rolle verknüpfen, kann sie künftig als Organisationsbenutzergruppe verwaltet werden. Nachdem Sie die konfliktbehaftete Rolle verknüpft haben, wird die Organisationsbenutzergruppe dem Konto ohne weitere Maßnahmen hinzugefügt. Rufen Sie die Funktion SYSTEM$LINK_ORGANIZATION_USER_GROUP auf, um eine Rolle mit einer Organisationsbenutzergruppe zu verknüpfen.

Angenommen, die Rolle marketing_team war bereits in Ihrem Konto vorhanden, bevor Sie die Organisationsbenutzergruppe marketing_team in das Konto importiert haben. Um die Rolle mit der Organisationsbenutzergruppe zu verknüpfen und und den Importvorgang für die Gruppe abzuschließen, gehen Sie wie folgt vor:

SELECT SYSTEM$LINK_ORGANIZATION_USER_GROUP('marketing_team');
Copy

Konflikt zwischen Organisationsbenutzer und bestehendem Benutzer

Ein Konflikt tritt auf, wenn einer der folgenden Punkte zutrifft:

  • Die Eigenschaft name eines Organisationsbenutzers entspricht der name eines vorhandenen Benutzers im regulären Konto.

  • Die Eigenschaft login_name eines Organisationsbenutzers entspricht der login_name eines vorhandenen Benutzers im regulären Konto.

Um zu prüfen, ob nach dem Import einer Organisationsbenutzergruppe ein Benutzerkonflikt vorliegt, gehen Sie wie folgt vor:

  1. Führen Sie den Befehl SHOWORGANIZATIONUSERSINORGANIZATIONUSERGROUP aus.

  2. Suchen Sie in der Spalte is_imported nach Zeilen, in denen der Wert FALSE lautet. Mindestens eine Eigenschaft des Benutzers in dieser Zeile steht im Widerspruch zu den Eigenschaften eines vorhandenen Benutzers.

Tipp

Sie können die Funktion RESULT_SCAN verwenden, um die Ausgabe von SHOW ORGANIZATION USERS nachzubearbeiten und nach der Spalte is_imported zu filtern. Um z. B. nach Organisationsbenutzern zu suchen, die nicht erfolgreich aus der Organisationsbenutzergruppe marketing_team importiert wurden, führen Sie Folgendes aus:

SHOW ORGANIZATION USERS IN ORGANIZATION USER GROUP marketing_team;
SELECT * FROM TABLE(RESULT_SCAN(LAST_QUERY_ID())) WHERE "is_imported" = 'false';
Copy

Wenn ein vorhandenes Benutzerobjekt derselben Person entspricht wie ein Organisationsbenutzer und Sie den Benutzer künftig als Organisationsbenutzer verwalten möchten, können Sie den vorhandenen Benutzer mit dem Organisationsbenutzer verknüpfen, um den Konflikt zu lösen. Rufen Sie die Funktion SYSTEM$LINK_ORGANIZATION_USER auf, um einen vorhandenen Benutzer mit einem Organisationsbenutzer zu verknüpfen. Um zum Beispiel den vorhandenen Benutzer jloeb mit dem Organisationsbenutzer jloebsmith zu verknüpfen, führen Sie Folgendes aus:

SELECT SYSTEM$LINK_ORGANIZATION_USER('jloeb', 'jloebsmith');
Copy

Wenn Sie den bestehenden lokalen Benutzer nicht mit dem neuen Organisationsbenutzer verknüpfen möchten, können Sie das Benutzerobjekt oder seine Eigenschaften im regulären Konto umbenennen, um den Konflikt zu lösen. Wenn beispielsweise der bereits vorhandene Benutzer und der Organisationsbenutzer beide den Anmeldenamen JOE_LOGIN haben, können Sie Folgendes im regulären Konto ausführen, um den Konflikt zu vermeiden, ohne eine Verknüpfung herzustellen:

USE ROLE ACCOUNTADMIN;
ALTER USER joe SET LOGIN_NAME = joe_login_renamed;
Copy

Importierte Benutzer ändern

Administratoren in einem regulären Konto können den Befehl ALTER USER verwenden, um eine Teilmenge der Eigenschaften eines Benutzerobjekts zu ändern, nachdem es importiert wurde. Der Administrator kann alle Eigenschaften ändern mit Ausnahme der Eigenschaften, die für den Organisationbenutzer im Organisationskonto festgelegt werden können. Eine Liste der Eigenschaften, die nur im Organisationskonto eingestellt werden können, finden Sie unter CREATE ORGANIZATION USER.

Organisationsbenutzer und Gruppen entfernen

Organisationsbenutzer und Organisationsbenutzergruppen können von einem einzelnen Konto oder von allen Konten entfernt werden, indem sie im Organisationskonto fallen lässt.

Benutzer aus einem einzelnen regulären Konto entfernen

Ein Kontoadminstrator kann den Befehl ALTER ACCOUNT ausführen, um eine Organisationsbenutzergruppe aus dem Konto zu entfernen. Wenn Sie die Organisationsbenutzergruppe entfernen, werden alle importierten Benutzer gelöscht und die Rolle, die beim Import der Organisationsgruppe erstellt wurde, wird entfernt. Dieser Befehl wirkt sich weder auf die Organisationsbenutzer und Organisationsbenutzergruppen in anderen regulären Konten noch auf das Organisationskonto aus.

Bemerkung

Ein Organisationsbenutzer kann Mitglied mehrerer Organisationsbenutzergruppen sein. Wenn ein Benutzer aus mehr als einer Organisationsgruppe importiert wurde, wird der Benutzer nicht entfernt, wenn eine der Gruppen aus dem regulären Konto entfernt wird. Der Benutzer wird erst entfernt, wenn alle Organisationsbenutzergruppen entfernt wurden.

Der folgende Befehl löscht zum Beispiel alle Benutzer, die aus der Gruppe data_stewards importiert wurden und die Rolle data_stewards:

ALTER ACCOUNT REMOVE ORGANIZATION USER GROUP data_stewards;
Copy

Benutzer aus allen regulären Konten entfernen

Wenn ein Organisationsbenutzer im Organisationskonto gelöscht wird, wird das entsprechende Benutzerobjekt aus jedem regulären Konto gelöscht, das den Benutzer importiert hat. Um einen Organisationsbenutzer zu löschen, führen Sie den Befehl DROP ORGANIZATION USER im Organisationskonto aus.

Wenn eine Organisationsbenutzergruppe im Organisationskonto gelöscht wird, hängt die Auswirkung auf die Organisationsbenutzer davon ab, ob die Benutzer im regulären Konto zu anderen Organisationsbenutzergruppen gehören, die ebenfalls in das Konto importiert wurden. Wenn ein Organisationsbenutzer zu einer anderen Organisationsbenutzergruppe gehört, die importiert wurde, wird der Benutzer nicht aus dem Konto entfernt. Andernfalls werden durch das Löschen der Organisationsbenutzergruppe alle aus der Gruppe importierten Benutzer entfernt.

Wenn Sie eine Organisationsbenutzergruppe löschen, wird auch die Rolle entfernt, die beim Import der Gruppe erstellt wurde.

Um eine Organisationsbenutzergruppe zu löschen, führen Sie den Befehl DROP ORGANIZATION USER GROUP im Organisationskonto aus.

Verknüpfung von Organisationsbenutzern und Organisationsbenutzergruppen aufheben

Wenn Organisationsbenutzer erfolgreich in ein reguläres Konto importiert werden, wird das lokale Benutzerobjekt mit dem Organisationsbenutzer verknüpft. Wenn Sie das Benutzerobjekt in einem Konto behalten, aber nicht mehr mit dem Organisationsbenutzer verknüpfen möchten, können Sie die Funktion SYSTEM$UNLINK_ORGANIZATION_USER verwenden, um die Verknüpfung des lokalen Benutzers mit dem Organisationsbenutzer aufzuheben. Alle Eigenschaften des Benutzers bleiben erhalten und er kann weiterhin als lokaler Benutzer verwaltet werden.

Ebenso können Sie mit der Funktion SYSTEM$UNLINK_ORGANIZATION_USER_GROUP die Verknüpfung einer Rolle aufheben, die durch Hinzufügen einer Organisationsbenutzergruppe erstellt wurde. Damit bleibt alles an der Rolle gleich, aber sie ist nicht mehr mit der Organisationsbenutzergruppe verknüpft.

Erweitertes Beispiel

Workflow für Organisationsadministratoren
  1. Melden Sie sich als Organisationsadministrator beim Organisationskonto an.

  2. Erstellen Sie Organisationsbenutzer für zwei Personen, die Datenverwalter sind:

    USE ROLE GLOBALORGADMIN;
    
    CREATE ORGANIZATION USER joe_kelley
    EMAIL = 'jkelley@example.com'
    LOGIN_NAME = 'jkelley@example.com';
    
    CREATE ORGANIZATION USER grace_vivian
    EMAIL = 'gvivian@example.com'
    LOGIN_NAME = 'gvivian@example.com';
    
    Copy
  3. Erstellen Sie eine Organisationsbenutzergruppe, die eine logische Gruppierung von Datenverwaltern darstellt.

    CREATE ORGANIZATION USER GROUP data_stewards_group;
    
    Copy
  4. Fügen Sie die Organisationsbenutzer zur neuen Organisationsbenutzergruppe hinzu.

    ALTER ORGANIZATION USER GROUP data_stewards_group
       ADD ORGANIZATION USERS joe_kelley, grace_vivian;
    
    Copy
  5. Erlauben Sie allen regulären Konten, die Organisationsbenutzergruppe zu importieren.

    ALTER ORGANIZATION USER GROUP data_stewards_group
       SET VISIBILITY = ALL;
    
    Copy
Workflow für Kontoadministratoren
  1. Melden Sie sich als Kontoadministrator bei dem regulären Konto an, in das Sie die Organisationsbenutzer importieren möchten.

  2. Listen Sie die Organisationsbenutzergruppen auf, die in das Konto importiert werden können.

    USE ROLE ACCOUNTADMIN;
    
    SHOW ORGANIZATION USER GROUPS;
    
    Copy
  3. Importieren Sie die Organisationsbenutzergruppe in das Konto.

    ALTER ACCOUNT
      ADD ORGANIZATION USER GROUP data_stewards_group;
    
    Copy
  4. Prüfen Sie, ob es Konflikte zwischen der Organisationsbenutzergruppe und einer vorhandenen Rolle gibt:

    SHOW ORGANIZATION USER GROUPS;
    
    Copy

    Vergewissern Sie sich, dass der Wert der Spalte is_imported TRUE lautet, was bedeutet, dass es keinen Konflikt gab.

  5. Listen Sie die Benutzer auf, die dem Konto hinzugefügt wurden, und prüfen Sie auf Konflikte:

    SHOW ORGANIZATION USERS IN ORGANIZATION USER GROUP data_stewards_group;
    
    Copy

    Vergewissern Sie sich, dass der Wert der Spalte is_imported für alle Benutzer der Organisation TRUE lautet, was bedeutet, dass es keine Konflikte gab.