SAP Datasphere – Data Access Controls auf Hierarchieknoten

Beitrag teilen über

SAP Datasphere bietet eine sehr einfache Möglichkeit, Datenberechtigungen zu managen über Data Access Controls. Damit wird gesteuert, wer welche Dateninhalte sehen kann. 

In Projekten werden neben einfachen Berechtigungen auf Werte einer Dimension, häufig auch Berechtigungen auf Knoten einer Hierarchie benötigt. Bisher ist dies in SAP Datasphere nicht direkt möglich. In unserem Blogbeitrag zeigen wir eine Möglichkeit, wie Datenberechtigungen auf Hierarchieknoten zu vergeben werden können.

Ausgangsbasis: Unser einfaches Beispieldatenmodell

Das Schaubild zeigt das sehr einfach aufgebaute Datenmodell. Es gibt eine Tabelle mit Bewegungsdaten sowie eine Dimension Organisationseinheit, welche eine Hierarchie enthält. Die Dimension wird mit dem Analytical Dataset assoziiert. Schließlich wurde ein Analytic Model angelegt.

Das Analytic Model enthält Kennzahlen aus dem Personalbereich je Organisationseinheit. Personaldaten sind ein sehr sensibler Bereich, bei dem es wichtig ist, dass nicht alle Mitarbeiter alle Daten sehen dürfen. Daher haben die Datenberechtigungen eine besondere Bedeutung.

Natürlich könnte man in einem so einfachen Beispiel wie hier Berechtigungen für jede einzelne Organisationseinheit vergeben. Wenn man bspw. alle Daten des IT Departments sehen darf, müsste man das IT Department und alle untergeordneten Organisationseinheiten manuell berechtigen. Allerdings ist dies wenig praktikabel.

Zum Einen gibt es i.d.R. wesentlich größere Organisationen mit viel mehr Organisationseinheiten. Hier ist die Pflege schlicht zu aufwendig. Andererseits unterliegen Organisationen Veränderungen. Wenn bspw. neue Organisationen untergeordnet oder sogar welche entfernt werden, müsste dies manuell nachgepflegt werden. Kaum machbar.

Es wird also eine Lösung gesucht, bei der Knoten einer Hierarchie berechtigt werden können.

Lösungsarchitektur

In unserer Lösungsarchitektur nutzen wir die Standardfunktion der Data Access Controls und schränken die Berechtigungen auf Organisationseinheiten ein. Das Schaubild zeigt den Aufbau in unserem einfachen Beispiel:

Die Tabelle Authorization Values enthält die eigentlichen Berechtigungswerte. In der Tabelle pflegen wir allerdings keine einzelnen Organisationseinheiten, sondern möchten, dass automatisch alle untergeordneten Organisationseinheiten ebenfalls berechtigt werden.

Wir erreichen dies über den SQL View Authorized OrgUnits (SQL Script). Hierbei werden alle untergeordneten Organisationseinheiten ermittelt. Wir suchen also alle Kinder der Hierarchie. Ermöglicht wird dies über das folgende Coding:

return

WITH LT_HIER_DATA AS (

select *

from HIERARCHY_DESCENDANTS (

 SOURCE HIERARCHY (

  source (

   select

    „OrgUnit“ as node_id,

    „ParentOrgUnit“ as parent_id

   from „AuthDemoHierarchy“

  )

 )

)

)

 

SELECT C.“UserMailAdress“, A.NODE_ID AS „OrgUnit“

FROM LT_HIER_DATA AS A

            INNER JOIN LT_HIER_DATA AS B

                  ON a.“START_RANK“ = B.“START_RANK“

            INNER JOIN „AuthValues“ AS C

                  ON          B.NODE_ID = C.“OrgUnit“

                        AND B.HIERARCHY_DISTANCE = ‚0‘

                        AND C.“Valid_From“ <= current_Date

                        AND C.“Valid_To“ >= current_Date;

Das erste SQL-Statement gibt alle „Kinder“ Organisationseinheiten zurück zu einer Organisationseinheit einer Hierarchie. Über Start rank können die jeweiligen Kinder zugeordnet werden zu einem originären Vaterknoten. Es wird also eine Standard HANA Hierarchiefunktion verwendet. Mehr dazu hier.

Wenn wir nun unseren Berechtigungswert einschränken auf das IT Department (Nummer 14), werden automatisch alle Kinder zurückgegeben und die Data Access Controls werden beschränkt:

In SAP Analytics Cloud sieht man nur noch die FTE für die berechtigten Organisationseinheiten.

Geht nicht – Gibt´s nicht

Mit SAP Datasphere erhalten Kunden mehr als graphische Views und SQL-Möglichkeiten. Durch die Basis der HANA Cloud lassen sich sehr viele Funktionen von SAP HANA verwenden. In unserem Beispiel zeigen wir, dass Berechtigungen auf Hierarchieknoten einfach herstellbar sein. Bei der Entwicklung sollte man also stets im Blick haben, was SAP HANA nicht schon mitbringt bevor man versucht komplett eigene Prozeduren oder SQL Scripts zu schreiben. Häufig gilt hierbei das Motto: Geht nicht – gibt’s nicht.

Haben wir Interesse geweckt?

Haben wir Ihr Interesse geweckt? Als ausgewählter SAP-Gold-Partner konnten wir bereits die SAP Datasphere (ehemalige SAP Data Warehouse Cloud) in Kundenprojekten einsetzen.

Operatives Realtime Reporting mit der SAP Data Warehouse Cloud
Die SAP Data Warehouse Cloud eignet sich sehr gut als Self Service Plattform für Fachbereiche.
Eine Landschaft mit Windrädern

Das könnte Sie auch interessieren

Über ISR

Wir agieren seit 1993 als IT-Berater für Data Analytics und Dokumentenlogistik und fokussieren uns auf das Datenmanagement und die Automatisierung von Prozessen.
Ganzheitlich und im Rahmen eines umfassenden Enterprise Information Managements (EIM) begleiten wir von der strategischen IT-Beratung über konkrete Implementierungen und Lösungen bis hin zum IT-Betrieb.
ISR ist Teil der CENIT EIM-Gruppe.

Besuchen Sie uns virtuell auf diesen Kanälen:

News Kategorien
News Archiv

Zuletzt erschienen

Nächste ISR Events

[tribe_events_list limit=“3″]