Sichern von Modellen

Berichtsmodelle werden auf einem Berichtsserver als Datenquellen zum Erstellen und Verwenden von Ad-hoc-Berichten verwendet. Berichtsmodelle können auf drei Arten geschützt werden: durch den Berichtsserverordner-Namespace, durch die Modellelementsicherheit und durch die Datenbanksicherheit.

Da die Sicherheit für Berichtsmodelle mehrschichtig ist, können für einen Benutzer, der ein Modell in der Ordnerhierarchie anzeigen kann, andere Einschränkungen in der Verwendung des Modells zur Entwurfs- und Laufzeit auftreten. Die Verwendungsmöglichkeit eines Modells als Berichtsdatenquelle hängt von den folgenden Faktoren ab:

  • Rollenbasierte Sicherheit in einem Modell (d. h. die Anzeigemöglichkeit eines Modells in der Berichtsserver-Ordnerhierarchie).

  • Rollenbasierte Sicherheit im Bericht, in dem das Modell als Datenquelle verwendet wird. Wenn ein Benutzer nicht auf den Bericht zugreifen kann, so kann es sein, dass er die im Modell bereitgestellten Daten nicht anzeigen kann. (In Reporting Services können die Daten eines Modells nur in Berichten angezeigt werden. Anwendungen von Drittanbietern können Modelldaten auf andere Weise verfügbar machen.)

  • Sicherheit in Elementen innerhalb des Modells.

  • Datenbanksicherheit auf Anzeige-,Tabellen- oder Spaltenebene.

Sichern eines Berichtsmodells im Ordnernamespace

Wie bei allen auf einem Berichtsserver gespeicherten Elementen können Sie auf Elementebene Rollenzuweisungen definieren, mit denen bestimmt wird, ob ein Benutzer ein Berichtsmodell anzeigen oder verwalten kann.

  • Benutzer mit der Berechtigung zum Anzeigen eines Modells können ein Berichtsmodell in der Berichtsserver-Ordnerhierarchie anzeigen, eine begrenzte Menge an Informationen über das Modell auf der Seite Allgemeine Eigenschaften lesen (beispielsweise beim Erstellen oder Ändern des Berichtsmodells) und für das Modell eine Abfrage ausführen, indem sie in einem beliebigen Ad-hoc-Bericht, in dem das Modell als Datenquelle verwendet wird, auf die Hyperlinks klicken.

  • Benutzer mit der Berechtigung zum Verwalten eines Modells können das Modell löschen, umbenennen und aktualisieren. In der Regel erfordern Modellverwaltungsaufgaben auch die Berechtigung zum Veröffentlichen neuer Modelle. Jedoch ist dies durch die Ordnerrollenzuweisung definiert, durch die bestimmt wird, ob Benutzer dem Modell Elemente hinzufügen können.

Benutzer mit der Berechtigung zum Anzeigen eines veröffentlichten Modells können das Modell nicht direkt öffnen, um seine Inhalte anzuzeigen bzw. um das Modell auf das Dateisystem herunterzuladen. Zur Laufzeit erfolgen alle mit dem Berichtsmodell durchgeführten Interaktionen durch den Bericht, in dem das Modell verwendet wird.

Sichern von Elementen in einem Modell

Mit der Modellelementsicherheit können Sie den Zugriff auf bestimmte Teile eines Modells steuern. Verwenden Sie SQL Server Management Studio zum Konfigurieren der Modellelementsicherheit. Nach der Aktivierung der Modellelementsicherheit können Sie Rollenzuweisungen für bestimmte Knoten im Modellnamespace erstellen. Weitere Informationen finden Sie unter Modellelementsicherheit (Seite) (Berichts-Manager).

Ein Namespace eines Berichtsmodells wird als hierarchische Struktur dargestellt, in der ein Stammknoten, Entitäten, Modellrollen und Felder enthalten sind. In der Struktur sind außerdem Ordner und Perspektiven enthalten, die Sie zum Organisieren (jedoch nicht zum Sichern) von Modellelementen verwenden können. Beim Anzeigen des Modells in Management Studio können Sie die hierarchische Struktur durchsuchen und Rollenzuweisungen auf verschiedenen Ebenen angeben. Sie können Rollenzuweisungen im Stammknoten eines Berichtsmodells angeben, um den Zugriff auf das gesamte Modell zu steuern, oder in Teilen eines Modells, um die Zugriffsberechtigungen auf ausgewählten Verzweigungen zu variieren. So wie die Sicherheit des Berichtsserver-Ordnernamespace unterstützt der Modellnamespace die geerbte Sicherheit für Elemente, die sich weiter unten in der Baumstruktur befinden.

Die Modellelementsicherheit ist standardmäßig deaktiviert. Wenn die Modellelementsicherheit nicht aktiviert ist, werden alle Berechtigungen zum Anzeigen der im Modell dargestellten Daten durch die Rollenzuweisungen im Modell und durch den Bericht in der Berichtsserver-Ordnerhierarchie bestimmt.

Die Modellelementsicherheit ist für den Benutzer transparent. Wenn ein Benutzer keinen Zugriff auf bestimmte Verzweigungen der Modellhierarchie hat, kann für den Benutzer dieser Teil des Modells im Bericht nicht angezeigt werden. Dieser Teil kann weder zum Durchsuchen von Daten noch für die Rückgabe von Daten in einem Bericht verwendet werden. Mithilfe der Modellelementsicherheit wird im Berichtsserver die Abfrage geändert, die an die Datenquelle gesendet wird, um beliebige Teile des Modells auszuschließen, auf die der Benutzer nicht zugreifen kann.

Sichern von Modellen durch die Datenbanksicherheit

Mit der Datenbanksicherheit wird die dritte Sicherheitsebene in einem modellgesteuerten Bericht bereitgestellt. Wenn Sie den Zugriff auf Tabellen oder Spalten beschränken, wird bei jedem nicht autorisierten Zugriff ein Fehler aufgrund einer Zugriffsverweigerung auf die Datenbank zurückgegeben. Wenn Sie in Ihrem Modell Tabellen oder Spalten einschließen, die der Datenbanksicherheit unterliegen, wird eine Datenbank-Fehlermeldung zurückgegeben, wenn ein Benutzer auf ein Modellelement zugreift, das einer Tabelle oder Spalte zugeordnet ist, für die er nicht die Anzeigeberechtigung hat. Während die Datenbanksicherheit auf Tabellen- oder Spaltenebene in einigen Szenarien notwendig ist, ist es wichtig, dass Sie die Auswirkungen der Datenbanksicherheit auf die Navigation von Ad-hoc-Berichten beachten. Ein Benutzer, der beim Navigieren eines Berichts eine Datenbank-Fehlermeldung erhält, muss seine Schritte zu dem Teil des Modells zurückverfolgen, zu dem er Zugriff hat.

HinweisHinweis

Wenn Sie mit der Datenbanksicherheit sicherstellen möchten, dass nur bestimmte Benutzer Lesezugriff auf bestimmte Tabellen- und Spaltenwerte haben, sollten Sie sicherstellen, dass Sie für die Datenquelle die integrierte Sicherheit von Windows konfigurieren.

Sichern von Modellelementen

Verwenden Sie Management Studio, um die folgenden Teile eines Modells zu schützen:

  • Stammknoten

  • Ordner

  • Entitäten

  • Modellrollen (wobei sich der Begriff "Rolle" auf die Beziehung zwischen Entitäten bezieht)

  • Felder

Sie können Perspektiven nicht als Ganzes sichern. Sie können jedoch die Modellelemente innerhalb der Perspektive sichern. Die Sicherheit wird auf Basis der Sicherheit des Modellelements vererbt. Wenn der Zugriff auf das im Modell enthaltene Modellelement Administratoren vorbehalten ist, dann ist dies nur möglich, wenn das Modell in der Perspektive angezeigt wird.

Die Berichtsmodellsicherheit ist nicht mit der Sicherheit identisch, die Sie in der Berichtsserver-Ordnerhierarchie und auf Systemebene definieren. Auf den Stammknoten eines Modells wird nicht durch die Ordnerhierarchie zugegriffen. Dies gilt auch für die Sicherung des Modellstammknotens.

Ausblenden von Modellelementen

Sie können die Hidden-Eigenschaft als Alternative zur Zugriffsbeschränkung durch Rollenzuweisungen verwenden, um Benutzern die Anzeige von Teilen eines Modells zu verweigern. Ändern Sie die Hidden-Eigenschaft des jeweiligen Elements im Modell-Designer auf TRUE, wenn ein Modellelement keinem Benutzer angezeigt werden soll. Durch das Ausblenden eines Elements wird das Element nicht aus Modellberechnungen oder -beziehungen entfernt. Wenn Sie beispielsweise ein in einem Ausdruck verwendetes Feld ausblenden, wird das Feld weiterhin im Ausdruck verwendet. Dies gilt auch dann, wenn das Feld dem Benutzer nicht angezeigt wird. Durch das Ausblenden eines Elements ist das Element für keinen Benutzer sichtbar. Verwenden Sie zum Sichern des Elements statt der Hidden-Eigenschaft Rollenzuweisungen, wenn Sie die Sichtbarkeit und den Zugriff nach Benutzern oder nach Gruppen variieren möchten.

So sichern Sie Elemente in einem Berichtsmodell

Sie können Elemente in einem Modell vom Berichts-Manager aus sichern. Zum Sichern von Modellelementen muss das Berichtsmodell auf dem Berichtsserver bereitgestellt sein.

  1. Navigieren Sie im Berichts-Manager zu dem Ordner, der das Modell enthält.

  2. Zeigen Sie mit der Maus auf den Namen des Modells, klicken Sie dann auf den Pfeil, um das Menü zu öffnen und wählen Sie Sicherheit aus.

  3. Klicken Sie auf der Seite Modelleigenschaften auf Modellelementsicherheit.

  4. Aktivieren Sie das Kontrollkästchen Einzelne Modellelemente für dieses Modell unabhängig voneinander sichern.

  5. Wählen Sie den Stammknoten aus. Eine Rollenzuweisung im Stammknoten ist erforderlich.

  6. Klicken Sie auf Weisen Sie den folgenden Benutzern und Gruppen Leseberechtigungen zu .

  7. Geben Sie die Liste der Benutzer oder Gruppen durch ein Semikolon (;) getrennt ein.

  8. Klicken Sie auf Anwenden.

  9. Navigieren Sie zur nächsten zu sichernden Entität oder Beziehung bzw. zum nächsten Feld oder Ordner. Wiederholen Sie die Schritte 6 bis 8.