top of page
bg_02_short.png

SONNENBERGER AKADEMIE

Oprávnění: „Derived roles“ neboli odvozené role

  • mmartiskova
  • 2. 8. 2023
  • Minut čtení: 2

V předchozím textu Úvod do organizační struktury jsme popsali rozdíl mezi funkčními (technickými) a organizačními oprávněními. V příkladu jsme definovali roli „Skladník“ jako soubor oprávnění pro

správu skladu, a protože má naše modelová organizace 4 závody ve 4 různých částech země,

definovali jsme požadavek, že si jednotlivé sklady těchto závodů nemají vidět do provozních dat. To

je přesně úkol pro organizační oprávnění. Dnes si vysvětlíme, jak fungují odvozená oprávnění

(„derived roles“), které nám umožňují čistě oddělit přípravu funkčních a organizačních oprávnění

v transakci PFCG.


Předloha pro odvození

Pokud se rozhodneme tento technický způsob implementace využít, na začátku vytvoříme jednu roli "Skladník" jako předlohu. Od této předlohy budeme role jednotlivých skladů odvozovat, jak název mechanismu napovídá.


Každá role vyžaduje mít svoji vlastní množinu organizačních oprávnění. Zde se nabízí několik

možností, jaké hodnoty použít v naší předloze. Jako první možnost můžeme použít jako hodnoty

organizačních políček hvězdičku. Tato role pak bude autorizovat "Skladníka ve všech skladech".

Takovou roli můžeme později skutečně použít v reálném provozu a přiřadit vybraným uživatelům.


Druhá možnost je přesný opak. Místo abychom vytvořili roli, která má přístup ke všem organizačním jednotkám, vytvoříme místo toho roli, která nebude mít přístup k žádné. Takovou roli bychom později nemohli použít pro skutečné uživatele a zůstala by tak pouze technickou předlohou pro odvozování.


V tom případě místo znaku *, který znamená “vše”, zvolíme znak zástupný takový, který se nikdy

nebude shodovat s žádným skutečným objektem v systému. Takový znak způsobí, že návratový kód

kontroly oprávnění nebude 0, proto bude taková role použitelná jako šablona pro derivaci, ale nikoli

k autorizaci nějakých reálných aktivit. Takový znak je například €. Nikdy nebude existovat žádný

skutečný objekt organizační struktury se jménem €. Vytvoříme tuto roli jako nefunkční šablonu, která se teprve odvozením stane funkční v jiné roli s vlastními platnými hodnotami organizačních polí.



Proces odvození

Nyní je vhodná chvíle vysvětlit, jak odvozené role technicky fungují. Zopakujme, že požadovaným

výsledkem procesu derivace je role, která má menu, hodnoty technických polí a mnoha dalších věcí

jako původní role, naše předloha neboli šablona pro derivaci. Jediná věc, která se bude lišit budou

hodnoty organizačních polí.


Z toho vlastně plyne, že je odvozená role pouze kontejner na konkrétní sadu hodnot pro pole

organizační struktury. Všechno ostatní pochází z původní role.


Technicky je tento mechanismus možný proto, že běžná autorizační pole a pole organizační struktury jsou uložena separátně. Hodnoty pro technická pole jsou uložena v tabulce AGR_1251, hodnoty organizační struktury v tabulce AGR_1252. Proces odvození zjednodušeně řečeno okopíruje všechna data šablony, pouze hodnoty organizačních polí jsou v odvozené roli chráněny.



Proces aktualizace

Dříve nebo později přijde chvíle, kdy budeme muset šablonu aktualizovat. Tyto aktualizace budeme

poté potřebovat promítnout do jednotlivých odvozených rolí. To je právě chvíle, kdy se ukáže pravá

síla tohoto přístupu. Poté co provedeme změny totiž kliknutím na jedno tlačítko automaticky změny

promítneme z předlohy do odvozených rolí. Odvozené role budeme muset ručně aktualizovat jen

v tom případě, když budeme aktualizovat jejich organizační oprávnění.


Tímto způsobem jsme rozdělili proces aktualizace na jednoduché části, kde je jasné, jak se mají

změny provést a kde, a tím zabraňujeme rychlé degradaci našeho konceptu oprávnění improvizací a neplánovanými změnami. Aktualizace je také rychlá a efektivní.

Nejnovější příspěvky

Zobrazit vše
Technický model objektů SAP Fiori

SAP Fiori je aktuální přístup společnosti SAP k uživatelským rozhraním. Zvykají si na něj uživatelé, vývojáři a přizpůsobit se musejí...

 
 
 

Comments


Sonnenberger, @ Copyright 2023 | Provozovatel: Sonnenberger, +420 607 010 020, info@sonnenberger.cz

  • LinkedIn
bottom of page