Analytische Privilegien in SAP HANA: Wie erstellen?

⚡ Intelligente Zusammenfassung

Analytische Berechtigungen in SAP HANA fügt zusätzlich zu den Objektberechtigungen eine Autorisierung auf Zeilenebene hinzu, sodass zwei Benutzer, die dieselbe Informationssicht abfragen, nur die Datensätze sehen, die ihre zugewiesenen Einschränkungen zulassen. SAP HANA Studio.

  • 🔘 Zweck: Eine Objektberechtigung öffnet eine vollständige Ansicht, während eine analytische Berechtigung die von der Ansicht zurückgegebenen Zeilen filtert.
  • ☑️ Umfang: Attributsichten, analytische Sichten und Berechnungssichten können jeweils durch ein analytisches Privileg geschützt werden.
  • ✅ Einschränkungen: Werte innerhalb eines Attributs werden mit ODER verknüpft, Einschränkungen für verschiedene Attribute mit UND.
  • 🧪 Ejemplo: Eine Berechtigung für die Berechnungssicht CA_FI_LEDGER beschränkt den Benutzer ABHI_TEST auf das Unternehmen 1000.
  • ️ Abtretung: Die Einschränkung gilt erst nach Validierung, Aktivierung, Zuweisung zum Benutzer oder zur Rolle und Bereitstellung.
  • 📈 Richtung: XML-basierte Berechtigungen sind veraltet, daher werden neue Einschränkungen als SQL-Analyseberechtigungen formuliert.

Analytische Berechtigungen, die den Datenzugriff auf Zeilenebene einschränken in SAP HANA

Was sind analytische Berechtigungen in SAP HANA?

Analytische Berechtigungen beschränken den Zugriff eines Benutzers auf die Daten, die er einsehen darf, und sind daher ein Kernbestandteil von SAP HANA-Sicherheit.

SQL-Berechtigungen gewähren Zugriff auf Objektebene, nicht auf Datensatzebene. Ein Benutzer mit SELECT-Berechtigung für eine Sicht kann jede Zeile darin lesen. Wenn eine Einschränkung auf Zeilenebene erforderlich ist, wird stattdessen eine analytische Berechtigung verwendet.

Analytische Berechtigungen gewähren diese Berechtigung für die folgenden Informationsansichten.

Im Folgenden wird eine Analyseberechtigung erstellt und dem Benutzer „ABHI_TEST“ zugewiesen, sodass dieser nur Daten für das Unternehmen mit dem Wert 1000 einsehen kann. Beide Berechtigungen werden benötigt: Die Objektberechtigung öffnet die Ansicht, und die Analyseberechtigung bestimmt, welche Zeilen angezeigt werden.

Wie man eine analytische Berechtigung erstellt in SAP HANA

Die folgenden sechs Schritte laufen ab SAP HANA Studiovon der Erstellung der Berechtigung bis zum Testen mit einem zweiten Benutzer.

Schritt 1) Gehen Sie zu „Analytische Berechtigungen“. Klicken Sie mit der rechten Maustaste auf das Modellierungspaket und wählen Sie dann „Neu“ → „Analytische Berechtigungen“, wie unten dargestellt.

Neue Option „Analytische Berechtigungen“ im Kontextmenü des Modellierungspakets

Schritt 2) Ein neues Pop-up-Fenster wird angezeigt. Geben Sie die unten angezeigten Details zu den Analyseberechtigungen ein.

  1. Geben Sie den Namen und die Bezeichnung der analytischen Berechtigung ein.
  2. Der Paketname wird automatisch ausgewählt.
  3. Die Auswahloption erzeugt ein neues Privileg.

Neuer Dialog für analytische Berechtigungen mit den Feldern Name, Bezeichnung und Paket

Im nächsten Schritt wird der Editor für analytische Berechtigungen angezeigt, mit dem Berechtigungen hinzugefügt und bearbeitet werden können.

Schritt 3) Klicken Sie auf die Schaltfläche „OK“. Der Editor für analytische Berechtigungen öffnet sich, und das Referenzmodell wird zuerst ausgewählt.

  1. Im Abschnitt „Allgemein“ werden der Name und die Bezeichnung angezeigt.
  2. Klicken Sie im Abschnitt Referenzmodelle auf die Schaltfläche „Hinzufügen“, wie unten dargestellt.
  3. Wählen Sie die zuvor erstellte Berechnungssicht (CA_FI_LEDGER) aus.

Schaltfläche „Hinzufügen“ im Abschnitt „Referenzmodelle“ des Editors für analytische Berechtigungen.

Die Gültigkeit und die Attributbeschränkung werden dann im selben Editor definiert.

  1. Klicken Sie auf die Schaltfläche „Hinzufügen“, um die Gültigkeit der Berechtigung zu erstellen.
  2. Weisen Sie die Gültigkeit der Berechtigung zu.
  3. Klicken Sie auf die Schaltfläche „Hinzufügen“, um das Attribut auszuwählen, das die Einschränkung enthält.
  4. Wählen Sie das Attribut „Firma“ aus.
  5. Klicken Sie auf die Schaltfläche „Hinzufügen“, um diesem Attribut einen Wert zuzuweisen.
  6. Weisen Sie den Wert zu, indem Sie den Typ oder Operator und den Wert auswählen. Hier ist der Benutzer auf die Daten der Berechnungssicht für Unternehmen 1000 beschränkt, wie unten dargestellt.

Analytischer Berechtigungseditor mit Referenzmodell, Gültigkeits- und Unternehmensbeschränkung

Validieren und aktivieren Sie die analytische Berechtigung. Sie wird dann im Ordner „Analytische Berechtigungen“ unter dem Paket „Modellierung“ erstellt, wie unten dargestellt.

Aktivierte Analyseberechtigung, die im Ordner „Analyseberechtigungen“ aufgeführt ist

Schritt 4) Weisen Sie dem Benutzer „ABHI_TEST“, der bereits über Berechtigungen für das Modellierungspaket verfügt, die analytische Berechtigung zu. Double-Klicken Sie unter Sicherheit -> Benutzer auf den Benutzer „ABHI_TEST“.

  1. Wählen Sie die Registerkarte „Analytische Berechtigungen“.
  2. Klicken Sie auf die Schaltfläche „+“.
  3. Es wird ein Popup zur Auswahl analytischer Berechtigungen angezeigt. Geben Sie den Namen der zuvor erstellten analytischen Berechtigung ein.
  4. Wählen Sie die analytische Berechtigung aus.
  5. Klicken Sie auf die Schaltfläche OK, wie unten dargestellt.

Wählen Sie im Benutzerverwaltungsbildschirm das Popup „Analytische Berechtigungen“ aus.

Dem Benutzer wird die analytische Berechtigung hinzugefügt, wie unten dargestellt.

Registerkarte „Analytische Berechtigungen“ des Benutzers ABHI_TEST, nachdem die Berechtigung hinzugefügt wurde

Schritt 5) Klicken Sie auf die Schaltfläche „Bereitstellen“, um die Änderung für den Benutzer zu übernehmen. Es wird eine Meldung angezeigt, die besagt, dass der Benutzer „ABHI_TEST“ geändert wurde (siehe unten).

Bestätigungsnachricht mit dem Hinweis, dass der Benutzer ABHI_TEST geändert wurde

Schritt 6) Überprüfen Sie die analytischen Berechtigungen. Melden Sie sich vom HANAUSER-System aus als „ABHI_TEST“ an, um zu bestätigen, dass die Zuordnung funktioniert.

  1. Wählen Sie das aktuelle HDB (HANAUSER)-System aus und klicken Sie mit der rechten Maustaste darauf.
  2. Wählen Sie „System mit anderem Benutzer hinzufügen“ und geben Sie dann den Benutzernamen und das Passwort für „ABHI_TEST“ ein, wie unten gezeigt.
  3. Ein System HDB (ABHI_TEST) wird der Systemliste hinzugefügt.

Die Option „System mit anderem Benutzer hinzufügen“ wurde verwendet, um sich als ABHI_TEST anzumelden.

Der Benutzer ABHI_TEST hat keinen vollständigen Zugriff auf die Daten der von HANAUSER erstellten Berechnungssicht, da HANAUSER eine analytische Berechtigung erstellt hat, die diese Sicht auf Unternehmen 1000 beschränkt, und diese ABHI_TEST zugewiesen hat.

Gehen Sie zum Ordner „Inhalt“ -> wählen Sie das Paket aus -> Berechnungssicht (CA_FI_LEDGER) -> Rechtsklick -> Datenvorschau. Die Datenvorschau wird wie folgt angezeigt.

Datenvorschau der Berechnungsansicht beschränkt auf Unternehmen 1000

Die Daten in der Berechnungssicht sind auf den Buchungskreis 1000 beschränkt, was bestätigt, dass die analytische Berechtigung für diesen Benutzer aktiv ist.

Vergleich der Berechtigungen für klassisches XML und SQL-Analyse

Es gibt zwei Arten von Analyseberechtigungen, und die Wahl der richtigen Berechtigung ist für jede neue Entwicklung relevant. Der oben gezeigte Editor erzeugt die klassische, XML-basierte Berechtigung. SQL-Analyseberechtigungen wurden eingeführt in SAP HANA 1.0 SPS 10 und drücken die gleiche Einschränkung wie eine SQL-Filterbedingung aus.

Aspekt Klassisch (XML-basiert) SQL-Analyseberechtigung
Definition Wird im Modellierer grafisch verwaltet und als XML-Designzeitobjekt gespeichert. Definiert durch eine SQL-Filterbedingung, sodass komplexe Logik lesbar bleibt.
Erkrankungen Attributbeschränkungen mit einfachen Operatoren. Vollständige SQL-Ausdrücke, einschließlich verschachtelter und kombinierter Bedingungen.
Status Veraltet seit SAP HANA 2.0 SPS 02. Empfohlen für jedes neue Privileg.
Verfügbarkeit Nicht verfügbar in SAP HANA Cloud. Unterstützt in SAP HANA 2.0 und SAP HANA Cloud.

Das SAP Der HANA-Modellierer enthält eine Migrationsaktivität, die klassische XML-basierte Berechtigungen in SQL-basierte Berechtigungen konvertiert, sodass bestehende Einschränkungen nicht manuell neu geschrieben werden müssen. SAP In der HANA Cloud wird die Berechtigung zu einem Designzeit-Artefakt innerhalb eines HDI-Containers und erreicht den Benutzer über eine Rolle anstatt über den Benutzereditor.

Wie analytische Privilegienbeschränkungen bewertet werden

Wer weiß, wie die Bedingungen zusammenwirken, vermeidet Einschränkungen, die entweder zu viel oder gar nichts einbringen.

  • Mehrere für ein Attribut aufgeführte Werte werden mit einem logischen Wert kombiniert. OREin Benutzer sieht also möglicherweise Firma 1000 oder Firma 2000.
  • Beschränkungen für verschiedene Attribute werden mit einer logischen UNDUnternehmen und Land müssen also übereinstimmen.
  • Wenn ein Benutzer über mehrere Analyseberechtigungen für dieselbe Ansicht verfügt, werden die Ergebnisse addiert, was den Zugriff erweitert statt einschränkt.
  • Eine statische Einschränkung speichert feste Werte, während eine dynamische Einschränkung die zulässigen Werte zur Laufzeit aus einer Prozedur liest, sodass eine Berechtigung vielen Benutzern dienen kann.

Eine Sicht wird nur dann geprüft, wenn ihre Eigenschaft „Berechtigungen anwenden“ den Berechtigungstyp angibt. Die Prüfung erfolgt zusätzlich zur SELECT-Objektberechtigung. Durch Aktivierung generierte Spaltensichten befinden sich im Schema _SYS_BIC, und die effektiven Einschränkungen eines Benutzers können aus der Systemsicht EFFECTIVE_STRUCTURED_PRIVILEGES ausgelesen werden.

Häufige Fehler und Lösungen bei analytischen Berechtigungen

Die meisten Autorisierungsprobleme in der Informationsansicht entstehen durch eine der folgenden Situationen.

  • Fehler „Nicht autorisiert“ bei einer Ansicht. Der Benutzer besitzt zwar die analytische Berechtigung, aber keine SELECT-Berechtigung für die generierte Spaltenansicht oder das zugrunde liegende Schema. Erteilen Sie ihm beide Berechtigungen.
  • Die Vorschau liefert keine Ergebnisse. Das eingeschränkte Attribut enthält keinen übereinstimmenden Wert, oder die Gültigkeitsdauer der Berechtigung ist bereits abgelaufen.
  • Die Einschränkung wird ignoriert. Die Berechtigung wurde zwar erstellt, aber nie aktiviert, oder die Ansicht verfügt nicht über die Eigenschaft "Berechtigungen anwenden".
  • Die Änderung hat keine Auswirkung. Der Auftrag wurde nicht bereitgestellt, oder die Benutzersitzung wurde vor der Bereitstellung gestartet und muss erneut verbunden werden.
  • Alles ist sowieso sichtbar. Der Benutzer besitzt die Berechtigung _SYS_BI_CP_ALL, die uneingeschränkten Zugriff auf alle Informationsansichten gewährt und sollte nicht in Produktionsrollen eingesetzt werden.

Analytische Berechtigungen werden über Rollen statt direkt an Benutzer vergeben, sodass dieselbe Einschränkung zentral überprüft, übertragen und widerrufen werden kann. Die Modellierung des Kontextes für die geschützten Ansichten wird im Folgenden behandelt. SAP HANA-Modellierung und SAP HANA Führer.

Häufig gestellte Fragen

SAP HANA verwendet Systemberechtigungen für Administrationsaufgaben, Objektberechtigungen für Tabellen und Sichten, Paketberechtigungen für Repository-Inhalte, Anwendungsberechtigungen für XS-Anwendungen und Analyseberechtigungen für den Zugriff auf Zeilenebene innerhalb von Informationssichten.

Ja. Der Abschnitt „Referenzmodelle“ akzeptiert mehrere Informationsansichten, und dieselbe Attributbeschränkung gilt dann für jede von ihnen, vorausgesetzt, das beschränkte Attribut ist in jeder aufgeführten Ansicht vorhanden.

_SYS_BI_CP_ALL ist eine generierte analytische Berechtigung, die uneingeschränkten Zugriff auf alle Informationssichten gewährt. Sie ist zwar für Modellierer in einer Sandbox praktisch, untergräbt jedoch die Sicherheit auf Zeilenebene und ist daher für Produktionsumgebungen ungeeignet.

Maschinelles Lernen analysiert Zugriffsprotokolle, um normales Abfrageverhalten zu profilieren und Konten zu kennzeichnen, die plötzlich auf ungewöhnliche Unternehmen oder Regionen zugreifen. Solche Tools priorisieren riskante Berechtigungen zur Überprüfung, die endgültige Entscheidung, welche Berechtigungen geändert werden, trifft jedoch weiterhin ein Sicherheitsadministrator.

GitHub Copilot erstellt Filterbedingungen und den zugehörigen SQL-Code anhand eines kurzen Kommentars, was die Arbeit mit komplexen Einschränkungen vereinfacht. Jede generierte Bedingung muss mit realen Daten getestet werden, da ein falscher Operator den Zugriff unbemerkt erweitert.

SAP HANA Cloud unterstützt ausschließlich SQL-Analyseberechtigungen. Diese Berechtigung ist ein Designzeitartefakt innerhalb eines HDI-Containers, wird über eine Rolle gewährt und vom klassischen XML-Editor von SAP HANA Studio ist nicht mehr verfügbar.

Nein. Die Einschränkung wird für Informationssichten ausgewertet, deren Eigenschaft „Berechtigungen anwenden“ festgelegt ist. Eine Abfrage der Basistabelle wird ausschließlich durch Objektberechtigungen gesteuert, daher sollten sensible Tabellen über Sichten zugänglich gemacht werden.

Eine Rolle bündelt Berechtigungen und ist der empfohlene Container für Transport und Überprüfung. Eine analytische Berechtigung ist eines der Objekte innerhalb dieses Bündels; die direkte Vergabe an einen Benutzer erschwert die spätere Überprüfung derselben Einschränkung.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: