Freigeben über


Sicherheitsarchitektur für den Benutzerzugriff

MicrosoftSQL ServerAnalysis Services greift für die Authentifizierung der Benutzer auf Microsoft Windows zurück. In der Standardeinstellung können nur Benutzer, die in Analysis Services über Berechtigungen verfügen, eine Verbindung mit Analysis Services herstellen. Nachdem ein Benutzer eine Verbindung mit Analysis Services hergestellt hat, wird entweder direkt über die Analysis Services-Rollen, zu denen der Benutzer gehört, oder über die Mitgliedschaft in einer Windows-Rolle ermittelt, welche Berechtigungen der Benutzer in Analysis Services besitzt.

  • Analysis Services enthält eine einzige feste Serverrolle, die ihren Mitgliedern die Berechtigung erteilt, innerhalb der gesamten Instanz beliebige Tasks auszuführen.

  • Benutzer, die keine Mitglieder der festen Serverrolle sind, können Mitglieder einer oder mehrerer Datenbankrollen werden. Jede Datenbankrolle besitzt einen benutzerdefinierten Satz von Berechtigungen, mit denen Benutzer in einer bestimmten Datenbank auf Daten zugreifen und Tasks ausführen können.

  • Einer Datenbankrolle können Administratorberechtigungen, Berechtigungen zum Verarbeiten von Objekten, Berechtigungen zum Anzeigen der Objektmetadaten sowie Berechtigungen, um in den einzelnen Analysis Services-Datenbanken Daten auf mehreren Ebenen anzuzeigen oder zu ändern, erteilt werden.

  • Mitglieder einer Datenbankrolle, die über Administratorberechtigungen verfügen, können alle in der Datenbank vorhandenen Daten anzeigen oder aktualisieren. Mitglieder der anderen Datenbankrollen können nur die Datenobjekte anzeigen oder aktualisieren, für die ihnen die entsprechende Berechtigung erteilt wurde.

  • Berechtigungen für eine Analysis Services-Datenbank werden zuerst auf Datenbankebene erteilt. Wenn eine Datenbankrolle Berechtigungen auf Datenbankebene besitzt, müssen der Rolle für jedes in der Datenbank enthaltene Objekt spezifische Berechtigungen erteilt werden. Zu den Objekten, für die in einer Rolle Berechtigungen erteilt werden können, gehören die Datenbank- und Cubedimensionen, einzelne Dimensionselemente, Cubes, einzelne Zellen innerhalb eines Cubes, Miningstrukturen, Miningmodelle, Datenquellen und gespeicherte Prozeduren.

  • Zusätzlich zu diesen Sicherheitsarchitekturkomponenten verschlüsselt Analysis Services die gesamte Client/Server-Kommunikation, um das Risiko zu minimieren, dass Benutzer ohne Berechtigung Zugriff auf nicht autorisierte Informationen erhalten. Darüber hinaus sind in der Standardeinstellung alle Analysis Services-Features deaktiviert, die bei unsachgemäßer Konfiguration oder beim Einsatz in einer nicht dafür geeigneten Umgebung ein Sicherheitsrisiko darstellen können. Sie können z. B. zulassen, dass Benutzer ohne Authentifizierung eine Verbindung mit Analysis Services herstellen, oder Sie können eine in Klartext übermittelte Authentifizierung akzeptieren. Da dies bei falscher Ausführung jedoch ein Sicherheitsrisiko darstellt, müssen Sie die Standardeinstellungen ändern, um diese Art von Features zu aktivieren.

Windows-Authentifizierung

Der Zugriff auf Analysis Services basiert auf der Microsoft Windows-Authentifizierung. Dieses Authentifizierungsmodell setzt voraus, dass Benutzer vom Windows-Betriebssystem authentifiziert sein müssen, bevor sie auf in Analysis Services gespeicherte Daten zugreifen oder Analysis Services-Objekte verwalten können. Indem das Betriebssystem die Authentifizierung durchführt, kann Analysis Services die Vorteile der Sicherheitsfeatures von Windows nutzen, wie z. B. die sichere Überprüfung und Verschlüsselung von Kennwörtern, die Überwachung, den Ablauf von Kennwörtern, die Mindestlänge für Kennwörter und die Kontosperrung nach mehreren ungültigen Anmeldeversuchen.

HinweisHinweis

Wenn die Instanz von Analysis Services so konfiguriert ist, dass sie den anonymen Zugriff erlaubt, authentifiziert Windows den Benutzer nicht.

Die Windows-Authentifizierung und Analysis Services arbeiten wie folgt zusammen:

  1. Wenn sich ein Benutzer im Windows-Netzwerk anmeldet, überprüft ein Windows-Domänencontroller den Benutzernamen und das Kennwort des Benutzers und richtet damit die Authentifizierungsinformationen des Benutzers für das Netzwerk ein.

  2. Wenn der Benutzer später versucht, eine Verbindung mit Analysis Services herzustellen, überprüft Analysis Services mit einem Windows-Domänencontroller die Netzwerkauthentifizierungsdaten des Benutzers.

Autorisierung

Nach der Authentifizierung eines Benutzers ermittelt Analysis Services im nächsten Schritt, ob der Benutzer berechtigt ist, Daten anzuzeigen, Daten zu aktualisieren, Metadaten anzuzeigen oder administrative Aufgaben auszuführen. Wenn der Benutzer oder eine Gruppe, in der der Benutzer Mitglied ist, in der Instanz von Analysis Services über bestimmte Berechtigungen verfügt, gestattet Analysis Services die Verbindung des Benutzers. In der Standardeinstellung gestattet Analysis Services keine Verbindung eines Benutzers, der innerhalb der Instanz von Analysis Services nicht über Berechtigungen verfügt.

Die Autorisierung ist nach der erfolgreichen Verbindung des Benutzers mit Analysis Services jedoch noch nicht beendet. Die Autorisierung wird fortgesetzt, während der Benutzer innerhalb von Analysis Services arbeitet, beispielsweise wenn der Benutzer gespeicherte Serverprozeduren, DMX-Anweisungen (Data Mining Extensions), MDX-Abfragen (Multidimensional Expressions) oder AMO-Befehle (Analysis Management Objects) ausführt. Wenn Analysis Services eine Aktion durchführen oder auf ein Objekt zugreifen muss, wird jedesmal überprüft, ob der Benutzer berechtigt ist, auf das Objekt zuzugreifen oder den Befehl auszuführen. Wenn der Benutzer keine entsprechenden Berechtigungen besitzt, gibt Analysis Services einen Berechtigungsfehler zurück.

Server- und Datenbankrollen

In Analysis Services stehen zwei Arten von Rollen zur Verfügung: die Serverrolle und die Datenbankrollen. Im Folgenden werden kurz die Unterschiede zwischen diesen beiden Rollen beschrieben:

  • Es gibt nur eine Serverrolle, und die Mitglieder dieser Rolle verfügen innerhalb der Instanz von Analysis Services über vollständige Administratorrechte.

    HinweisHinweis

    Mitglieder der lokalen Administratorengruppe des lokalen Computers sind automatisch Mitglieder der Serverrolle in einer Instanz von Analysis Services.

  • Es können mehrere Datenbankrollen vorhanden sein. Mitglieder der Serverrolle erstellen die Datenbankrollen innerhalb der einzelnen Datenbanken und erteilen diesen Datenbankrollen dann administrative Berechtigungen oder Benutzerberechtigungen (wie Lese-/Schreibberechtigungen für Cubes, Dimensionen, Zellen, Miningstrukturen, Miningmodelle und Datenquellenobjekte). Anschließend fügen sie den Datenbankrollen Windows-Benutzer und Gruppen hinzu.

    Wichtiger HinweisWichtig

    Rollenberechtigungen sind kumulativ. Berechtigungen, die einem Benutzer oder einer Gruppe durch eine Datenbankrolle erteilt werden, werden den Berechtigungen hinzugefügt, die der Benutzer oder die Gruppe durch andere Datenbankrollen erhält. Wenn eine Rolle dem Benutzer oder der Gruppe das Ausführen bestimmter Tasks oder das Anzeigen bestimmter Daten untersagt, eine andere Rolle dem Benutzer oder der Gruppe diese Berechtigung allerdings erteilt, dann ist der Benutzer oder die Gruppe berechtigt, den Task auszuführen bzw. die Daten anzuzeigen.

Weitere Informationen finden Sie unterKonfigurieren der Sicherheit (Analysis Services - Mehrdimensionale Daten)

Administratorrechte

Mitglieder der Serverrolle besitzen automatisch sämtliche Administratorrechte. Dies gilt jedoch nicht für Mitglieder einer Datenbankrolle. Einer Datenbankrolle kann der Vollzugriff (Administratorrechte) oder ein eingeschränkter Satz der in der folgenden Liste aufgeführten Administratorrechte erteilt werden:

  • Verarbeiten der Datenbank

  • Lesen der Metadaten einer Datenbank

  • Verarbeiten von einer oder mehreren Dimensionen

  • Lesen der Definition von einer oder mehreren Dimensionen

  • Verarbeiten von einem oder mehreren Cubes

  • Lesen der Definition von einem oder mehreren Cubes

  • Verarbeiten von einer oder mehrerer Miningstrukturen

  • Verarbeiten von einem oder mehreren Miningmodellen

  • Lesen der Definition von einer oder mehrerer Miningstrukturen

  • Lesen der Definition von einem oder mehreren Miningmodellen

  • Lesen der Definition von einer oder von mehreren Datenquellen

Nur Mitglieder der Serverrolle und Mitglieder einer Datenbankrolle mit Vollzugriff können Analysis Services-Daten lesen, ohne zusätzliche Berechtigungen zu benötigen. Andere Benutzer können Analysis Services-Daten nur dann lesen, wenn ihre Datenbankrolle ihnen ausdrücklich Lese-/Schreibberechtigungen für die Datenobjekte (wie Dimensionen, Cubes, Zellen und Miningmodelle) in Analysis Services erteilt.

Weitere Informationen finden Sie unterGewähren von serverweiten Administratorberechtigungen

Sicherheit auf Dimensionsebene

Eine Datenbankrolle kann angeben, ob ihre Mitglieder berechtigt sind, Dimensionselemente der angegebenen Datenbankdimensionen anzuzeigen oder zu aktualisieren. Darüber hinaus können der Rolle innerhalb jeder Dimension, für die einer Datenbankrolle Berechtigungen erteilt wurden, nur die Berechtigung zum Anzeigen oder Aktualisieren bestimmter Dimensionselemente anstatt aller Dimensionselemente erteilt werden. Wenn einer Datenbankrolle keine Berechtigungen zum Anzeigen oder Aktualisieren einer bestimmten Dimension bzw. einiger oder aller Dimensionselemente erteilt werden, sind die Mitglieder dieser Datenbankrolle nicht berechtigt, die Dimension bzw. eines ihrer Elemente anzuzeigen.

HinweisHinweis

Einer Datenbankrolle erteilte Dimensionsberechtigungen werden auf die auf der Datenbankdimension basierenden Cubedimensionen angewendet, sofern innerhalb des Cubes, der die Datenbankdimension verwendet, nicht explizit andere Berechtigungen erteilt wurden.

Weitere Informationen finden Sie unterErteilen des Dimensionszugriffs und Gewähren von benutzerdefiniertem Zugriff auf Dimensionsdaten.

Sicherheit auf Cubeebene

Eine Datenbankrolle kann angeben, ob ihre Mitglieder Lese- oder Lese-/Schreibberechtigungen für einen oder mehrere in einer Datenbank vorhandene Cubes besitzen. Wenn einer Datenbankrolle nicht für mindestens einen Cube Lese- oder Lese-/Schreibberechtigungen erteilt werden, dann sind die Mitglieder der Datenbankrolle nicht berechtigt, Cubes der Datenbank anzuzeigen. Dies gilt unabhängig davon, ob diese Mitglieder durch die Rolle berechtigt sind, Dimensionselemente anzuzeigen.

Weitere Informationen finden Sie unterErteilen von Cubezugriff.

Sicherheit auf Zellebene

Eine Datenbankrolle kann angeben, ob ihre Mitglieder Leseberechtigungen, Berechtigungen für abhängiges Lesen oder Lese-/Schreibberechtigungen für einige oder alle Zellen eines Cubes besitzen. Wenn einer Datenbankrolle keine Berechtigungen für Zellen eines Cubes erteilt werden, dann sind die Mitglieder der Datenbankrolle nicht berechtigt, Cubedaten anzuzeigen. Wenn einer Datenbankrolle auf der Grundlage der Dimensionssicherheit die Berechtigung verweigert wird, bestimmte Dimensionen anzuzeigen, dann kann die Sicherheit auf Zellebene die Berechtigungen der Mitglieder der Datenbankrolle nicht auf die Zellelemente der betroffenen Dimension erweitern. Wenn andererseits einer Datenbankrolle die Berechtigung erteilt wird, Elemente einer Dimension anzuzeigen, dann kann die Sicherheit auf Zellebene verwendet werden, um die Zellelemente der Dimension einzuschränken, die die Mitglieder der Datenbankrolle anzeigen können.

Weitere Informationen finden Sie unterErteilen von benutzerdefiniertem Zugriff auf Zellendaten.

Sicherheit von Miningstrukturen, Miningmodellen und Datenquellen

Eine Datenbankrolle kann angeben, ob ihre Mitglieder Leseberechtigungen oder Lese-/Schreibberechtigungen für Miningstrukturen und Miningmodelle besitzen. Einer Datenbankrolle kann auch die Berechtigung erteilt werden, einen Drillthrough zu den Quelldaten auszuführen, sowie die Berechtigung, eines oder mehrere Miningmodelle zu durchsuchen. Einer Datenbankrolle können außerdem Lese-/Schreibberechtigungen für Datenquellenobjekte erteilt werden. Durch diese Berechtigung kann die Rolle in einer OPENQUERY-Klausel auf diese Datenquelle verweisen und die in dem Datenquellenobjekt definierte Verbindungszeichenfolge verwenden.

Weitere Informationen finden Sie unterGewähren von Zugriff auf Miningstrukturen und Miningmodelle und Gewähren des Zugriffs auf Datenquellen.

Sicherheit der gespeicherten Prozedur

Die in Analysis Services gespeicherten Prozeduren sind externe Routinen, die in einer Microsoft .NET-Programmiersprache geschrieben sind und die Möglichkeiten von Analysis Services erweitern. Mit gespeicherten Prozeduren können Entwickler die Vorteile der sprachübergreifenden Integration, der Ausnahmebehandlung, der Versionsunterstützung, der Verteilungs- und der Debugunterstützung nutzen.

Alle Benutzer können gespeicherte Prozeduren aufrufen. Je nach Konfiguration der gespeicherten Prozedur kann diese entweder im Kontext des die Prozedur aufrufenden Benutzers oder im Kontext eines anonymen Benutzers ausgeführt werden. Da ein anonymer Benutzer keinen Sicherheitskontext besitzt, müssen Sie für diese Möglichkeit gleichzeitig die Instanz von Analysis Services so konfigurieren, dass sie den anonymen Zugriff erlaubt.

Nachdem der Benutzer eine gespeicherte Prozedur aufgerufen hat, werden die Aktionen in der gespeicherten Prozedur von Analysis Services ausgewertet, bevor Analysis Services die gespeicherte Prozedur ausführt. Analysis Services wertet die Aktionen in einer gespeicherten Prozedur auf Grundlage der Schnittmenge der Berechtigungen aus, die dem Benutzer erteilt und die für die Ausführung der Prozedur festgelegt wurden. Wenn die gespeicherte Prozedur eine Aktion enthält, die durch die Datenbankrolle des Benutzers nicht ausgeführt werden kann, wird diese Aktion nicht ausgeführt.

Beim Ausführen gespeicherter Prozeduren werden die folgenden Berechtigungssätze verwendet:

  • **Sicher   **Mit dem Berechtigungssatz "Sicher" hat eine gespeicherte Prozedur keinen Zugriff auf die geschützten Ressourcen in Microsoft .NET Framework. Der Berechtigungssatz lässt nur Berechnungen zu. Dies ist der sicherste Berechtigungssatz. Es gelangen keine Informationen aus Analysis Services heraus, die Berechtigungen können nicht erweitert werden, und das Risiko von Datenmanipulationsangriffen wird minimiert.

  • **Externer Zugriff   **Mit dem Berechtigungssatz "Externer Zugriff" hat eine gespeicherte Prozedur durch die Verwendung von verwaltetem Code Zugriff auf externe Ressourcen. Wenn dieser Berechtigungssatz für eine gespeicherte Prozedur festgelegt wird, werden Programmierfehler ausgeschlossen, die zu einem instabilen Server führen können. Dieser Berechtigungssatz kann jedoch dazu führen, dass Informationen nach außen (außerhalb des Servers) gelangen, und es besteht die Möglichkeit, dass Berechtigungs- und Datenmanipulationsangriffe zunehmen.

  • **Uneingeschränkt   **Mit dem Berechtigungssatz "Uneingeschränkt" hat eine gespeicherte Prozedur durch die Verwendung von Code jeglicher Art Zugriff auf externe Ressourcen. Bei diesem Berechtigungssatz gibt es für gespeicherte Prozeduren keine Gewähr für die Sicherheit und Zuverlässigkeit.

Weitere Informationen finden Sie unterDefinieren von gespeicherten Prozeduren

Verschlüsselung

In der Standardeinstellung erfordert Analysis Services, dass die gesamte Kommunikation zwischen den Clients und der Instanz von Analysis Services verschlüsselt wird.

Weitere Informationen finden Sie unterSichern der Clientkommunikation mit einer Analysis Services-Instanz

Standardmäßig deaktiviert

Eine Instanz von Analysis Services ist so entworfen, dass sie standardmäßig sicher ist. Aus diesem Grund sind in der Standardeinstellung alle Features deaktiviert, die sich auf die Sicherheit auswirken können. Die folgenden Features sind in der Standardeinstellung deaktiviert und müssen gesondert aktiviert werden, wenn sie verwendet werden sollen:

  • HTTP-Konnektivität

  • Ablaufverfolgung

  • Gespeicherte Prozeduren

  • Remotepartitionen

  • Verknüpfte Objekte (An)

  • Verknüpfte Objekte (Von)

  • Data Mining Aggregator

  • Clientschutzebene

  • Webschutzebene

  • Erforderliche Clientauthentifizierung

  • Integration mit Active Directory

  • Ad-Hoc-OpenRowset-Abfragen

  • 8.0-Client-Konnektivität

  • Absturzberichte