HOW TO

BUG-000095963: Benutzer, die mit dem Werkzeug "Datenbankbenutzer erstellen" in SQL Server erstellt wurden, können nicht registrierte Tabellen und Sichten anzeigen, obwohl sie nicht über die SELECT-Berechtigung verfügen

Last Published: April 24, 2024

Beschreibung

Beim Herstellen einer Verbindung mit einer Geodatabase in SQL Server können bestimmte Benutzer alle nicht registrierten Tabellen und Sichten anzeigen, obwohl ihnen die SELECT-Berechtigung nicht erteilt ist. Wird jedoch eines dieser Objekte ausgewählt, wird eine Fehlermeldung zurückgegeben, und der Benutzer kann keine Daten oder Eigenschaften dieser Tabellen oder Sichten anzeigen. Dieses Verhalten tritt in ArcGIS for Desktop 10.2.1 mit Utilities & Telcom Update Patch 5 (UTUP5), 10.4, 10.4.1 und ArcGIS Pro 1.2 auf.

Ursache

Benutzern, die mit dem Geoverarbeitungswerkzeug "Datenbankbenutzer erstellen" erstellt wurden, wird die Berechtigung VIEW DEFINITION erteilt, sodass sie eine Liste der anderen Benutzer und Rollen im Dialogfeld "Benutzer/Rolle" anzeigen können (Zugriff über das Dialogfeld "Berechtigungen"). Mit der Berechtigung VIEW DEFINITION können Benutzer SQL Server-Datenbankmetadaten anzeigen, einschließlich Listen von Benutzern in dieser Datenbank und Listen von Datenbankobjekten, z. B. Tabellen und Sichten.

In ArcGIS 10.4 wurde BUG-0000917818 behoben (um die Performance von Verbindungen zu großen Geodatabases für Nicht-DBO-Benutzer zu verbessern). Um die Performance der Verbindung zu verbessern, wurde ArcGIS so geändert, dass es beim Filtern von Tabellen den Datenbanksystemkatalog als verlässliche Quelle verwendet, was erheblich schneller ist als das Überprüfen von Berechtigungen für jede Tabelle in der Datenbank. Benutzer mit der Berechtigung VIEW DEFINITION sehen jedoch die Sichten und Tabellen in den Katalogtabellen des Datenbanksystems, auch wenn sie keinen Zugriff auf deren Inhalt haben.

Lösung oder Problemumgehung

Dieses Verhalten wird in der nächsten Version von ArcGIS behoben. Wenn Sie ArcGIS Pro 1.2, ArcGIS for Desktop 10.4, 10.4.1 oder 10.2.1 mit UTUP5 verwenden und dieses Verhalten auftritt, können Sie dem betroffenen Benutzer die Berechtigung VIEW DEFINITION entziehen. Beachten Sie, dass durch den Entzug dieser Berechtigung keine Liste der verfügbaren Benutzer oder Rollen mehr im ArcGIS Desktop-Dialogfeld "Benutzer/Rolle" angezeigt wird. Objektberechtigungen können in diesem Dialogfeld verwaltet werden, indem der Name des Benutzers oder der Rolle manuell eingegeben wird, aber alle verfügbaren Benutzer- oder Rollennamen werden im Dialogfeld nicht angezeigt.

  1. Navigieren Sie in SQL Server Management Studio zu der Datenbank, in der die Berechtigungen des Benutzers geändert werden müssen.
  2. Klicken Sie mit der rechten Maustaste auf das Datenbanksymbol, und wählen Sie Eigenschaften aus.
  3. Wählen Sie die Seite Berechtigungen aus.
  4. Wählen Sie Benutzer aus.
  5. Wählen Sie unter Berechtigungen für <Benutzer> die Registerkarte Explizit aus, scrollen Sie nach unten zu Definition anzeigen, und deaktivieren Sie das Kontrollkästchen Erteilen.
  6. Klicken Sie auf OK.

Abbildung des Dialogfelds "Datenbankeigenschaften"

Artikel-ID: 000013027

Holen Sie sich Unterstützung mit KI

Lösen Sie Ihr Problem schnell mit dem Esri Support AI Chatbot.

Beginnen Sie jetzt mit dem Chatten

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Beginnen Sie jetzt mit dem Chatten

Zu Download-Optionen wechseln