Gewähren und Widerrufen von Dataset-Berechtigungen in Datenbanken und Enterprise-Geodatabases

Mit der Standard- oder Advanced-Lizenz verfügbar.

Um zuzulassen, dass andere Datenbankbenutzer die Inhalte beliebiger Daten in einer relationalen Datenbank oder Enterprise-Geodatabase anzeigen oder ändern können, müssen Sie ihnen die Berechtigung dazu erteilen.

Detailinformationen:

Für Enterprise-Geodatabases und relationale Datenbanken wird der Datenbesitzer durch den Benutzer bestimmt, der in der Datenbankverbindung angegeben ist, die bei Erstellung des Datasets mit Werkzeugen in ArcGIS-Clients verwendet wird. Bei einem Dataset handelt es sich um eine Feature-Class, Tabelle oder Sicht in einer Datenbank oder Enterprise-Geodatabase sowie Feature-Datasets in einer Enterprise-Geodatabase.

Als Besitzer des Datasets können Sie das Dialogfeld Berechtigungen, das Geoverarbeitungswerkzeug Berechtigungen ändern oder die Funktion ChangePrivileges_management in einem Python-Skript verwenden, um anzugeben, welche Berechtigungen ein Benutzer oder eine Gruppe für ein bestimmtes Dataset hat.

Sie können die Berechtigung zum Auswählen von Daten erteilen, d. h., dass der Benutzer den Inhalt eines Datasets lesen und auswählen, jedoch nicht ändern kann. Sie können auch Berechtigungen zum Aktualisieren, Einfügen und Löschen gewähren, sodass der Benutzer den Inhalt eines Datasets sowohl lesen als auch ändern kann.

Für das Erteilen und Widerrufen von Berechtigungen für ein Dataset in einer Datenbank oder Enterprise-Geodatabase in ArcGIS gelten die folgenden Regeln:

  • Nur der Besitzer einer Tabelle kann Berechtigungen für das Dataset ändern.
  • Nur der Besitzer einer Tabelle kann das Dataset löschen oder seine Schemadefinition ändern. Selbst wenn einem anderen Besitzer INSERT-, UPDATE- und DELETE-Berechtigungen für das Dataset gewährt werden, kann dieser Benutzer das Schema nicht ändern.
  • Wenn Sie einem Benutzer INSERT-, UPDATE- oder DELETE-Berechtigungen gewähren, müssen Sie auch die SELECT-Berechtigung gewähren. Benutzer müssen das Dataset lesen können, bevor sie es bearbeiten.
  • Die Rollen "dbo" und "db_owner" werden nicht in der Liste Benutzer/Rolle des Dialogfeldes Berechtigungen für Microsoft SQL Server-Datenbanken angezeigt. Diesen Benutzern sind automatisch Berechtigungen für alle Daten in der Datenbank zugewiesen. Die Berechtigungen sind je nach Rolle unterschiedlich, und Sie können diese Berechtigungen nicht widerrufen.
  • PostgreSQL-Anmelderollen oder -gruppen, denen der Administratorstatus in der Datenbank gewährt wurde, werden nicht in der Liste Benutzer/Rolle des Dialogfeldes Berechtigungen angezeigt. Diese Benutzer haben automatisch vollständige Berechtigungen für alle Daten, und Sie können diese Berechtigungen nicht widerrufen.
  • Sie können die Berechtigungen eines Benutzers immer nur für ein Dataset über das Dialogfeld Berechtigungen ändern. Um Berechtigungen für mehrere Datasets gleichzeitig zu ändern, verwenden Sie stattdessen das Geoverarbeitungswerkzeug Berechtigungen ändern oder stattdessen die ArcPy-Funktion.
  • Zum Widerrufen von Berechtigungen ist eine exklusive Sperre für das Dataset erforderlich. Sind andere Benutzer mit dem Dataset verbunden, können Sie die Berechtigungen nicht widerrufen.
  • Sie können ArcGIS nicht verwenden, um Berechtigungen für Tabellen in Cloud Data Warehouses zu gewähren bzw. zu widerrufen.

Die folgenden Regeln gelten nur für das Gewähren und Widerrufen von Berechtigungen für Datasets in einer Enterprise-Geodatabase:

  • Wenn sich das Dataset in einer Enterprise-Geodatabase befindet, verwenden Sie die unten aufgeführten ArcGIS-Werkzeuge, um Berechtigungen zu gewähren und zu widerrufen. Dadurch wird sichergestellt, dass die Benutzer Zugriff auf alle erforderlichen Geodatabase-Systemtabellen haben, die mit dem Dataset verknüpft sind.
  • Auf alle Feature-Classes eines Feature-Datasets müssen dieselben Benutzerberechtigungen angewendet werden.
  • Wenn einer Feature-Class oder einer Tabelle, die an einer Beziehungsklasse beteiligt ist, Berechtigungen erteilt werden, müssen diese sowohl der Quell- als auch der Zielklasse erteilt werden. Wenn sich Änderungen an der Quell-Feature-Class auf die Ziel-Feature-Class auswirken, müssen Sie Berechtigungen zum Aktualisieren, Einfügen oder Löschen für beide Feature-Classes gewähren.

    Wenn sich die Quell- und Ziel-Feature-Classes innerhalb des gleichen Feature-Datasets befinden, gelten für sie dieselben Berechtigungen, da Berechtigungen auf Feature-Dataset-Ebene gewährt werden. Wenn sich die Ursprungs- und Ziel-Classes jedoch nicht im selben Feature-Dataset befinden, müssen Sie sicherstellen, dass sowohl den Ursprungs- als auch den Ziel-Classes die richtigen Berechtigungen erteilt werden. Wenn die Beziehungsklasse attribuiert ist oder die Beziehungsart "Viele-zu-Viele" lautet, werden Berechtigungen bei der Zuweisung an die Quellklasse automatisch an die Zwischentabelle (und nicht an die Zielklasse) weitergegeben.

  • Wenn das Dataset nicht versioniert ist, können Sie die Berechtigungen zum Aktualisieren, Einfügen und Löschen einzeln im Dialogfeld Berechtigungen gewähren und widerrufen. Sie können einem Benutzer beispielsweise SELECT- und UPDATE-Berechtigungen erteilen, die es dem Benutzer ermöglichen, das Dataset zu öffnen und vorhandene Features zu ändern, es jedoch nicht zulassen, dass der Benutzer neue Features hinzufügt oder vorhandene Features löscht.
  • Wenn das Dataset als für die traditionelle Versionierung registriert ist, müssen die Berechtigungen, die einem Benutzer das Ändern eines Datasets (UPDATE, INSERT und DELETE) erlauben, als Gruppe gewährt und widerrufen werden.
  • Wenn das Dataset für die traditionelle Versionierung registriert ist, muss der Geodatabase-Administrator uneingeschränkte Berechtigungen für das Dataset haben. Daher können Sie für solche Datasets keine der Berechtigungen des Geodatabase-Administrators widerrufen.
  • Datasets, die für die Verzweigungsversionierung registriert sind, können nur über Web-Feature-Layer bearbeitet werden. Der Zugriff auf die Daten wird dabei über die Einstellungen im Web-Feature-Layer gesteuert. Da nur der Dataset-Besitzer die nach Verzweigung versionierten Daten veröffentlichen kann, gibt es keinen Grund, anderen Datenbankbenutzern Berechtigungen für die Daten in der Geodatabase zu gewähren.

Verwenden Sie eine der folgenden Methoden, um Berechtigungen für Datasets, die Sie besitzen, zu gewähren oder zu widerrufen:

  • Dialogfeld Berechtigungen: Im Dialogfeld Berechtigungen können Sie anzeigen, welche Berechtigungen ein Benutzer oder eine Gruppe für ein bestimmtes Dataset hat. Sie können Berechtigungen für das Dataset außerdem mehreren Benutzern oder Gruppen gleichzeitig gewähren.
  • Werkzeug Berechtigungen ändern: Sie können Berechtigungen für mehrere Datasets für einen Benutzer oder eine Gruppe gewähren, wenn Sie das Geoverarbeitungswerkzeug Berechtigungen ändern verwenden.
  • Python-Skript: Sie können ein Python-Skript auf Computern mit einer ArcGIS Server-Installation ausführen. Berechtigungen können für mehrere Datasets geändert werden.

Verwenden des Dialogfelds "Berechtigungen"

Führen Sie die folgenden Schritte aus, um über das Dialogfeld Berechtigungen in ArcGIS Pro Berechtigungen zu gewähren bzw. zu widerrufen:

  1. Stellen Sie eine Verbindung mit der relationalen Datenbank oder der Enterprise-Geodatabase her, die die Daten enthält, deren Besitzer Sie sind und für die Sie Berechtigungen gewähren oder widerrufen möchten.
  2. Klicken Sie mit der rechten Maustaste auf das Dataset, und klicken Sie auf Berechtigungen.
  3. Wenn der Benutzer oder die Rolle, deren Berechtigungen Sie ändern möchten, in der Liste enthalten ist, aktivieren bzw. deaktivieren Sie die Kontrollkästchen der Berechtigungen, die gewährt bzw. widerrufen werden sollen, und klicken Sie auf OK, um die Änderungen zu übernehmen.
    Hinweis:

    Wenn Sie alle Berechtigungsfelder deaktivieren, wird der Benutzer oder die Rolle aus der Liste entfernt.

  4. Wenn sich der Benutzer oder die Rolle nicht in der Liste befinden, gehen Sie wie folgt vor:
    1. Klicken Sie auf Benutzer hinzufügen, um das Dialogfeld Benutzer/Rolle zu öffnen.
    2. Wenn Sie in der Datenbank über die Berechtigungen zum Anzeigen aller Benutzer und Rollen in der Datenbank verfügen, können Sie das Kontrollkästchen für die Datenbankbenutzer oder Rollen neben dem Namen des Benutzers oder der Rolle aktivieren, um diese hinzuzufügen. Zum Gewähren von Berechtigungen können Sie auch den Namen des Datenbankbenutzers, die Datenbankrolle, die Anmeldedaten für das Betriebssystem oder die Windows-Gruppe, für die Berechtigungen erteilt werden, eingeben.
    3. Klicken Sie auf OK, um das Dialogfeld Benutzer/Rolle zu schließen.
    4. Aktivieren Sie die Kontrollkästchen der Berechtigungen, die für die einzelnen Benutzer oder Rollen erforderlich sind, und klicken Sie auf OK.

Verwenden des Werkzeugs "Berechtigungen ändern"

Mit dem Werkzeug Berechtigungen ändern können Sie Berechtigungen für Datasets, deren Eigentümer Sie sind, gewähren oder widerrufen. Das Werkzeug befindet sich in der Toolbox "Data Management" im Toolset "Geodatabase-Verwaltung".

Mit diesem Werkzeug können Sie die Berechtigungen eines Benutzers oder einer Gruppe für mehrere Datasets gleichzeitig ändern. Diese Berechtigung wird für alle angegebenen Datasets gewährt.

Im Werkzeug Berechtigungen ändern wird nicht anzeigt, welche Berechtigungen dem Benutzer für das Dataset gewährt wurden. Darüber hinaus müssen die Berechtigungen zum Einfügen, Aktualisieren und Löschen als Gruppe gewährt werden. Sie können nicht einzeln gewährt werden.

  1. Stellen Sie eine Verbindung mit der Enterprise-Geodatabase oder der relationalen Datenbank als Besitzer des Datasets her, für das Sie Berechtigungen gewähren oder widerrufen möchten.
  2. Öffnen Sie das Werkzeug Berechtigungen ändern.
  3. Navigieren Sie zu der Datenbankverbindung, und wählen Sie die Datasets aus.
  4. Geben Sie den Namen des Benutzers oder der Gruppe ein, dessen oder deren Dataset-Berechtigungen geändert werden.
  5. Verwenden Sie die Dropdown-Listen Anzeigen und Bearbeiten, um die Berechtigungen auszuwählen, die dem angegebenen Benutzer bzw. der Gruppe gewährt werden sollen.

    Bei Auswahl von Bearbeiten muss auch die Berechtigung zum Anzeigen gewährt werden.

  6. Klicken Sie auf OK, um das Werkzeug auszuführen.

Verwenden eines Python-Skripts

Um für eigene Datasets Berechtigungen mithilfe eines Python-Skripts zu gewähren oder zu widerrufen, verwenden Sie die Funktion ChangePrivileges_management.

  1. Erstellen Sie eine Datenbankverbindung (.sde-Datei) mit der Funktion CreateDatabaseConnection_management.

    Sie müssen eine Verbindung als Besitzer des Datasets herstellen und den Benutzernamen mit der Datei speichern.

  2. Führen Sie die Funktion ChangePrivileges_management aus.