Analytische rechten in SAP HANA: Hoe te creƫren?
ā” Slimme samenvatting
Analytische privileges in SAP HANA voegt autorisatie op rijniveau toe bovenop objectrechten, zodat twee gebruikers die dezelfde informatieweergave opvragen, alleen de records zien die binnen hun toegewezen beperkingen vallen. SAP HANA Studio.
Wat zijn analytische privileges in SAP HANA?
Analytische privileges beperken de toegang van een gebruiker tot de gegevens die hij of zij mag inzien, en vormen daarom een āāessentieel onderdeel van... SAP HANA-beveiliging.
SQL-rechten verlenen autorisatie op objectniveau, niet op recordniveau. Een gebruiker met SELECT-rechten op een view kan elke rij in die view lezen. Wanneer een beperking op rijniveau nodig is, wordt in plaats daarvan een analytisch recht gebruikt.
Analytische privileges geven toegang tot de volgende informatie.
Hieronder wordt een analytisch privilege aangemaakt en toegewezen aan de gebruiker "ABHI_TEST", zodat deze gebruiker alleen gegevens kan zien voor het bedrijf met waarde 1000. Beide privileges zijn samen nodig: het objectprivilege opent de weergave en het analytische privilege bepaalt welke rijen worden weergegeven.
Hoe maak je een analytisch privilege aan in SAP HANA
De zes onderstaande stappen lopen in SAP HANA StudioVan het aanmaken van het privilege tot het testen ervan met een tweede gebruiker.
Stap 1) Ga naar Analytische bevoegdheden. Klik met de rechtermuisknop op het modelleringspakket en kies vervolgens Nieuw -> Analytische bevoegdheden, zoals hieronder weergegeven.
Stap 2) Het nieuwe pop-upvenster verschijnt. Voer de onderstaande gegevens voor analytische toegang in.
- Voer de naam en het label van de analytische machtiging in.
- De pakketnaam wordt automatisch geselecteerd.
- De selectieoptie creƫert een nieuw privilege.
In de volgende stap wordt de editor voor analytische privileges weergegeven, waarmee u privileges kunt toevoegen en bewerken.
Stap 3) Klik op de knop 'OK'. De editor voor analytische rechten wordt geopend en het referentiemodel wordt als eerste geselecteerd.
- In het gedeelte 'Algemeen' worden de naam en het label weergegeven.
- Klik op de knop 'Toevoegen' in het gedeelte 'Referentiemodellen', zoals hieronder weergegeven.
- Selecteer de eerder aangemaakte berekeningsweergave (CA_FI_LEDGER).
De geldigheid en de attribuutbeperking worden vervolgens in dezelfde editor gedefinieerd.
- Klik op de knop 'Toevoegen' om de geldigheid van het privilege te bevestigen.
- Wijs de geldigheid van het privilege toe.
- Klik op de knop 'Toevoegen' om het kenmerk te selecteren waarop de beperking van toepassing is.
- Selecteer het kenmerk Bedrijf.
- Klik op de knop 'Toevoegen' om een āāwaarde aan dat attribuut toe te wijzen.
- Wijs de waarde toe door het type of de operator en de waarde te selecteren. Hier is de gebruiker beperkt tot de gegevens van de berekeningsweergave voor bedrijf 1000, zoals hieronder weergegeven.
Valideer en activeer het analytische privilege. Het wordt vervolgens aangemaakt in de map 'Analytic Privileges' onder het pakket 'Modelling', zoals hieronder weergegeven.
Stap 4) Wijs de analytische bevoegdheid toe aan de gebruiker "ABHI_TEST", die al bevoegdheden heeft voor het modelleringspakket. Double- Klik op de gebruiker "ABHI_TEST" onder Beveiliging -> Gebruikers.
- Selecteer het tabblad Analytische bevoegdheden.
- Klik op de knop "+".
- Er verschijnt een pop-upvenster voor het selecteren van analytische privileges. Voer de naam in van het analytische privilege dat u eerder hebt aangemaakt.
- Selecteer de analytische machtiging.
- Klik op de OK-knop, zoals hieronder weergegeven.
De analytische bevoegdheid wordt aan de gebruiker toegevoegd, zoals hieronder weergegeven.
Stap 5) Voer de wijziging door voor de gebruiker door op de knop 'Implementeren' te klikken. Er verschijnt een bericht dat gebruiker 'ABHI_TEST' is gewijzigd, zoals hieronder weergegeven.
Stap 6) Controleer de analytische bevoegdheden. Meld u aan als āABHI_TESTā in het HANAUSER-systeem om te bevestigen dat de toewijzing werkt.
- Selecteer het huidige HDB (HANAUSER)-systeem en klik er met de rechtermuisknop op.
- Selecteer āSysteem toevoegen met andere gebruikerā en voer vervolgens de gebruikersnaam en het wachtwoord voor āABHI_TESTā in, zoals hieronder weergegeven.
- Een systeem HDB (ABHI_TEST) wordt toegevoegd aan de systeemlijst.
De gebruiker ABHI_TEST heeft geen volledige toegang tot de gegevens van de berekeningsweergave die door HANAUSER is gemaakt, omdat HANAUSER een analytisch privilege heeft aangemaakt dat die weergave beperkt tot bedrijf 1000 en dit privilege heeft toegewezen aan ABHI_TEST.
Ga naar de map 'Content' -> selecteer het pakket -> berekeningsweergave (CA_FI_LEDGER) -> klik met de rechtermuisknop -> Gegevensvoorbeeld. Het gegevensvoorbeeldscherm wordt als volgt weergegeven.
De gegevens in de berekeningsweergave zijn beperkt tot bedrijfscode 1000, wat bevestigt dat de analysebevoegdheid voor die gebruiker actief is.
Vergelijking van analytische privileges in klassieke XML en SQL
Er bestaan āātwee soorten analytische privileges, en de keuze is van belang voor elke nieuwe ontwikkeling. De bovenstaande editor creĆ«ert het klassieke, op XML gebaseerde privilege. SQL-analytische privileges werden geĆÆntroduceerd in SAP HANA 1.0 SPS 10 en drukt dezelfde beperking uit als een SQL-filtervoorwaarde.
| Aspect | Klassiek (op XML gebaseerd) | SQL-analytisch privilege |
|---|---|---|
| Definitie | Grafisch bijgehouden in de modelleeromgeving en opgeslagen als een XML-ontwerpobject. | Gedefinieerd door een SQL-filtervoorwaarde, zodat complexe logica leesbaar blijft. |
| Voorwaarden | Attribuutbeperkingen toepassen met eenvoudige operatoren. | Volledige SQL-expressies, inclusief geneste en gecombineerde voorwaarden. |
| Status | Niet meer geldig vanaf SAP HANA 2.0 SPS 02. | Aanbevolen voor elk nieuw privilege. |
| Beschikbaarheid | Niet beschikbaar in SAP HANA Cloud. | Ondersteund in SAP HANA 2.0 en SAP HANA Cloud. |
De SAP HANA Modeler levert een migratieactiviteit mee die klassieke XML-gebaseerde privileges omzet naar SQL-gebaseerde privileges, zodat bestaande beperkingen niet handmatig hoeven te worden herschreven. SAP In HANA Cloud wordt het privilege een ontwerpelement binnen een HDI-container en bereikt het de gebruiker via een rol in plaats van via de gebruikerseditor.
Hoe worden beperkingen op analytische bevoegdheden geƫvalueerd?
Door te weten hoe de omstandigheden zich combineren, voorkom je beperkingen die ofwel te veel ofwel helemaal niets opleveren.
- Verschillende waarden die voor ƩƩn attribuut worden vermeld, worden gecombineerd met een logische operator. OREen gebruiker kan bijvoorbeeld bedrijf 1000 of bedrijf 2000 zien.
- Beperkingen op verschillende kenmerken worden gecombineerd met een logische ENHet bedrijf en het land moeten dus aan elkaar gewaagd zijn.
- Wanneer een gebruiker meerdere analyserechten heeft voor dezelfde weergave, worden de resultaten bij elkaar opgeteld, wat de toegang juist verruimt in plaats van vernauwt.
- Een statische beperking slaat vaste waarden op, terwijl een dynamische beperking de toegestane waarden tijdens de uitvoering van een procedure uitleest, waardoor ƩƩn privilege meerdere gebruikers kan bedienen.
Een weergave wordt alleen gecontroleerd wanneer de eigenschap 'Apply Privileges' het privilegetype aangeeft, en de controle wordt uitgevoerd naast het SELECT-objectprivilege. Kolomweergaven die door activering worden gegenereerd, bevinden zich in het _SYS_BIC-schema en de effectieve beperkingen van een gebruiker kunnen worden afgelezen uit de systeemweergave EFFECTIVE_STRUCTURED_PRIVILEGES.
Veelvoorkomende fouten met analytische privileges en oplossingen daarvoor
De meeste problemen met autorisatie in een informatieweergave komen voort uit een van de onderstaande situaties.
- Foutmelding 'Niet geautoriseerd' bij een weergave. De gebruiker heeft wel het analytische privilege, maar niet het SELECT-privilege op de gegenereerde kolomweergave of op het onderliggende schema. Verleen beide privileges.
- De preview geeft geen rijen weer. Het beperkte attribuut heeft geen overeenkomende waarde, of de geldigheidsperiode van het privilege is reeds verlopen.
- De beperking wordt genegeerd. Het privilege is wel aangemaakt, maar nooit geactiveerd, of de eigenschap 'Privileges toepassen' is niet ingesteld voor de betreffende weergave.
- De wijziging heeft geen effect. De opdracht is niet uitgevoerd, of de gebruikerssessie is gestart vóór de uitvoering en moet opnieuw verbinding maken.
- Alles is toch zichtbaar. De gebruiker heeft de machtiging _SYS_BI_CP_ALL, die onbeperkte toegang verleent tot alle informatieweergaven en daarom niet in productieomgevingen gebruikt mag worden.
Verleen analytische privileges via rollen in plaats van rechtstreeks aan gebruikers, zodat dezelfde beperking op ƩƩn plek kan worden bekeken, overgedragen en ingetrokken. Het modelleren van de context voor de beveiligde weergaven wordt behandeld in de SAP HANA-modellering en SAP HANA gidsen.









