Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
instalacni_balicek [2018/11/19 12:46]
poulm [Formát CSV souborů] - bez BOM znaků
instalacni_balicek [2019/05/31 08:13]
cirkval upřesněna terminologie rolí ve schvalovacím kolečku
Line 1: Line 1:
 +====== Instalační balíčky CzechIdM ======
  
 +
 +===== Implementované procesy =====
 +
 +  * Řízení životního cyklu identit.
 +    * Synchronizace osob + synchronizace vztahů (úvazků, PPV).
 +    * Standardní proces předání hesla - zaslání emailem uživateli při vytvoření účtu v AD/LDAP/DB.
 +    * Standardní procesy životního cyklu identity: Nový úvazek, Konec úvazku, Vynětí z evidenčního počtu, Změna organizačního zařazení.
 +      * Pro použití standardních procesů je třeba plnit atributy úvazků uživatelů (synchronizací ze zdroje dat nebo manuálně v CzechIdM)
 +  * Synchronizace organizační struktury.
 +  * Schvalovací proces žádosti o změnu přidělených rolí.
 +    * Konfigurace standardního schvalovacího procesu pro role:
 +      * helpdesk může doplnit/schválit žádost,
 +      * vedoucím uživatele,
 +      * správci uživatelů,
 +      * případně finální schválení //bezpečností//.
 +    * Definice úrovně schvalování (kritičností role):
 +      * 0 - neschvalovat,
 +      * 1 - schvaluje garant role.
 +
 +===== Definice oprávnění v identity manageru =====
 +
 +  * Super administrátor - minimálně jeden uživatel na straně zákazníka, který má nejvyšší oprávnění v identity manageru.
 +  * Helpdesk - změna hesel, přístup k auditním informacím a odeslaným notifikacím.
 +  * Běžný uživatel - změna svého hesla, svůj profil pro čtení, může podat žádost o změnu oprávnění.
 +  * Vedoucí - práva jako běžný uživatel + vidí své podřízené, může pro ně žádat o změnu oprávnění.
 +
 +===== Zdroj dat =====
 +
 +  * Podporované zdroje dat:
 +    * Databáze - Připojení do databáze pomocí JDBC, pro každý typ objektu samostatná tabulka nebo pohled
 +    * Soubory CSV - pro každý typ zpracovávaného objektu samostatný soubor
 +  * Podpora synchronizace: pokud zdrojová data neobsahují pro každý záznam "timestamp", není možné spustit synchronizaci změn a je vždy zpracováván celý balík dat. Synchronizace organizační struktury neumožňuje zpracovávat jen změny a vždy se zpracují všechna data.
 +
 +==== Struktura synchronizovaných dat ====
 +
 +Pro implementaci identity manageru formou balíčku je třeba součinnost v podobě zpřístupnění zdrojových dat odpovídajících následující struktuře. Zpřístupnění může být formou databázové tabulky, pohledu nebo CSV souborů. Názvy sloupců mohou být libovolné.
 +
 +Struktura View nebo CSV odpovídá objektům Identita (Identity),Vztah(Contracts),Organizace (Department, Position) znázorněné na následujícím obrázku https://wiki.czechidm.com/_media/devel/adm/idm_entities.png
 +
 +=== Osoby ===
 +
 +Tabulka osob, slouží jako základní zdroj informací pro založení identity uživatele v CzechIdM.
 +
 +^ atribut ^  unikátní  ^  povinný  ^ poznámka ^
 +| id |  *  |  *  | často osobní číslo, ideálně v čase neměnný identifikátor, který není po ukončení vztahu s osobou "recyklován" |
 +| login |  *  |    | minimální délka 2 znaky, pokud není dostupný, generuje login identity manager |
 +| jméno |        |  |
 +| příjmení |    |    |  |
 +| titul před |          |
 +| titul za |          |
 +| email |         | standardně je použit pro předávání hesla |
 +| mobilní telefon |    |    | v případě napojení identity manageru na SMS bránu může být na mobil zasíláno heslo SMSkou |
 +| timestamp |    |    | časová značka změny, ideálně tzv. "unix timestamp" |
 +
 +=== Vztahy ===
 +
 +Běžně může mít identita v identity manageru evidováno více pracovně právních vztahů, pro tyto případy je možné vztahy synchronizovat z externího zdroje stejně jako tomu je u identit. Pokud nejsou vztahy v organizaci využívány, není tato synchronizace nutná - identity manager si "sám" založí výchozí vztah na který navazuje veškerou funkčnost.
 +
 +Vztahy (Contracts) si lze představit jako PPV, DPP, DPČ zaměstnance nebo kontrakt externího dodavatele, stážista na oddělení, studium na fakultě, účastník na neplaceném projektu a další. U vztahu je nejdůležitější vlastník a mají-li být řízeny automatické procesy jako nástup zaměstnance nebo ukončení zaměstnance, pak i platnosti úvazků od/do.  
 +
 +^ atribut ^  unikátní  ^  povinný  ^ poznámka ^
 +| id |  *  |  *  | klíč pro zpracování |
 +| název úvazku |    |    | např. "Vrchní sestra", nepovinné | 
 +| vlastník |    |  *  | reference na id osoby |
 +| platnost od |    |    | sql timestamp - Platnost pracovní smlouvy nebo úvazku | 
 +| platnost do |    |    | sql timestamp  - Platnost pracovní smlouvy nebo úvazku |
 +| vyřazení z ev. počtu |    |    | boolean, příznak vyřazení z evidenčního počtu |
 +| hlavní úvazek |    |    | boolean, příznak hlavního úvazku. Pokud není uveden, je využit automatický výpočet |
 +| nadřízený |    |    | reference na id osoby, lze využít i bez organizační struktury |
 +| organizace |    |    | reference na id z organizační struktury |
 +| timestamp |    |    | časová značka změny, ideálně tzv. "unix timestamp" |
 +
 +
 +=== Organizační struktura ===
 +
 +V případě požadavku na synchronizaci organizační struktury do identity manageru je třeba dodržet následující strukturu dat. Do takto synchronizované organizační struktury mohou být přiřazeny úvazky identity. I když identity manager podporuje více organizačních struktur, v rámci instalačních balíčků je synchronizována pouze jedna. Při odstranění prvku organizační struktury ze zdroje dat je odpovídající část org. struktury v identity manageru smazána pouze pokud je prázdná.
 +
 +^ atribut  ^  unikátní  ^  povinný  ^ poznámka                                                 ^
 +| id        *          *        | neměnný klíč pro zpracování                              |
 +| název    |  *          *        | unikátní název organizační jednotky nebo pozice          |
 +| rodič    |            |           | reference na id nadřízeného prvku organizační struktury  |
 +
 +Všechny sloupce jsou datového typu varchar s limitem 254 znaků až na časové razítko, které je typu timestamp. 
 +
 +==== Formát CSV souborů ====
 +
 +Pokud je jako zdroj použit CSV soubor, musí být v následujícím formátu:
 +
 +  * Textový soubor se sloupci oddělenými dodělovačem
 +  * Jeden záznam na řádek
 +  * Každý záznam má stejné pořadí sloupců
 +  * Podporované oddělovače sloupců: '',;''
 +  * Nový řádek: LF, CRLF
 +  * Hlavička: 1. řádek volitelně
 +  * Kódování: UTF-8 (bez BOM znaků)
 +  * Sloupec/text může být obalen uvozovkami ''"'' (//"sloupec1", "sloupec 2", sloupec 3//)
 +  * Uvozovky v textu musí být zdvojeny (//"sloupec1", "sloupec"" 2", sloupec 3//)
 +  * Nový řádek v textu je podporován jen ve sloupcích obalených uvozovkami
 +
 +===== Cíl dat =====
 +Podporované cíle dat:
 +  * LDAPv3 - provisioning identity a jejích rolí
 +  * MS AD - jedna doména, provisioning identity a jejích rolí
 +  * Databáze - Připojení do databáze pomocí JDBC, jedna tabulka pro identity (users)
 +
 +==== MS AD - struktura synchronizovaných dat ====
 +^ atribut  ^  povinný  ^ poznámka ^
 +| DN |  *  | distinguished name |
 +| sAMAccountName |    | login uživatele |
 +| cn |    | common name - často používané jako RDN |
 +| displayName |  | název účtu uživatele, často se zobrazuje v aplikacích používajících AD|
 +| description| | |
 +| password|  |  |
 +| sn | | přijmení |
 +| givenName| | křestní jméno |
 +| mail |  | email uživatele |
 +| userPrincipalName| | login + doména |
 +
 +Není li definováno níže jinak, jsou výše uvedené atributy předávány z identity uživatele bez transformace.
 +
 +Má-li se spravovat heslo z IdM (password), musí zákazník nakonfigurovat SSL spojení k AD přes port 636 (LDAP protokol). 
 +
 +Význačné atributy s transformací:
 +  * DN je generováno na základě organizačního zařazení uživatele, nebo složením nejvýše 2 atributů identity. Neexistuje-li nějaká část DN v AD, pak ji CzechIdM vytvoří. 
 +  * cn je generováno kombinací nejvýše 3 atributů identity. Je doporučeno jej použít jako RDN. 
 +  * RDN (ať už je použito cn či nikoli) je doporučeno používat ve formátu zajišťujícím unikátnost v rámci daného OU (lépe celého AD). Například <jméno příjmení (ID)>. Není-li zajištěna unikátnost RDN v rámci OU, zůstane při kolizi požadavek pro vytvoření účtu ve frontě provisioningu na manuální vyřešení administrátorem.
 +  * displayName je generováno kombinací nejvýše 3 atributů identity.
 +  * password je plněn heslem identity. Heslo nelze namapovat na jiný atribut.
 +
 +====== Požadavky na HW/SW prostředí ======
 +
 +  * [[faq:prerequisites_and_system_requirements|Požadavky na hw/sw serveru]]
 +  * Pro instalaci a konfiguraci je potřeba fungující přístup ze serveru do Internetu za účelem stažení potřebného software.
 +
 +===== Součinnost zákazníka =====
 +
 +Níže uvedené úkony se očekávají jako součinnost zákazníka:
 +
 +  * Příprava serveru (hardware/virtuální server).
 +  * Instalace operačního systému, konfigurace firewallu apod.
 +  * Nastavení mailserveru - identity manager vyžaduje přístup k SMTP serveru.
 +  * Konfigurace SSL spojení k Active Directory (pokud se spravuje heslo)
 +  * Vzdálený přístup pro techniky provádějící implementaci.
 +  * Příprava zdroje dat dle formátu výše, zpřístupnění v síti
 +  * Účast na školení a předání prostředí
 +
 +~~NOTOC~~
  • by kopro