Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

SQL Server Analysis Services im mehrdimensionalen Modus Grundkurs

Benutzerberechtigungen auf OLAP-Cubes

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Weil Security auf Cubes so ein wichtiges Thema ist, erhalten Sie hier erst einmal einen kurzen Überblick.
05:24

Transkript

Security ist ja immer ein großes Thema und da stehen die Analysis Services in allererster Reihe. Genau genommen ist ein Analysis-Services-Cube der bestmögliche Ort, um eine komplexe Security datenbezogen zu definieren. Wie das geht, möchte ich in diesem Video einmal zeigen. Grundsätzlich gilt: Es gibt keine eigenen Nutzer nur für Analysis Services. Analsysis Services hat keine eigene Benutzerdatenbank. Er benutzt das Windows Active Directory. Das heißt, ich muss Windows-Active-Directory-Nutzer haben, wenn ich die auf meinem Cube berechtigen will. Und es wäre eigentlich sehr dumm von mir, wenn ich jeden Windows-User einzeln nehme und ihn bei Analysis Services als sogenannte "Rolle" einfüge, ja, weil dann muss ich ja alle Verwaltung immer doppelt und dreifach machen. Wenn sich an dem Windows-User etwas ändert, muss ich die Analysis-Rolle etwas nachziehen und so weiter. Wenn es neue User gibt, muss ich neue Rollen bauen. Was man also tut, ist, wie hier beschrieben, man nimmt eine Windows-Gruppe, lässt die von seinem Windows-Administrator erstellen und als Analysis Service Administrator sagt man, alle, die in dieser Gruppe drin sind, dürfen zum Beispiel die Verkaufszahlen von USA sehen. Ja und dann funktioniert das Ganze wunderbar. Man sollte nur darauf achten, was passiert, wenn ein Nutzer in mehreren Rollen gleichzeitig Mitglied ist, also zum Beispiel sowohl Fahrräder als auch Bekleidung sehen darf. Na ja, dann addieren sich die Berechtigungen einfach. Es gibt nicht so ein Konzept des Verbietens, wie bei Active-Directory-Berechtigungen zum Beispiel. Was noch interessant ist, ist dass jemand gebraucht wird, um diese Rollen zu definieren. Und das ist nicht der Administrator überraschenderweise, sondern der Cube-Entwickler, weil man definiert, wie wir sehen werden, diese Rollen überwiegend mit MDX und das ist ja eine Abfragesprache, die dem Administrator normalerweise nicht gegeben ist. Also, der Entwickler nimmt sein Cube-Projekt in den Data Tools, geht unter "Security", erzeugt Rollen und dann hat er zwei Möglichkeiten, was er machen kann. Leider die erste Möglichkeit in der Reihenfolge ist die Zellsicherheit. Und deshalb wird sie gelegentlich verwendet, einfach weil sie vorne in der Liste steht. Ich sage aber, bitte nicht benutzen! Die Zellsicherheit ist natürlich technisch beeindruckend, denn sie kann eine enorme Detailliertheit an Security definieren. Bei der Zellsicherheit wird jede einzelne Zelle, die angezeigt wird oder die berechnet werden muss für eine Abfrage, jede einzelne Zelle einzeln geprüft mit einem MDX-Statement, darf der Nutzer diese Zelle sehen oder nicht. Und wenn er sie nicht sehen darf, dann steht in der Zelle keine Zahl, sondern "N/A" oder irgendetwas, was der Client da auch hineinschreibt. Das ist aber, wie der Name schon andeutet, wenn man jede Zelle checken muss, viel zu langsam. Also diese Form der Security bitte nur verwenden, wenn Sie jemand unbedingt dazu zwingt. Es gibt eine bessere Möglichkeit, viel leichter und schneller und außerdem psychologisch besser. Denn schauen Sie mal, das ist ein Beispiel, wie eine Abfrage aussieht, wenn eine Zellsicherheit definiert ist. Und hier darf jemand nur "Accessoires" und "Clothing" als Produktkategorie sehen. Was ist das Ergebnis? Er sieht die Zahlen davon, er sieht aber auch "Bikes", er sieht "Components", er sieht aber, dass er das nicht sehen darf, weil dort "N/A" steht. Und das macht ihn natürlich verrückt, Da wird er nicht eher Ruhe geben, bis er auch die Zahlen dieser Produktkategorien irgendwie in Erfahrung bringen kann. Also keine gute Idee, auch psychologisch ganz schlecht. Nehmen Sie doch die Dimensionssicherheit. Denn dort wird es viel cleverer gemacht, die wird entlang der Dimensionen definiert und das heißt, ich kann für einzelne Dimensionselemente einschalten oder ausschalten, ob er sie sehen darf oder nicht und die, die man nicht sehen darf, die sind einfach wie verschwunden, die erscheinen überhaupt nicht in der Auswahl. Sehen wir einmal dieses Beispiel. Jemand hat zum Beispiel nur das Recht, die Produktkategorie "Bikes" zu sehen. Da sieht er den Knoten "Alle", darunter "Bikes" und andere Knoten fehlen einfach, es gibt sie gar nicht. Und auch rechts in der Tabelle sieht man, unter "Product Category" ist bei ihm nur "Bikes". Er kann natürlich dann noch in Details gehen und die Gesamtsumme stimmt auch und zeigt ihm nur das, was für "Bikes" in der Summe zusammengekommen ist, nur für das, was er auch sehen darf. Das übrigens könnte man umschalten. Es gäbe die Möglichkeit auch zu sagen, er sieht das Gesamtergebnis aller Produktkategorien, aber die Details nur für "Bikes". Nehmen Sie also unbedingt die Dimensionssicherheit, wenn es sich irgendwie machen lässt. Und dann noch eine wichtige Bemerkung: Egal was für eine Sicherheit man definiert, jede Dimension, die im Cube drin ist, vorhanden ist, ist für einen Anwender, der den browsen darf, erstmal sichtbar. Also wenn es eine Dimension "Mitarbeiter" gibt, die aus Datenschutzgründen nur der oberste Chef verwenden darf, dann sieht man dennoch, dass sie da ist. Wenn man sie dann aber in seine Abfrage hineinzieht, dann sieht man nur den allerobersten Knoten "Alle" Mitarbeiter und kann keine Details sehen. Das ist aus datenschutzrechtlichen Gründen total in Ordnung. Manchmal sagt man aber: "Oh nein, das ist mir unangenehm. Dann wissen die Leute ja, dass es eine Mitarbeiterdimension gibt." Und dann wird manchmal extra dafür ein eigener Cube gebaut, der einfach nur diese Dimension weglässt. Das ist natürlich eine enorme Ressourcenverschwendung, aber für Security muss man so etwas ja manchmal tun. Das also eine Einführung, die zeigt, was für Möglichkeiten der Cube-Entwickler bei der Definition der Security in Analysis Services hat.

SQL Server Analysis Services im mehrdimensionalen Modus Grundkurs

Lernen Sie eigene OLAP-Cubes und -Lösungen mit dem multidimensionalem Modus der SQL Server Analysis Services zu erstellen.

3 Std. 57 min (54 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:25.04.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!