Sicherheitsarchitektur

Microsoft SQL Server 2005 Analysis Services (SSAS) greift für die Authentifizierung der Benutzer auf Microsoft Windows zurück. Standardmäßig 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, in den einzelnen Analysis Services-Datenbanken Daten auf mehreren Ebenen anzuzeigen oder zu ändern, erteilt werden.
  • Mitglieder einer Datenbankrolle, die über Administratorberechtigungen verfügt, 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 konkrete Berechtigung erteilt wurde.
  • Berechtigungen für eine Analysis Services-Datenbank werden anfangs 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 einer Rolle Berechtigungen erteilt werden können, gehören die Datenbank- und Cubedimensionen, einzelne Dimensionselemente, 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 werden standardmäßig 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 die sichere Überprüfung und Verschlüsselung von Kennwörtern, Überwachung, Ablauf von Kennwörtern, Mindestlänge für Kennwörter und Kontosperrung nach mehreren ungültigen Anmeldeversuchen.

ms174927.note(de-de,SQL.90).gifHinweis:
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. Standardmäßig gestattet Analysis Services keine Verbindung eines Benutzers, der innerhalb der Instanz von Analysis Services nicht über Berechtigungen verfügt.

Die Autorisierung wird nach der erfolgreichen Verbindung des Benutzers mit Analysis Services jedoch nicht angehalten. Die Autorisierung wird fortgesetzt während der Benutzer innerhalb von Analysis Services arbeitet, wenn der Benutzer beispielsweise gespeicherte Serverprozeduren, DMX-Anweisungen (Data Mining Extensions), MDX-Abfragen (Multidimensional Expressions) oder AMO-Befehle (Analysis Management Objects) ausführt. Jedes Mal, wenn Analysis Services eine Aktion durchführen oder auf ein Objekt zugreifen muss, wird ü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 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.
    ms174927.note(de-de,SQL.90).gifHinweis:
    Mitglieder der lokalen Gruppe Administratoren des lokalen Computers sind automatisch Mitglieder der Serverrolle 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 administrative Berechtigungen oder Benutzerberechtigungen (wie Lese-/Schreibberechtigungen für Cubes, Dimensionen, Zellen, Miningstrukturen, Miningmodelle und Datenquellenobjekte) und fügen diesen Datenbankrollen dann Windows-Benutzer und Gruppen hinzu.
    ms174927.note(de-de,SQL.90).gifWichtig:
    Rollenberechtigungen sind kumulativ. Berechtigungen, die einem Benutzer oder einer Gruppe durch eine Datenbankrolle erteilt werden, werden mit den Berechtigungen addiert, die der Benutzer oder die Gruppe durch andere Datenbankrollen besitzt. Falls eine Rolle dem Benutzer oder der Gruppe das Ausführen eines bestimmten 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:Konfigurieren des Zugriffs auf Analysis Services

Administratorrechte

Mitglieder der Serverrolle besitzen automatisch sämtliche Administratorrechte. Dies gilt 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 Datenbankmetadaten
  • Verarbeiten einer oder mehrerer Dimensionen
  • Lesen der Definition einer oder mehrerer Dimensionen
  • Verarbeiten eines oder mehrerer Cubes
  • Lesen der Definition eines oder mehrerer Cubes
  • Verarbeiten einer oder mehrerer Miningstrukturen
  • Verarbeiten eines oder mehrerer Miningmodelle
  • Lesen der Definition einer oder mehrerer Miningstrukturen
  • Lesen der Definition eines oder mehrerer Miningmodelle
  • Lesen der Definition einer oder mehrerer 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:Gewä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, die Berechtigung erteilt werden, statt aller Dimensionselemente nur bestimmte Dimensionselemente anzuzeigen oder zu aktualisieren. Wenn einer Datenbankrolle keine Berechtigungen erteilt werden, eine bestimmte Dimension und einige oder alle Dimensionselemente anzuzeigen oder zu aktualisieren, dann sind die Mitglieder der Datenbankrolle nicht berechtigt, die Dimension oder eines ihrer Elemente anzuzeigen.

ms174927.note(de-de,SQL.90).gifHinweis:
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 sind.

Weitere Informationen finden Sie unter Erteilen 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:Erteilen von Cubezugriff.

Sicherheit auf Zellebene

Eine Datenbankrolle kann angeben, ob ihre Mitglieder Leseberechtigungen, Lesen (abhängig)-Berechtigungen 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, irgendwelche 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 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:Erteilen von benutzerdefiniertem Zugriff auf Zellendaten.

Miningstruktur-, Miningmodell- und Datenquellensicherheit

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 unter Gewä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, Ausnahmebehandlung, Versionsunterstützung, Verteilungs- und 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, aber noch bevor diese von Analysis Services ausgeführt wird, wertet Analysis Services die in der gespeicherten Prozedur enthaltenen Aktionen aus. Analysis Services wertet die Aktionen in einer gespeicherten Prozedur auf Basis der Schnittmenge aus, die gebildet wird aus den Berechtigungen, die dem Benutzer erteilt werden, und dem Berechtigungssatz, der zum Ausführen der Prozedur verwendet wird. Falls die gespeicherte Prozedur eine Aktion enthält, die durch die Datenbankrolle des Benutzers nicht ausgeführt werden kann, dann 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 erhöht 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 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:Verwenden von gespeicherten Prozeduren

Verschlüsselung

Standardmäßig erfordert Analysis Services, dass die gesamte Kommunikation zwischen den Clients und der Instanz von Analysis Services verschlüsselt wird.

Weitere Informationen:Sichern der Clientkommunikation mit einer Analysis Services-Instanz

Standardmäßig Aus

Eine Instanz von Analysis Services ist so entworfen, dass sie standardmäßig sicher ist. Aus diesem Grund sind standardmäßig alle Features deaktiviert, die sich auf die Sicherheit auswirken können. Die folgenden Features sind standardmäßig 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 Client-Authentifizierung
  • Active Directory-Integration
  • Ad-Hoc-OpenRowset-Abfragen
  • 8.0-Client-Konnektivität
  • Absturzberichte

Siehe auch

Konzepte

Sichern einer Instanz von Analysis Services

Andere Ressourcen

Konfigurieren des Zugriffs auf Analysis Services

Hilfe und Informationen

Informationsquellen für SQL Server 2005