Erteilen von Zugriffsberechtigung auf Objekte und Vorgänge (Analysis Services)

Benutzer, die keine Administratoren sind, können auf Cubes, Dimensionen und Miningmodelle in einer Analysis Services-Datenbank durch Mitgliedschaft in einer oder mehreren Datenbankrollen Zugriff erhalten. Analysis Services-Administratoren erstellen diese Datenbankrollen, erteilen diesen Rollen Lese- oder Lese-/Schreibberechtigungen für die Analysis Services-Objekte und weisen den Rollen dann Microsoft Windows-Benutzer und -Gruppen hinzu.

Analysis Services bestimmt die gültigen Berechtigungen für einen bestimmten Windows-Benutzer oder eine bestimmte Windows-Benutzergruppe, indem die Berechtigungen kombiniert werden, die jeder Datenbankrolle zugeordnet sind, zu der der Benutzer oder die Gruppe gehört. Das führt dazu, dass wenn eine bestimmte Datenbankrolle einem Benutzer oder einer Gruppe die Berechtigung zum Anzeigen einer Dimension, eines Measures oder eines Attributs erteilt, eine andere Datenbankrolle diese Benutzer- oder Gruppenberechtigung jedoch nicht erteilt, der Benutzer oder die Gruppe über die Berechtigung zum Anzeigen des Objekts verfügt.

Wichtiger HinweisWichtig

Mitglieder der Analysis Services-Serveradministratorrolle und Mitglieder einer Datenbankrolle, die über die Berechtigung "Vollzugriff (Administrator)" verfügen, haben Zugriff auf alle Daten und Metadaten in der Datenbank und benötigen keine weiteren Berechtigungen zum Anzeigen bestimmter Objekte. Darüber hinaus kann den Mitgliedern der Analysis Services-Serverrolle nicht der Zugriff auf ein beliebiges Objekt in einer beliebigen Datenbank verweigert werden, und Mitgliedern einer Analysis Services-Datenbankrolle, die über die Berechtigung "Vollzugriff (Administrator)" verfügen, kann nicht der Zugriff auf ein beliebiges Objekt in dieser Datenbank verweigert werden. Spezielle Administratoroperationen, z. B. die Verarbeitung, können über separate Rollen mit weniger Berechtigungen autorisiert werden. Einzelheiten dazu finden Sie unter Grant process permissions (Analysis Services).

Für Ihre Datenbank definierte Rollen auflisten

Administratoren können eine einfache DMV-Abfrage in SQL Server Management Studio ausführen, um alle für den Server definierten Rollen aufzulisten.

  1. Klicken Sie in SSMS mit der rechten Maustaste auf eine Datenbank und wählen Sie Neue Abfrage | MDX aus.

  2. Geben Sie die folgende Abfrage ein und klicken Sie F5 zum Ausführen:

    Select * from $SYSTEM.DBSCHEMA_CATALOGS
    

    Die Ergebnisse enthalten den Datenbanknamen, die Beschreibung, den Rollennamen und das Datum der letzten Änderung. Von diesen Informationen ausgehend können Sie Mitgliedschaft und Berechtigungen einer bestimmten Rolle der einzelnen Datenbanken überprüfen.

Überblick über die Autorisierung in Analysis Services von oben nach unten

In diesem Abschnitt wird der grundlegende Workflow zur Konfiguration von Berechtigungen behandelt.

Schritt 1: Serververwaltung

Entscheiden Sie im ersten Schritt, welcher Benutzer Administratorrechte auf Serverebene haben soll. Während der Installation muss der lokale Administrator, der SQL Server installiert, ein oder mehrere Windows-Konten als Analysis Services-Serveradministrator angeben. Serveradministratoren haben alle möglichen Berechtigungen auf einem Server, darunter auch die Berechtigung, jedes Objekt auf dem Server anzuzeigen, zu verändern oder zu löschen oder damit zusammenhängende Daten anzuzeigen. Wenn die Installation abgeschlossen ist, kann ein Serveradministrator Konten hinzufügen oder entfernen, um die Mitgliedschaft in dieser Rolle zu ändern. Weitere Informationen zu dieser Berechtigungsebene finden Sie unter Erteilen von Serveradministratorberechtigungen (Analysis Services).

Schritt 2: Datenbankverwaltung

Nachdem eine tabellarische oder mehrdimensionale Lösung erstellt wurde, wird sie auf dem Server als Datenbank bereitgestellt. Ein Serveradministrator kann Aufgaben der Datenbankverwaltung delegieren, indem er eine Rolle definiert, die Vollzugriffsberechtigungen für die betreffende Datenbank hat. Mitglieder dieser Rolle können Objekte in dieser Datenbank verarbeiten oder abfragen sowie zusätzliche Rollen für den Zugriff auf Cubes, Dimensionen und andere Objekte in der Datenbank selbst erstellen. Weitere Informationen finden Sie unter Grant database permissions (Analysis Services).

Schritt 3: Aktivieren des Zugriffs auf Cubes oder Modelle für Abfrage und Verarbeitung

Standardmäßig können nur Server- und Datenbankadministratoren auf Cubes oder Tabellenmodelle zugreifen. Wenn Sie diese Datenstrukturen für andere Mitarbeiter in Ihrem Unternehmen verfügbar machen möchten, sind zusätzliche Rollenzuweisungen, mit denen Windows-Benutzer- und Gruppenkonten Cubes oder Modellen zugewiesen werden, sowie Berechtigungen, die Read-Privilegien festlegen, erforderlich. Einzelheiten dazu finden Sie unter Grant cube or model permissions (Analysis Services).

Verarbeitungsaufgaben können von anderen Administratorfunktionen isoliert werden, sodass Server- und Datenbankadministratoren diese Aufgabe an andere Mitarbeiter delegieren oder eine unbeaufsichtigte Verarbeitung durch Angabe bestimmter Dienstkonten, die eine Planungssoftware ausführen, konfigurieren können. Einzelheiten dazu finden Sie unter Grant process permissions (Analysis Services).

HinweisHinweis

Benutzer benötigen keine Berechtigungen für die Verweistabellen in der zugrunde liegenden relationalen Datenbank, aus der Analysis Services seine Daten lädt, und benötigen keine Berechtigungen auf Dateiebene für den Computer, auf dem die Instanz von Analysis Services ausgeführt wird.

Schritt 4 (optional): Zulassen oder Verweigern des Zugriffs auf innere Cubeobjekte

Analysis Services bietet Sicherheitseinstellungen zur Festlegung von Berechtigungen für einzelne Objekte, darunter Dimensionselemente und Zellen in einem Datenmodell. Detaillierte Informationen zu diesem Thema finden Sie unter Erteilen von benutzerdefiniertem Zugriff auf Dimensionsdaten (Analysis Services) und Grant custom access to cell data (Analysis Services).

Sie können die Berechtigungen je nach Benutzeridentität auch variieren. Dies wird oft auch als dynamische Sicherheit bezeichnet und mithilfe der Funktion UserName (MDX) umgesetzt

Bewährte Methoden

Zur besseren Verwaltung von Berechtigungen schlagen wir ungefähr den folgenden Ansatz vor:

  1. Erstellen Sie Rollen nach Funktion (z. B. Datenbankadministrator, Cubeentwickler, Prozessadministrator), sodass auf einen Blick zu sehen ist, wozu die jeweilige Rolle berechtigt. Wie schon erwähnt können Sie Rollen in der Modelldefinition definieren, sodass die betreffende Rolle auch bei späteren Lösungsbereitstellungen noch bestehen bleibt.

  2. Erstellen Sie eine entsprechende Windows-Sicherheitsgruppe in Active Directoy, und behalten Sie diese, um sicherzustellen, dass sie die passenden einzelnen Konten enthält. Dadurch wird die Verantwortlichkeit für Mitgliedschaften in Sicherheitsgruppen auf Sicherheitsexperten übertragen, die bereits Erfahrung mit den entsprechenden Tools und Prozessen haben, die in Ihrem Unternehmen für die Pflege der Konten verwendet werden.

  3. Erstellen Sie Skripts in SQL Server Management Studio, sodass Sie Rollenzuweisungen schnell replizieren können, wenn ein Modell aus seinen Quelldateien heraus auf einem Server bereitgestellt wird. Informationen zur schnellen Erstellung eines Skripts finden Sie unter Grant cube or model permissions (Analysis Services).

  4. Verwenden Sie eine Benennungskonvention, die den Umfang und die Mitgliedschaft der Rolle reflektiert. Rollennamen sind nur in Design- und Administratortools sichtbar, also verwenden Sie eine Namenskonvention, die zu Ihren Cube-Sicherheitsexperten passt. Beispiel: processadmin-windowsgroup1 zeigt Lesezugriff plus Verarbeitungsrechte für Personen in Ihrem Unternehmen an, deren einzelne Windows-Konten Mitglieder der Sicherheitsgruppe windowsgroup1 sind.

    Die Aufnahme von Kontoinformationen in den Namen kann Ihnen helfen, den Überblick zu behalten, welche Konten in verschiedenen Rollen verwendet werden. Da Rollen additiv sind, bilden die kombinierten Rollen, die mit windowsgroup1 assoziiert sind, einen effektiven Berechtigungssatz für Personen, die zu dieser Sicherheitsgruppe gehören.

  5. Cubeentwickler benötigen Vollzugriffsberechtigungen für Modelle und Datenbanken in der Entwicklung, aber nur Leseberechtigungen, wenn eine Datenbank auf einen Produktionsserver wechselt. Denken Sie daran, Rollendefinitionen und -zuweisungen für alle Szenarien zu entwickeln, einschließlich Entwicklung, Tests und Produktionsbereitstellungen.

Mit einem solchen Ansatz wird die Belastung von Rollendefinitionen und Rollenmitgliedschaften in diesem Modell minimiert und werden die Rollenzuweisungen sichtbar, sodass Cubeberechtigungen einfacher zu implementieren und zu pflegen sind.

Siehe auch

Aufgaben

Erteilen von Serveradministratorberechtigungen (Analysis Services)

Konzepte

Roles and Permissions (Analysis Services)

Von Analysis Services unterstützte Authentifizierungsmethoden