Synchronizace uživatelů přes SCIM

Kromě synchronizací s Entra ID (bývalé Azure AD) a LDAP lze nastavit další typ synchronizace, a to SCIM.

SCIM (System for Cross-Domain Identity Management) je otevřený standardní protokol pro automatizaci výměny informací o identitě uživatelů mezi doménami identit a IT systémy. Microsoft tento protokol v podmnožině implementoval do prostředí Entra. Je určen především pro velké firmy spravující veliká množství identit.

V našem případě zajišťuje tento protokol komunikaci prostředí Sofa s prostředím Entra, ale obráceným směrem – od Entra k aplikace Sofa.

  • Při synchronizaci Entra ID aplikace Sofa pravidelně kontaktuje firmu v prostředí Entra.

  • Při přístupu pomocí SCIM pak „protější“ firma přes Entra sama kontaktuje aplikaci Sofa. Ta pak zajišťuje všechny potřebné služby, tedy i správu uživatelů.

Proti klasické synchronizaci známé z dřívějšího přístupu (Sofa sama kontaktuje firmu v Entra) je tedy největší rozdíl v opačném způsobu vzájemného kontaktu.

Nastavení synchronizace SCIM na straně aplikace Sofa

Konfigurace pro SCIM synchronizaci se nastavuje v administraci Sofa, v pohledu Sofa 365 BridgeSynchronizace uživatelů.

scim32

Není tedy zapotřebí nejprve definovat nové připojení, jako u Entra ID či LDAP. Připojení tu aktivně zajišťuje sama „protistrana“, která volá aplikaci Sofa. Proto lze pouze nastavit synchronizaci.

Jakmile je nějaká synchronizace nastavena, nelze již nastavit jiný druh synchronizace. To je stejné jako u nastavení pro Entra ID nebo LDAP.

Po klepnutí na tlačítko + Přidat SCIM synchronizaci se otevře okno Nová synchronizace, které se skládá ze čtyř karet.

Nastavení parametrů

Na první kartě – Parametry – synchronizaci pojmenujete a určíte její základní parametry.

  • Do pole Název napište pojmenování, pod kterým bude tato synchronizace uváděna v seznamu.

  • V poli Identifikátor se podle zadaného názvu vytvoří identifikační řetězec synchronizace. Lze ho upravit, ale je nutné dodržet, konvenci, podle které identifikátor musí začínat písmenem a smí obsahovat jen písmena anglické abecedy, číslice a podtržítka.

  • Do pole Popis můžete napsat libovolný text ve formě poznámky, která poslouží ke snazší identifikaci významu této synchronizace, pokud jich nadefinujete několik.

scim33

Zaškrtávací políčka v sekci Další nastavení umožní upřesnit některé provozní parametry synchronizace.

  • Políčko Aktivovat synchronizaci ponechte zaškrtnuté, pokud chcete aby se synchronizace stala funkční hned po uložení jejího popisu.

  • Zaškrtnutí políčka Zaslat email v případě selhání synchronizace nabízí možnost zapnout zasílání notifikací o neúspěšné synchronizaci. Notifikace přijde uživatelům v roli Administrátor a Správce subjektů.

  • Při zaškrtnutí políčka Zaslat novému uživateli email bude přes synchronizaci nově vytvářeným uživatelům zaslána uvítací zpráva na jejich adresu elektronické pošty.

  • Při zaškrtnutí políčka Zaslat novému uživateli nastavení hesla bude nově vytvořeným uživatelům poslán elektronickou poštou odkaz na jejich přístupové heslo. Tuto možnost využívejte pouze když chcete, aby se uživatel přihlašoval přes jméno a heslo. Políčko nezaškrtávejte, pokud chcete, aby se uživatele hlásili pouze přes SSO (Single Sign On). Obecně doporučujeme políčko nezaškrtávat.

Nastavení mapování členství ve skupinách

Tlačítkem Mapování členství ve skupinách (nebo klepnutím na stejnojmennou záložku nahoře) přejdete na stránku, na které určíte způsob mapování uživatelů do skupin.

Tlačítkem Přidat řádek vytvoříte řádky s dvojicí polí, jejichž pomocí se budou mapovat vzdálené skupiny na skupiny v Sofa.

scim34

Ve voliči Skupina v Sofa jednoduše vyberete skupinu ze seznamu vytvořeného v administraci aplikace Sofa.

Do pole Identifikátor vzdálené skupiny je zapotřebí zkopírovat identifikátor odpovídající skupiny uživatelů ve vzdálené firmě, která bude aplikaci Sofa kontaktovat.

Jak identifikátor získáte? Je zapotřebí mít přístup do portálu Centrum pro správu Microsoft Entra. Zde je zapotřebí být přihlášen k firmě, která má vaši firmu v Sofa kontaktovat.

scim35

V hlavní nabídce vlevo klepněte na položku Skupiny.

V pravé části okna pak v podnabídce zvolte možnost Všechny skupiny. V seznamu skupin vyhledejte skupinu, jejíž identifikátor potřebujete. Najdete ho ve sloupci ID objektu.

scim36

Ten pak zkopírujte do pole Identifikátor vzdálené skupiny v nastavení v prostředí Sofa.

scim37

Tlačítkem Přidat řádek vytvořte tolik přiřazení, kolik budete potřebovat.

Nastavení mapování členství v rolích

Pak tlačítkem Mapování členství v rolích (nebo pomocí stejnojmenné záložky) přejděte na kartu pro mapování rolí.

Zde postupujte naprosto stejně a vytvořte tolik přiřazení, kolik potřebujete.

scim38

Nastavení záznamu informací o průběhu procesu

Tlačítkem (záložkou) Logování přejdete na stejnojmennou kartu, kde vyberete, do jaké úrovně se během synchronizace mají zaznamenávat informace o průběhu procesu. Pomocí voliče Úroveň logování můžete vybrat úrovně Debug (ladicí informace), Informace a Varování

scim39
  • Varování je nejnižší stupeň logování – budou se zaznamenávat pouze varování, chyby a kritické chyby.

  • Informace je střední stupeň logování – budou se logovat informace, varování, chyby a kritické chyby.

  • Debug je nejvyšší stupeň logování – loguje se vše předchozí a zároveň se zaznamenává i debugging. Slouží jako podklad pro řešení problémů.

Uložení popisu synchronizace

Tlačítkem Uložit synchronizaci popis synchronizace uložíte.

Úpravy synchronizace

Pojmenovanou položku synchronizace pak uvidíte v okně Synchronizace. Pokud ji označíte za vybranou, zpřístupní se tlačítková lišta umožňující obvyklé úpravy synchronizace.

scim40
  • Upravit synchronizaci – otevře okno se čtyřmi kartami podobné tomu, ve kterém jste synchronizaci založili. V něm můžete doplňovat a měnit přípustné hodnoty, zejména údaje o mapování.

  • Smazat synchronizaci – po potvrzení bezpečnostního dotazu nevratně vymaže položku vybrané synchronizace včetně všech nastavení.

  • Přístupové údaje – otevře dialog pro vygenerování přístupových klíčů k synchronizace.

scim41

Po klepnutí na odkaz + Vygenerovat klíč se otevře dialog pro nastavení platnosti klíče v rozmezí od 90 do 730 dnů. Pomocí voliče vyberte požadovaný údaj a klepněte na tlačítko Vygenerovat klíč.

scim42

Klíč se zobrazí v otevřeném dialogu.

Vygenerovaný klíč i URL adresu endpointu si zkopírujte a bezpečně uložte (pro snadné zkopírování do schránky jsou k dispozici tlačítka Zkopírovat URL do schránky a Zkopírovat klíč do schránky). Sofa vygenerované údaje neuchovává, po zavření dialogu se znovu nezobrazí.
scim43

K vygenerovaným klíčům se tedy již znovu nedostanete, ale pokud je to nutné, můžete je v dialogu Přístupové údaje přegenerovat. Zároveň zde vidíte datum expirace klíčů a můžete je tedy včas obnovit.

scim44
  • Aktivovat synchronizaci – pokud není synchronizace aktivní, tímto tlačítkem ji aktivujete.

scim45

Po aktivaci lze synchronizaci deaktivovat; tlačítko Aktivovat synchronizaci má u aktivní synchronizace na Deaktivovat synchronizaci.

scim46
  • Zobrazit logy – zobrazí okno s transakčními logy týkajícími se této synchronizace.

Záznam o posledním volání

Jakmile se synchronizace rozeběhne, uvidíte v okně Synchronizace čas posledního volání – tedy kdy „protější“ aplikace volala aplikaci Sofa.

scim47

Vytvoření „protější“ aplikace volající Sofa

V této kapitole je popis konfigurace „vnější firmy“ pouze pro ukázku nebo testování SCIM připojení k Sofa. Pro praktické použití se samozřejmě bude předpokládat, že vnější firma již existuje a je správně nakonfigurovaná.

Popíšeme si postup přes portál Centrum pro správu Microsoft Entra (https://entra.microsoft.com/).

K tomuto portálu je třeba se přihlásit k „protější“ firmě jako uživatel s právy potřebných nastavení.

Založení aplikace

Po přihlášení přejděte do pohledu Podnikové aplikaceVšechny aplikace. Zde klepněte na tlačítko + Nová aplikace.

scim48
Podobně jako z prostředí portálu Centrum pro správu Microsoft Entra lze pracovat také z portálu Microsoft Azure (https://microsoft.azure.com/); postup i obsluha jsou podobné. Microsoft však doporučuje přejít do prostředí Entra.

V následujícím okně klepněte na tlačítko + Vytvořte svou vlastní aplikaci.

Otevře se modální okno, ve kterém:

  • V poli Jak se vaše aplikace jmenuje? aplikaci pojmenujte (například SCIM).

  • Přepínač Co se pokoušíte se svou aplikací udělat? nastavte na položku Integrovat jakoukoli jinou aplikaci, kterou nenajdete v galerii (mimo galerii).

  • Klepněte na tlačítko Vytvořit.

scim49

Aplikace se vytvoří, o čemž informuje zpráva krátce zobrazená v pravém horním rohu okna.

scim50

Základní popis aplikace se zobrazí v pohledu Název aplikacePřehled.

Vytvoření seznamu uživatelů a skupin

Nejprve je zapotřebí vytvořit seznam uživatelů a skupin synchronizovaných protokolem SCIM.

scim51

Klepněte na položku Uživatelé a skupiny v nabídce nebo na odkaz Přiřadit uživatele a skupiny v dlaždici číslo 1.

scim52

V následujícím okně sestavte seznam uživatelů a skupin, které mají mít k aplikaci přístup. Zaškrtněte políčka u těch uživatelů, kteří mají mít k aplikaci přístup. V sekci vpravo se bude postupně vytvářet jejich seznam.

Na obrázku jsou do aplikace přiřazeni jednotliví uživatelé. Pro potřeby synchronizace se Sofa je stejným postupem třeba přiřadit i celé skupiny.
scim53

Po ukončení výběru klepněte na tlačítko Vybrat. V následujícím okně Přidat přiřazení klepněte na tlačítko Přiřadit. Úspěšné přiřazení je v pravém horním rohu oznámeno zprávou se zeleným zatržítkem.

scim54

V pohledu Název aplikaceUživatelé a skupiny pak vidíte vytvořený seznam.

scim55

Úprava mapování atributu externalId

Před vlastním zřízením připojení je ještě zapotřebí upravit mapování atributu externalId. Mapování atributů definuje, jak se atributy synchronizují mezi Microsoft Entra ID a uživatelskou aplikací.

Ve vnitřní nabídce klepněte na položku Zřizování a v modifikované nabídce pak na položku Mapování atributů.

scim56

Dále klepněte na položku Provision Microsoft Entra ID Users.

V okně Mapování atributů vyhledejte ve sloupci Atribut customappsso položku externalId a klepněte na tlačítko Upravit.

scim57

V okně Upravit atribut, ve kterém je nyní položka mailNickname, klepněte do pole Zdrojový atribut.

scim58

V seznamu možností vyhledejte položku objectId a klepnutím myší ji přeneste do pole.

scim59

Klepněte na tlačítko OK.

Změnu musíte ještě uložit tlačítkem Uložit v horní části okna Mapování atributů.
scim60

Celkový přehled atributů SCIM a jejich mapování v prostředí Sofa

Atribut: … mapuje se na

userName

Osobní údaje » Uživatelské jméno

Display

operaci aktivace/deaktivace uživatele

Active Name

pouze na virtuální zobrazované jméno uživatele kvůli synchronizaci

tittle

Organizační údaje » Pracovní pozice

emails[type eq "work"].value

Osobní údaje » Notifikační e-mail

preferredLanguage

nemapuje se

name.givenName

Osobní údaje » Jméno

name.familyName

Osobní údaje » Příjmení

name.formatted

nemapuje se

addresses[type eq "work"].formatted

nemapuje se

addresses[type eq "work"].streetAddress

nemapuje se

addresses[type eq "work"].locality

nemapuje se

addresses[type eq "work"].region

nemapuje se

addresses[type eq "work"].postalCode

nemapuje se

addresses[type eq "work"].country

nemapuje se

phoneNumbers[type eq "work"].value

Osobní údaje » Telefon

phoneNumbers[type eq "mobile"].value

Osobní údaje » Mobilní telefon

phoneNumbers[type eq "fax"].value

nemapuje se

externalId

Organizační údaje » SSO identifikátor, používá se pro identifikaci uživatele mezi Sofa a Entra ID

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber

Osobní údaje » Osobní číslo

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department

Organizační údaje » Oddělení

urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager

Organizační údaje » Přímý nadřízený

Podporované mapování nepřítomné ve výchozím mapování

Atribut: … mapuje se na

name.honorificPrefix

Osobní údaje » Titul před jménem

name.honorificSuffix

Osobní údaje » Titul za jménem

Zřízení připojení

Nyní je možné přistoupit k vlastnímu zřízení připojení. Otevřete okno Podnikové aplikace, vyberte vaši aplikaci a ve vnitřní nabídce klepněte na příkaz Zřizování. Nenechte se mást tímto slovem – jde o zkratku ke „zřizování připojení“, v našem případě nastavení připojení vnější firmy k Sofa.

V pohledu Název aplikacePřehled (Preview) klepněte na tlačítko + Nová konfigurace.

scim61

V následujícím okně Nová konfigurace zřizování uplatníte hodnoty, které jste si uložili při nastavení synchronizace v Sofa.

  • Do pole Adresa URL tenanta zkopírujte údaj z pole Endpoint URL.

  • Do pole Token tajného kódu zkopírujte údaj z pole Přístupový klíč.

  • Klepněte na tlačítko Otestovat připojení.

scim62

Připojení firmy k Sofa se vyzkouší a úspěšné navázání je oznámeno v pravé horní části okna zprávou se zeleným zatržítkem.

scim63

Nyní můžete v dolní části okna klepnout na tlačítko Vytvořit.

Úspěšné vytvoření konfigurace je opět oznámeno zprávou se zeleným zatržítkem.

scim64

V okně Název aplikacePřehled (Preview) je uveden údaj: Stav konfiguraceZakázáno. Aplikace je vytvořena, není však spuštěna. Proto je zapotřebí na nástrojové liště klepnout na tlačítko Spustit zřizování.

scim65

Po úspěšném navázání kontaktu s aplikací Sofa…

Obsah obrázku text

…je v okně uveden údaj: Stav konfiguracePovoleno.

Synchronizace se provádí ze strany vnější firmy v intervalu nastaveném na určitý počet minut – viz údaj v poli Interval zřizování (pevný).
Pokud byste potřebovali synchronizovat ihned, mimo nastavený interval, klepněte na tlačítko Zřídit na vyžádání.
scim67

Zřízení je potvrzeno zřizovacím protokolem v pohledu SCIM – Protokoly zřizování.

scim68

Úspěšný průběh každé synchronizace můžete samozřejmě sledovat i v aplikaci Sofa. V administraci například vidíte, že mezi uživateli přibývají ti, kteří byli synchronizováni z vnější firmy.

scim69