7.4:adm:roles

Roles

A role in CzechIdM is an entity representing a set (1 or many) of permissions/privileges on the end system or in CzechIdM itself. Users acquire roles:

  • automatically – according to the organizational placement
  • manually – through assigning based on the user’s request in the CzechIdM self-service or by a CzechIdM administrator.

From the perspective of the identity manager, it does not matter whether the user acquires an account in a specific application, is placed in a group in LDAP, his indication is set to “can use VPN”, or a permission is set for him in the application. In all the cases, a role is assigned. A simplification carried out like this allows general rules to be applied for assigning all types of permissions (~roles) in the same way.

To create a new role, go to Role agenda and Role management tab, then click Add. A unique name for the role must be chosen within all the roles. The role can also be placed in one or more folders in the catalogue of roles.

 Role list agenda

Každá role může mít nastaveno, kdo je jejím garantem, na garanta se mohou vázat další události jako například schválení přidání role, změna platnosti a její odebrání. Více viz sekce schvalovaní rolí.

A guarantee can be set for every role. Other processes can be related to the guarantee such as approval of assigning a role, change in time validity and its removal from user. See more in the section about role approval.

 New role

The following attributes can be set with every role:

  • Role name – a required unique attribute. The role name is displayed in the majority of GUI forms.
  • Role type – a descriptive attribute, it does not influence working with roles at the moment.
  • Priority level
    • Determines the approval agent of assigning and removing of a given role.
    • During provisioning (writing of data to the end system), a one-value attribute is filled with a role with higher priority
  • Priority – read only, a numerical representation of the priority level.
  • Catalogue folder – every role can be placed in the role catalogue, which is meant for organizing them.
  • Role authorizers – a role guarantee is an identity responsible for managing the role, i.e. they can see them in the role list (Role tab) and are able to act as approvers of assigning/removing of a role (depending on the configuration of the priority level)
  • Role removal approval – if this box is checked, then removing of the role is approved according to the process set in the configuration of CzechIdM. The default selection of CzechIdM configuration for the approval process of removing roles is Approval by role authorizers. Therefore, by checking this box without further configuration, removing of the role from the user will be approved by the role authorizers.
  • Description – an additional description of the role.
  • Inactive – Inactive roles are displayed in grey colour in menus and users are forbidden to select them, i.e. they cannot be requested for, for instance.

After all the requested selections have been entered, click on Save and continue. This will bring you straight to the menu Role → Role management, specifically to the detail of the newly created role.

 role menu

Extended role attributes can be edited in the tab More information. A separated chapter is thia guide is dedicated to extended role attributes.

Role permissions – Permissions of a given role for administrator actions in CzechIdM are defined in the tab Permissions. A permission for CzechIdM is not necessarily defined for every role.

 role permissions list

To add some permissions for actions in CzechIdM to a role, click the button Add. The following attributes can then be worked with:  a new role permission

Při přidávání oprávnění máme možnost pracovat s následujícími atributy:

  • Role (Read Only) – the name of the role, whose permission for CzechIdM you would like to change.
  • Entity type – A form in GUI of an object type in CzechIdM, for which you would like to edit the permission. For example, to add the permission to display the audit logs to the holder of the role, select the item Audit.
  • Permission – The type of permission which you would like to assign to the holder of the role for an agenda / entity selected in the previous step. The typical permissions are reading/removing/creating etc. Some agendas, such as Audit, do not allow any selection of permissions (it is read-only), that is why this box can be in grey colour as well.
    • Order – If the user has more permissions from more roles, the order is determined by the order of evaluations of these permissions. The logical principle of or is applied. If the user has role A, which permits reading subordinates, and role B, which permits editing subordinates, then the user has both the permission to read as well as to edit his subordinates. However, the permissions can be restricted using an evaluator in the next attribute Evaluation type. In that case, the order set in this attribute will be applied.
    • Description – an optional description
    • Inactive – a permission marked in this way will not be valid after saving. This selection is used mainly when you would like to prepare a set of permissions with a future starting date of validity, for example.
    • Evaluator type – This item is sometimes called the evaluator as well. Evaluators are used to delimit a group of objects (Agenda / Entity type), for which the holders of the role get a permission. If the chosen entity type is Users (IdMIdentity), then e.g. SubordinatesEvaluator can be chosen and role holders will get persmission to manage their subordinates. Some entity types, e.g. Audit, do not allow selecting Evaluation type since they relate directly to a given form in GUI or object instance.

fig:

Záložka Automatické role umožňuje zavěsit danou roli na organizační strom. To znamená, že role bude přidělována a odebírána uživatelům na základě zařazení/vyřazení uživatele do/z organizační stromové struktury. Agenda automatických rolí zobrazuje aktuální seznam prvků stromové struktury (organizací), ve kterých je aktuálně editovaná role nastavena jako automatická.

fig:

Aktuálně je podporováno pouze vytváření a mazání automaticky přiřazovaných rolí. Změna existující přiřazené role není podporována.

Vytvoření nové automatické role lze provést kliknutím na tlačítko přidat. Lze nastavit následující parametry automatických rolí.

  • Role (read only) – název role
  • Prvek stromové struktury – definuje bod v organizační struktuře, do kterého bude role umístěna
  • Typ rekurze – označuje schopnost přidělování role ve stromě:
    • Bez šíření – roli dostanou pouze uživatelé, jejichž vztah je umístěn na stejném prvku organizace, jako tato role
    • Šířit dle struktury dolů - roli dostanou všichni uživatelé, jejichž vztah je umístěn na stejném prvku organizace + všech podřazených, jako tato role. Například: Přidělením role na nejvyšší bod organizační struktury, řekněme „top“ způsobí přidělení role všem uživatelům ve struktuře.
    • Šířit dle struktury nahoru - roli dostanou všichni uživatelé, jejichž vztah je umístěn na stejném prvku organizace + všech nadřazených, jako tato role.

Při zařazení uživatele do struktury je kontrolována platnost Vztahu, pomocí kterého je uživatel zařazován. Je-li vztah uživatele neplatný (dle atributů vztahu platnost od a platnost do), pak

  • role je přidělena, ale platnost tohoto přidělení uživatel ↔ role je stejná jako u příslušného vztahu, pokud je tento údaj v budoucnosti. To znamená automatické role jsou uživatelům přidělovány na úvazky, které začnou v budoucnu a navíc platnost přidělení role koresponduje s platností úvazku.
  • Role není přidělena, pokud platnost do u vztahu je v minulosti. To znamená, automatické role nejsou přidělovány, pokud daný úvazek již skončil.

Mění-li se platnost vztahu uživatele, na který má přidělenu automatickou roli, pak se mění i platnost vztahu uživatel ↔ role. Tím je zaručeno, že při začátku či konci vztahu bude vždy role odebrána či přidána bez ohledu na to, jak se měnila platnost vztahu v čase.

Přidáte-li roli jako automatickou do struktury, ve které již sedí nějaký uživatel, pak uživatel tuto roli dostane přiřazenu ihned. Naopak odeberete-li roli jako automatickou ze struktury, kde sedí nějaký uživatel, je tato role všem těmto uživatelům ihned odebrána. Kliknutím na tlačítko přidat na záložce automatická role máte možnost roli zařadit do struktury a nechat ji automaticky přidělovat uživatelům. Je možné specifikovat následující atributy:

V CzechIdM je několik způsobů přidělení role. V této kapitole je popsáno, jaký proces doprovází manuální přidělení role

  • administrátorem – menu Uživatelé → Detail uživatele (lupa u vyhledaného uživatele) → Přiřazené role. Zde tlačítko Změnit oprávnění.
  • Uživatelem – menu Profil → Přiřazené role. Zde tlačítko Změnit oprávnění.
  • Nadřízeným (pokud má nastaveno právo) – Profil → Podřízení → Detail uživatele (lupa u vybraného uživatele) → Přiřazené role. Zde tlačítko Změnit oprávnění.

V každém z předešlých bodů je vytvořena Žádost o změnu oprávnění,viz kapitola 2.2.3. CzechIdM obsahuje proces, který zajišťuje schvalování této žádosti v následujících krocích

  • Helpdesk – celou žádost schvalují držitelé role určené pro zástupce oddělení helpdesk. Konkrétní název role je definován v konfiguraci CzechIdM pod volbou idm.sec.core.wf.approval.helpdesk.role.
  • User manager – celou žádost schvalují držitelé role určené pro zástupce oddělení helpdesk. Konkrétní název role je definován v konfiguraci CzechIdM pod volbou idm.sec.core.wf.approval.manager.role.
  • Manager – schvalují nadřízení uživatele, pro kterého je o roli žádáno. Nadřízení nejsou určeni rolí jako v předešlých krocích, ale jsou počítání dle všech úvazků uživatele. Schvaluje libovolný z nadřízených. V nasazení, kdy je třeba schvalovat nadřízenými dle jednotlivých úvazků doporučujeme tento krok konfiguračně vypnout a schvalování nadřízeným řídit kritičností rolí v následujícím kroku.
  • Jednotlivé role – Celá žádost se v tomto kroku rozpadá. Schvalována je každá role, ze které se celá žádost skládala, jednotlivě. Jak bude každá role schvalována, je určeno nastavením dané role. Konkrétně každá role má nastaven atribut Kritičnostviz. Kapitola 2.2.1.3. Teprve po vyřešení (schválení/zamítnutí) schvalování všech jednotlivých rolí v tomto bodě pokračuje proces na následující bod.
  • Security – Žádost tvořenou všemi rolemi schválenými v předchozím kroku chvalují držitelé role definované v konfiguraci CzechIdM pod volbou idm.sec.core.wf.approval.security.role. Byla-li v předchozím kroku některá role zamítnuta, pak je z celkové žádosti vyňata.

V bodech 1,2,3,5 je schvalována žádost jako celek. Tj. Všechny role, které byly v předchozím krocích schváleny postupují do dalšího kola schvalování. V každém ze schvalovacích kol 1,2,3 má realizátor možnost žádost vrátit k přepracování, zamítnou, nebo potvrdit. Pokud schvalovatel provede vrácení, případně zamítnutí celé žádosti, je notifikován žadatel. Po úspěšném schválení celé žádosti je vygenerovaná notifikace s výsledným stavem žádosti tj. které role byly schváleny a které ne.

Zapnutí či vypnutí těchto kol schvalování (stejně jako definice názvů rolí pro jednotlivá schvalovací kola) lze nastavit v konfiguračním souboru application.propertiesnebo explicitním zadáním na záložce Nastavení → Konfigurace aplikace:

  • idm.sec.core.wf.approval.helpdesk.enabled – true/false, zapnutí či vypnutí schválení help desk,
  • idm.sec.core.wf.approval.manager.enabled – true/false, zapnutí či vypnutí schválení manager,
  • idm.sec.core.wf.approval.usermanager.enabled – true/false, zapnutí či vypnutí schválení user manager,
  • idm.sec.core.wf.approval.security.enabled – true/false, zapnutí či vypnutí schválení security.

Obrázek 11 Příklad nastavení zapnutí schvalovacích kol

Obrázek 12 Příklad nastavení jmen rolí pro schvalovací kola

Hlavní proces o změnu oprávnění se může rozpadnou na menší subprocesy v závislosti na nastavení aplikace. Pod položkou menu Nastavení → Konfigurace aplikacelze nastavit klíče tvaru idm.sec.core.wf.role.approval<1-5>, přičemž hodnotou každého z nich je název workflow, které schvaluje danou úroveň kritičnosti. Kritičnost je vyjádřena číslem na konci každého z klíčů. Základní volby pro hodnoty jsou: approve-role-by-guarantee (schvaluje garant dané role), approve-role-by-manager (schvaluje nadřízený uživatele, pro kterého je žádáno o roli).

V subprocesech je realizováno schválení jednotlivých rolí, o které bylo žádáno v rámci hlavního procesu. Toto schválení probíhá asynchronně pro všechny role. V hlavním procesu je pokračováno až po dokončení posledního subprocesu (ať už zamítnutí nebo schválení).

U každé role také můžeme nastavit její kritičnost. Na kritičnost lze navázat, kdo bude schvalovat změnu oprávnění v subprocesech. V základní aplikaci CzechIdM máme celkem 5 kritičností:

  • Žádná (0),
  • Triviální (1),
  • Malá (2),
  • Velká (3),
  • Kritická (4).

Na každou kritičnost se mohou vázat různé schvalovací workflow. Nastavení příslušných workflow k dané kritičnosti se provádí skrze NastaveníKonfigurace aplikace.

Uživatel nebo oprávněný administrátor má možnost měnit role uživatelů pomocí tzn. Žádosti o změnu oprávnění. K žádosti se lze dostat skrze detail uživatele, pro kterého se bude o změnu žádat. Na záložce Přiřazené role je k dispozici formulář zobrazující:

  • Přiřazené role – role, které má uživatel aktuálně přiděleny
  • Žádosti o změnu oprávnění – právě probíhající žádosti
  • Role čekající na schválení – seznam rolí, které čekají na schválení přes všechny žádosti
  • Rozpracované žádosti o změnu oprávnění – zobrazuje se pouze, pokud byla dříve rozpracována nějaká žádost o změnfig:u oprávnění.

Dále je zde tlačítko „Změnit oprávnění“, pomocí kterého je vyvolán proces Žádost o změnu oprávnění, jak je vidět na následujícím obrázku.

fig:Ve formuláři pro změnu oprávnění lze role přidávat, odebírat, nastavovat platnosti rolí. Odebírat nelze automatické role, ty se přidělují/odebírají automaticky. Role z výběru odstraníme kliknutím na červený křížek v tabulce Aktuálně přiřazené role (včetně požadovaných změn). Kliknutím na oranžový čtvereček se symbolem tužky lze provést editaci přidělení role (stejný formulář jako přidání dále). Nové role se do žádosti vkládají pomocí tlačítka Přidat.

 \\
Obrázek 15: Výběr role

  • V novém okně pro výběr rolí lze vyplnit následující pole:Role - Pomocí fulltextového vyhledávání se zde vybírají nové role pro aktuální žádost.
  • PPV – Výběr vztahu uživatele, na který bude nová role přidělena
  • Platnost od -Role s platností přidělení v budoucnu začnou platit až v daný den. Tzn. Přiděluji-li role například účet ve spravovaném systému LDAP, účet se v něm vytvoří až nastane den platnosti nastaven v tomto atributu.
  • Platnost do – Role, kterým vypršela platnost jsou zpracovány následujícím způsobem:
    • V den, kdy vyprší platnost, uživatel přichází o všechna oprávnění plynoucí z dané role. Tzn. přidělovala-li role například účet ve spravovaném systému LDAP, účet se v něm smaže až nastane den platnosti nastaven v tomto atributu.
    • Při nejbližším běhu plánované úlohy, která odebírá role po vypršení platnosti, je role fyzicky odebrána uživateli (respektive od vztahu uživatele) v IdM.

Výběr rolí potvrdíme kliknutím na tlačítko Nastavit.Role můžeme do jedné žádosti přidávat popsaným způsobem opakovaně, pokud chceme například různým rolím nastavovat jiné úvazky či platnosti.

Po vyplnění formuláře je třeba kliknout na tlačítko Podat žádost, pomocí které se formulář pošle k realizaci do procesu Žádost o změnu oprávnění. Pokud je formulář uzavřen tlačítkem zpět (vedle tlačítka Podat žádost), je formulář uložen jako koncept.

Proces žádosti o změnu oprávnění pokračuje schvalováním. Jednotlivým krokům schvalování se věnuje samostatná kapitola 1.1.1. Teprve po schválení v posledním kroku jsou změny aplikovány na uživatele a je odeslána notifikace obsahující seznam všech změn.

Po vytvoření žádosti můžeme na záložce Přiřazené role daného uživatele v tabulce Role čekající na schválení vidět aktuální seznam rolí, o které uživatel žádá a jejich stav.

 \\
Obrázek 16: Tabulka s rolemi, čekajícími na schválení přidělení

Po kliknutí na detail (ikona lupy) se zobrazí aktuální detail procesu, včetně osob, které mohou danou žádost řešit. Po vyřešení celé žádosti o změnu oprávnění vidí uživatel všechny své role v tabulce Přiřazené role.

 \\
Obrázek 17: Seznam přidělených rolí

On role detail tab panel, there is tab called Accounts as you can see in the screenshot below. When you access this page, it will show all accounts which were created by provisioning of some system which has mapping for Roles.