Identity and Access Management
Transkript
Identity and Access Management Praktické cvičení [email protected] Cíl cvičení Identity & Access Management Identity Management Část IdM ● Seznámení s OpenIDM ● Načtení HR exportu ● Synchronizace do LDAPu ● Přiřazení role a propagace do LDAPu ● Schvalování přístupu Access Management Část AM ● Nakonfigurování domény a SSO brány ● Reverzní proxy a centrální autentizace ● Cross-domain SSO a federace ● Propojení s IdM OpenIDM Identity Management Úlohy IdM K čemu IdM slouží? ● Centrální řízení účtů a práv v systémech ● ● ● ● Životní cyklus uživatele a přidělených práv Provisioning nastavení do cílových systémů Synchronizace hesel napříč systémy Validace a synchronizace nastavení ● User-self service ● Podpora auditu Ideální situace Kdy potřebujeme IdM nejméně? ● Centrální úložiště uživatelů a práv ● SSO v rámci všech aplikací PC Server Prohlížeč Aplikace Y Aplikace X Active Directory Základní pojmy Objekty a procesy ● managed object ● system object ● resource ● source system, source object ● target system, target object ● synchronization, validation ● mapping Architektura Celková architektura Úloha I Vytvoření uživatele ● Nastartování OpenIDM $ ./startup.sh ● Získání seznamu uživatelů $ curl \ --header "X-OpenIDM-Username: openidm-admin" \ --header "X-OpenIDM-Password: openidm-admin" \ http://localhost:8080/openidm/managed/user/?_queryId=query-all-ids ● Vytvoření uživatele { "_id": "frank", "userName": "frank", "givenName": "frank", "familyName": "smith", "email": "[email protected]", "password": "idm", "description": "My first user" } ● Zobrazení uživatele http://localhost:8080/openidm/managed/user/joe Úloha II Kontrola databáze ● Otevření OrientDB studia http://localhost:2480/studio/ ● Seznam dostupných tříd / tabulek $ bin/console.sh > classes ● Zobrazení objektů > select * from managed_user > select * from audit_activity OpenICF Open Identity Connectors Framework and Toolkit Úloha III Načtení dat z CSV http://openidm.forgerock.org/doc/install-guide/index.html#more-sample4 ● Změna konfigurační složky $ ./startup.sh -p samples/sample4 ● Konfigurace ○ ○ ○ - mapování provisioner-**.json - konektor schedule- **.json - spouštěná úloha sync.json ● Manuální spuštění http://localhost:8080/openidm/recon? _action=recon&mapping=systemHrAccounts_managedUser Konfigurační namespacy Jak se odkazovat na typy objektů Úloha IV Kontrola záznamů ● Aplikační logy $ less logs/openidm0.log.0 ● Aplikační logy $ less audit/action.log ● Seznam uživatelů $ curl \ --header "X-OpenIDM-Username: openidm-admin" \ --header "X-OpenIDM-Password: openidm-admin" \ --request GET \ "http://localhost:8080/openidm/managed/user/?_queryId=query-all-ids" X.500 a LDAP Adresářové služby ● DIT ● Protokoly X.500 X.500 a LDAP Schéma a data ● Objectclasses (structural vs auxilary) ● Attributes (matching rules, syntaxes) ● Distinguished name ● Naming attribute dn: ou=groups,dc=example,dc=com changetype: add objectClass: organizationalUnit objectClass: top ou: groups description: Groups container. Úloha V Příprava ApacheDS ● Spuštění serveru $ /etc/init.d/apacheds-2.0.0-M12-default start ● Vtvoření kontejnerů pro uživatele a skupiny $ ldapadd -D uid=admin,ou=system -w secret -h localhost -p 10389 dn: ou=people,dc=example,dc=com objectclass: organizationalUnit objectclass: top ou: users description: People container. # To samé pro ou=groups Úloha VI Kontrola záznamů a LDAP search ● Zobrazení celého podstromu $ ldapsearch -D uid=admin,ou=system -w secret -h localhost -p 10389 -LLL \ -b dc=example,dc=com -s subtree ● Zobrazen kořenového záznamu $ ldapsearch -D uid=admin,ou=system -w secret -h localhost -p 10389 -LLL \ -b "" -s base "" + ● Dohledání skupin systémového uživatele $ ldapsearch -D uid=admin,ou=system -w secret -h localhost -p 10389 -LLL \ -b "ou=system" -s subtree "(uniqueMember=uid=admin,ou=system)" "*" ● Zobrazení schématu $ ldapsearch -D uid=admin,ou=system -w secret -h localhost -p 10389 -LLL \ -b "cn=schema" -s base "" "+" X.500 a LDAP Kde se vzal LDAP ● X.500 protokoly pracují pouze s OID ● OSI networking stack ● RFC pro LDAP ● Navázané standardy ○ LDIF ○ Shadowing, changelog ○ DSML Úloha VII Apache Directory Studio ● Připojení k serveru ● Procházení DIT ● Zobrazení schématu Úloha VIII Vytvoření uživatelů a skupin dn: uid=jdoe,ou=people,dc=example,dc=com objectClass: inetOrgPerson cn: John Doe sn: Doe givenName: John mail: [email protected] telephoneNumber: 12345 uid: jdoe dn: cn=openidm,ou=groups,dc=example,dc=com objectClass: groupOfUniqueNames objectClass: top cn: openidm uniqueMember: uid=dummy,ou=system uniqueMember: uid=jdoe,ou=People,dc=example,dc=com dn: cn=openidm2,ou=groups,dc=example,dc=com objectClass: groupOfUniqueNames objectClass: top cn: openidm uniqueMember: uid=dummy,ou=system Úloha IX Synchronizace s LDAPem $ bin/startup.sh -p samples/sample2d ● Oprava konfigurace LDAPu provisioner.openicf-ldap.json: credential ● Spuštění rekonciliace $ curl \ --header "X-OpenIDM-Username: openidm-admin" \ --header "X-OpenIDM-Password: openidm-admin" \ --request POST \ "http://localhost:8080/openidm/recon? _action=recon&mapping=systemLdapGroups_managedGroup" ... systemLdapAccounts_managedUser ... managedUser_systemLdapAccounts Úloha X Oprava úlohy IX ● Oprava konfigurace synchronizace "source" : "", "transform" : { "type" : "text/javascript", "source" : "source.displayName ? source.displayName : source.userName;" }, "target" : "cn" Reconciliation Validace a synchronizace systémů SOURCE OBJECT SOURCE OBJECT LINK LINK TARGET OBJECT TARGET OBJECT 1. Iterate through all objects for the object set specified as "source". 2. Iterate through all object identifiers for the object set specified as "target". 3. Iterate through all link objects, carrying out the following steps. Úloha XI Kontrola dat OpenIDM ● Zobrazení záznamů > classes > select from managed_user > select from managed_group > select from managed_group > browse class managed_group > display record 0 > display record 1 > select @this.toJSON() from managed_group > select from link ... audit_recon, audit_activity ... Synchronizační situace Source reconciliation (LEFT JOIN) Source Qualifies? Yes No Link Exists? Yes No Target Found? 0 1 X X X X X X X X X X X X X X X X X IGNORE X SOURCE_MISSING DELETE UNQUALIFIED DELETE UNQUALIFIED DELETE TARGET_IGNORED IGNORE UNQUALIFIED DELETE ABSENT CREATE FOUND UPDATE AMBIGUOUS EXCEPTION MISSING EXCEPTION CONFIRMED UPDATE X X X Default Action TARGET_IGNORED X X Situation X X X X >1 X X X X X Synchronizační situace Target reconciliation (RIGHT JOIN) Target Qualifies? Yes No Link Exists? Yes No Source Exists? Yes No Source Qualifies? Yes No X X X X X X X X X X X X X X X Situation Default Action TARGET_IGNORED IGNORE UNASSIGNED EXCEPTION CONFIRMED UPDATE UNQUALIFIED DELETE SOURCE_MISSING DELETE Úloha XII Synchronizace členství ve skupinách ● Úprava skupin pro uživatele $ curl \ --header "X-OpenIDM-Username: openidm-admin" \ --header "X-OpenIDM-Password: openidm-admin" \ --request POST \ -d '[{ "replace":"ldapGroups", \ "value": ["cn=openidm2,ou=Groups,dc=example,dc=com"] }]' \ "http://localhost:8080/openidm/managed/user?_action=patch&_queryId=foruserName&uid=jdoe" ● Spuštění rekonciliace $ curl \ --header "X-OpenIDM-Username: openidm-admin" \ --header "X-OpenIDM-Password: openidm-admin" \ --request POST \ "http://localhost:8080/openidm/recon? _action=recon&mapping=managedUser_systemLdapAccounts" Úloha XIII Workflow http://openidm.forgerock.org/doc/integrators-guide/index.html#example-provisioning-workflow http://activiti.org/userguide/index.html#activitiDesigner IDM v praxi Ukázky reálných implementací ● Ukázka OSK a TO2 GUI ○ org-tree, práva, účty, žádosti, delegace ● Ukázka DirX Identity ○ cílové systémy, privilege hierarchy, workflow, metadirectory OpenAM Access Management Úlohy AM K čemu AM slouží? ● Centrální řízení přístupových politik ● Poskytování autentizačních služeb ● Poskytování autorizačních služeb ● Podpora auditu Identity vs Access Management Hledání hranice *.foo.com *.bar.com IDENTITIES IDENTITIES ACCOUNTS ACCOUNTS FEDERATION Architektura Komponenty OpenIDM Integrace s OpenIDM Policy Agents PEP PAP Komunikace mezi komponentami Centrální autentizace a autorizace Úloha I Instalace ● Nastavení domény $ sudo vim /etc/hosts 127.0.0.1 jcu-{prijmeni}.example.com ● Stažení Apache Tomcat ₊ OpenAM ● Nastavení Tomcatu $ sudo vim ${catalina.home}/bin/setenv.sh JAVA_OPTS="-Xmx1024m -XX:MaxPermSize=256m" $ sudo vim ${catalina.home}/conf/server.xml port="9080" protocol="HTTP/1.1" ● Nasazení OpenAM ${catalina.home}/webapps/ openam-server-10.1.0-Xpress.war => openam.war Úloha II Konfigurace aplikace ● Nastartování Tomcatu $ bin/startup.sh $ tail -f logs/catalina.out ● Konfigurace pomocí webového rozhraní http://jcu-{prijmeni}.example.com:9080/openam/ Samostatná cvičení Identity & Access Management Samostatné úkoly Úkoly na zápočet ● ApacheDS jako LDAP PAM modul http://wiki.debian.org/LDAP/PAM ● Nakonfigurování jednoho Policy Agenta http://docs.forgerock.org/en/openig/2.1.0/gateway-guide/index/chapfederation-tutorial.html ● Identity Federation http://openam.forgerock.org/openam-documentation/openam-docsource/doc/admin-guide/index/chap-federation.html
Podobné dokumenty
Často kladené dotazy
I když tato instalace váš problém vyřeší, napište nám na [email protected], abychom zjistili
podrobnosti o vašem nastavení. Tuto chybu chceme v budoucnu opravit, ale potřebujeme co nejvíce
...
Trioza Cockerelli n. sp.
strany konce shora dold setnute, sdm koneeek naho're se dvema
zejkovitYmi zuby. —Vnit n i klad a I k o tvaru trojahelnikoviteho
Installing Template Theme Files
Všechny modely (IaaS, PaaS, SaaS)
Pro obchodní útvary i IT CAPEX
Private Cloud je dedikovaný pro zákazníka, Public Cloud je sdílený více
zákazníky
• Hybridní Cloud
Pronájem kapacity on-demand při n...
Vytváření a prohlížení filmů a disků DVD
a použijte nabídky VYJMOUT, KOPÍROVAT a VLOŽIT). Pokud vytvoříte kopii složky ve stejném
umístění jako originál, program Movie Maker ji pojmenuje novým jménem obsahujícím původní název a pořadové č...
ATTIS4 – Synchronizace s LDAP serverem
SW ATTIS nástroje
manažerského řízení
1. Základní popis funkce
LDAP (Lightweight Directory Access Protocol) je odlehčený protokol vycházející ze standardu
X.500 pro ukládání a přístup k adresářový...
Přehled vybraných makroekonomických ukazatelů zemí Evropské
Podíl daní na HDP ........................................................................................................................... 13
Diplomová práce
Aplikačnı́ adresáře – adresáře, které si udržujı́ aplikace pro ukládánı́ svých vlastnı́ch
záznamů. Přı́kladem může být např. IBM/Lotus Notes, Microsoft Exchange a např. aliasy
obs...