Erteilen von Datenbankberechtigungen (Analysis Services)
Wenn Sie Datenbanken mit Analysis Services verwalten und bereits über Kenntnisse zu relationalen Datenbanken verfügen, müssen Sie zuerst verstehen, dass in Bezug auf Datenzugriff die Datenbank nicht das primäre sicherungsfähige Objekt in Analysis Services ist.
Die primäre Abfragestruktur in Analysis Services ist ein Cube (oder ein tabellarisches Modell), mit Benutzerberechtigungen, die für diese bestimmten Objekte festgelegt sind. Im Gegensatz zur relationalen Datenbank-Engine, bei dem Datenbankanmeldenamen und Benutzerberechtigungen (oft db_datareader
) für die Datenbank selbst festgelegt sind, ist eine Analysis Services-Datenbank hauptsächlich ein Container für die Hauptabfrageobjekte in einem Datenmodell. Wenn Ihr unmittelbares Ziel darin besteht, den Datenzugriff für einen Cube oder ein tabellarisches Modell zu aktivieren, können Sie Datenbankberechtigungen vorerst umgehen und direkt zu diesem Thema wechseln: Erteilen von Cube- oder Modellberechtigungen (Analysis Services).
Datenbankberechtigungen in Analysis Services ermöglichen administrative Funktionen. Weitgefasst gilt dies, wie es der Fall bei der Datenbankberechtigung Vollzugriff ist, oder granularer, wenn Sie die Verarbeitung von Vorgängen delegieren. Berechtigungsebenen für eine Analysis Services-Datenbank können Sie im Bereich Allgemein mit dem Dialogfeld Rolle erstellen festlegen. Dies wird in der folgenden Grafik gezeigt und nachstehend beschrieben.
Es gibt in Analysis Services keine Anmeldenamen. Sie erstellen einfach Rollen und weisen im Bereich Mitgliedschaft Windows-Konten zu. Alle Benutzer, einschließlich der Administratoren, stellen die Verbindung zu Analysis Services über ein Windows-Konto her.
Auf Datenbankebene gibt es drei Berechtigungstypen.
Vollzugriff (Administrator) ─ Vollzugriff ist eine globale Berechtigung, die viele Zugriffsmöglichkeiten in einer Analysis Services-Datenbank mit sich bringt, z.B. die Fähigkeit, jedes Objekt in der Datenbank abzufragen oder zu verarbeiten und die Rollensicherheit zu verwalten. Vollzugriff entspricht dem Datenbankadministratorstatus. Wenn Sie Full Control
auswählen, werden die Berechtigungen Process Database
und Read Definition
ebenfalls ausgewählt und können nicht entfernt werden.
Hinweis
Serveradministratoren (Mitglieder der Serveradministratorrolle) besitzen ebenfalls impliziten Vollzugriff auf jede Datenbank auf dem Server.
Process Database
– Diese Berechtigung wird verwendet, um die Verarbeitung auf Datenbankebene zu delegieren. Als Administrator können Sie diesen Task auslagern, indem Sie eine Rolle erstellen, mit der eine andere Person oder ein Dienst Verarbeitungsvorgänge für ein beliebiges Objekt in der Datenbank aufrufen kann. Alternativ können Sie auch Rollen für die Verarbeitung bestimmter Objekte erstellen. Weitere Informationen finden Sie unter Erteilen von Prozessberechtigungen (Analysis Services).
Read Definition
– Diese Berechtigung gewährt die Möglichkeit, Objektmetadaten zu lesen, abzüglich der Möglichkeit, zugeordnete Daten anzuzeigen. In der Regel wird diese Berechtigung in Rollen verwendet, die für die dedizierte Verarbeitung erstellt wurden. Dadurch wird die Möglichkeit hinzugefügt, Tools wie SQL Server Data Tools oder SQL Server Management Studio zum interaktiven Verarbeiten einer Datenbank zu verwenden. Ohne Read Definition
ist die Berechtigung Process Database
nur in Skriptszenarios effektiv. Wenn Sie die Verarbeitung automatisieren möchten, zum Beispiel durch SSIS oder ein anderes Zeitplanungsmodul, sollten Sie eine Rolle erstellen, die über Process Database
, jedoch nicht über Read Definition
verfügt. Erwägen Sie andernfalls, die beiden Eigenschaften in derselben Rolle zu kombinieren, um unbeaufsichtigte und interaktive Verarbeitung mit SQL Server-Tools zu unterstützen, die das Datenmodell auf einer Benutzeroberfläche grafisch darstellen.
Berechtigung Vollzugriff (Administrator)
In Analysis Services ist ein Datenbankadministrator jede Windows-Benutzeridentität, die einer Rolle zugewiesen ist, die Vollzugriffsberechtigungen (Administrator) enthält. Ein Datenbankadministrator kann jeden Task innerhalb der Datenbank ausführen, einschließlich:
Verarbeiten von Objekten
Lesen von Daten und Metadaten für alle Objekte in der Datenbank, einschließlich Cubes, Dimensionen, Measure-Gruppen, Perspektiven und Data Mining-Modelle
Erstellen oder Anpassen von Datenbankrollen durch Hinzufügen von Benutzern oder Berechtigungen, einschließlich Hinzufügen von Benutzern zu Rollen mit der Berechtigung Vollzugriff
Löschen von Datenbankrollen oder Rollenmitgliedschaften
Registrieren von Assemblys (oder gespeicherten Prozeduren) für die Datenbank
Beachten Sie, dass Datenbankadministratoren keine Datenbanken auf dem Server hinzufügen oder löschen und für andere Datenbanken auf demselben Server auch keine Administratorrechte gewähren können. Diese Berechtigung besitzen nur Serveradministratoren. Weitere Informationen zu dieser Berechtigungsstufe finden Sie unter Erteilen von Serveradministratorberechtigungen (Analysis Services).
Da alle Rollen über den Benutzer definiert werden, wird empfohlen, dass Sie für diesen Zweck eine Rolle erstellen (zum Beispiel mit dem Namen "dbadmin") und dann Windows-Konten von Benutzern und Gruppen entsprechend zuweisen.
Erstellen von Rollen in SSMS
Stellen Sie in SQL Server Management Studio eine Verbindung mit dem instance von Analysis Services her, öffnen Sie den Ordner Datenbanken, wählen Sie eine Datenbank aus, und klicken Sie mit der rechten Maustaste auf Rollen | Neue Rolle.
Geben Sie im Bereich Allgemein einen Namen ein, zum Beispiel DBAdmin.
Aktivieren Sie das Kontrollkästchen Vollzugriff (Administrator) für den Cube. Beachten Sie, dass
Process Database
undRead Definition
automatisch ausgewählt werden. Diese beiden Berechtigungen sind immer in Rollen enthalten, dieFull Control
besitzen.Geben Sie im Mitgliedschaft sbereich die Windows-Konten von Benutzern und Gruppen ein, die mit dieser Rolle eine Verbindung zu Analysis Services herstellen.
Klicken Sie auf OK , um die Erstellung der Rolle zu abzuschließen.
Datenbank verarbeiten
Wenn Sie eine Rolle definieren, die Datenbankberechtigungen gewährt, können Sie einfach überspringen Full Control
und auswählen Process Database
. Diese Berechtigung ermöglicht auf Datenbankebene die Verarbeitung aller Objekte innerhalb der Datenbank. Siehe Erteilen von Prozessberechtigungen (Analysis Services)
Read Definition
Wie Process Database
hat das Festlegen Read Definition
von Berechtigungen auf Datenbankebene eine kaskadierende Auswirkung auf andere Objekte in der Datenbank. Wenn Sie Berechtigungen für das Lesen von Definitionen mit feinerer Granularität festlegen möchten, müssen Sie Im Bereich "Allgemein" "Definition lesen" als Datenbankeigenschaft entfernen. Weitere Informationen finden Sie unter Erteilen von Lesedefinitionsberechtigungen für Objektmetadaten (Analysis Services).
Weitere Informationen
Erteilen von Serveradministratorberechtigungen (Analysis Services)Gewähren von Prozessberechtigungen (Analysis Services)