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 Datenbank oder Enterprise-Geodatabase anzeigen oder ändern können, müssen Sie ihnen die Berechtigung dazu erteilen.

Detailinformationen:
Für Enterprise-Geodatabases und Datenbanken wird der Datenbesitzer durch den Benutzer bestimmt, der in der Datenbankverbindung angegeben ist, die bei Erstellung der Feature-Class oder Tabelle mit Werkzeugen in ArcGIS-Clients verwendet wird.

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 lediglich SELECT-Berechtigungen 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 Daten 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 Python-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.

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

  • 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 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 attributiert ist oder die Beziehungsart "Viele-zu-Viele" lautet, werden Berechtigungen bei der Zuweisung an die Quellklasse automatisch an die Zwischentabelle 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, eine Verbindung zum Dataset herzustellen 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 wiederrufen:

  • 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"

  1. Stellen Sie eine Verbindung mit der Datenbank oder Geodatabase her, die die Daten enthält, deren Eigentümer 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 Sie gewähren bzw. widerrufen möchten, 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 über Berechtigungen in der Datenbank verfügen, in der alle Benutzer und Rollen in der Datenbank aufgelistet sind, können Sie die Datenbankbenutzer oder Rollen auswählen, die Sie aus der Liste hinzufügen möchten, indem Sie das Kontrollkästchen neben dem jeweiligen Namen aktivieren. 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 eingeben.
    3. Klicken Sie auf OK, um das Dialogfeld Benutzer/Rolle zu schließen.
    4. Aktivieren Sie die Kontrollkästchen der Berechtigungen, die Sie für die einzelnen Benutzer oder Rollen gewähren möchten, 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. 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 Aktualisieren, Einfügen und Löschen als Gruppe, nicht einzeln gewährt werden.

  1. Stellen Sie eine Verbindung mit der Geodatabase oder 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, für die Sie Berechtigungen ändern möchten.
  4. Geben Sie den Namen des Benutzers oder der Gruppe mit den Berechtigungen ein, die Sie ändern möchten.
  5. Verwenden Sie die Dropdown-Listen Anzeigen und Bearbeiten, um die Berechtigungen auszuwählen, die Sie dem angegebenen Benutzer bzw. der Gruppe gewähren möchten.

    Um Bearbeitungsberechtigungen zuzuweisen, müssen Sie auch Anzeigeberechtigungen erteilen.

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

Verwenden eines Python-Skripts

Um für ein eigenes Dataset Berechtigungen mithilfe eines Python-Skripts zu gewähren oder zu widerrufen, können Sie die Funktion ChangePrivileges_management verwenden.

  1. Erstellen Sie eine Datenbankverbindung 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.