Azure AD B2C přehledu vlastních zásad

Vlastní zásady jsou konfigurační soubory, které definují chování tenanta Azure Active Directory B2C (Azure AD B2C). I když jsou toky uživatelů na portálu Azure AD B2C pro nejběžnější úlohy identit předdefinované, vývojář identity může vlastní zásady plně upravit a provádět mnoho různých úloh.

Vlastní zásady jsou plně konfigurovatelné a řízené zásadou. Vlastní zásady orchestrují vztah důvěryhodnosti mezi entitami ve standardních protokolech. Například OpenID Připojení, OAuth, SAML a několik nestandardních, například REST API systémových deklarací identity. Rozhraní vytváří uživatelsky přívětivá prostředí s popiskem white label.

Vlastní zásady jsou reprezentovány jako jeden nebo více souborů ve formátu XML, které odkazují na sebe navzájem v hierarchickém řetězu. Prvky XML definují stavební bloky, interakci s uživatelem a dalšími stranami a obchodní logiku.

Úvodní balíček pro vlastní zásady

Azure AD B2C sada custom policy starter pack obsahuje několik předem sestavených zásad, které vám umožní rychle se pouštět. Každý z těchto úvodních balíčků obsahuje nejmenší počet technických profilů a cest uživatelů potřebných k dosažení popsaných scénářů:

  • LocalAccounts – Povolí jenom použití místních účtů.
  • SocialAccounts – Povolí jenom používání účtů sociálních sítí (nebo federovaných účtů).
  • SocialAndLocalAccounts – Povolí používání místních i sociálních účtů. Většina našich ukázek se týká těchto zásad.
  • SocialAndLocalAccountsWithMFA – Povolí možnosti sociálního, místního a vícefaktorového ověřování.

V Azure AD B2C ukázkách GitHubnajdete ukázky několika vylepšených a Azure AD B2C cest uživatelů CIAM. Například vylepšení zásad místního účtu, vylepšení zásad sociálních účtů, vylepšení MFA, vylepšení uživatelského rozhraní, obecná vylepšení, migrace aplikací, migrace uživatelů, podmíněný přístup, webový test a CI/CD.

Seznámení se základy

Deklarace identit

Deklarace identity poskytuje dočasné úložiště dat během Azure AD B2C zásad. Může ukládat informace o uživateli, jako je jméno, příjmení nebo jakákoli jiná deklarace identity získaná od uživatele nebo jiných systémů (výměny deklarací identity). Schéma deklarací identity je místo, kde deklarace identity deklarujete.

Při spuštění zásady služba Azure AD B2C odesílá a přijímá deklarace identity interním a externím stranám a pak odesílá podmnožinu těchto deklarací identity do aplikace předávající strany jako součást tokenu. Deklarace identity se používají těmito způsoby:

  • Deklarace identity je uložena, čtena nebo aktualizována proti objektu uživatele adresáře.
  • Deklarace identity se přijímá od externího zprostředkovatele identity.
  • Deklarace identity se odesílají nebo přijímou pomocí REST API služby.
  • Data se shromažďují jako deklarace identity od uživatele během registrace nebo úprav toků profilu.

Manipulace s deklaracemi identity

Transformace deklarací identity jsou předdefinované funkce, které lze použít k převodu dané deklarace na jinou, vyhodnocení deklarace identity nebo k nastavení hodnoty deklarace identity. Můžete například přidat položku do kolekce řetězců, změnit případ řetězce nebo vyhodnotit deklaraci identity data a času. Transformace deklarací identity určuje transformační metodu.

Přizpůsobení a lokalizace uživatelského rozhraní

Pokud chcete shromažďovat informace od uživatelů tím, že ve webovém prohlížeči prezentuje stránku, použijte technický profil s vlastním uplatněním. Technický profil s vlastním potvrzením můžete upravit tak, že přidáte deklarace identity a přizpůsobíte uživatelský vstup.

Pokud chcete přizpůsobit uživatelské rozhraní pro svůj technický profil s vlastním uplatněním, zadáte adresu URL v elementu definice obsahu s vlastním obsahem HTML. V technickém profilu s vlastním tvrzením můžete odkazovat na toto ID definice obsahu.

Pokud chcete přizpůsobit řetězce specifické pro jazyk, použijte element localization. Definice obsahu může obsahovat odkaz na lokalizaci, který určuje seznam lokalizovaných prostředků, které se mají načíst. Azure AD B2C sloučí prvky uživatelského rozhraní s obsahem HTML načteným z vaší adresy URL a pak zobrazí stránku uživateli.

Přehled zásad předávající strany

Aplikace předávající strany, která se v protokolu SAML označuje jako poskytovatel služeb, volá zásady předávající strany za tím, aby vykoná specifickou cestu uživatele. Zásady předávající strany určuje cestu uživatele, která se má provést, a seznam deklarací identity, které token obsahuje.

Diagram znázorňující tok provádění zásad

Všechny aplikace předávající strany, které používají stejné zásady, obdrží stejné deklarace identity tokenů a uživatel projde stejnou cestou uživatele.

Cesty uživatelů

Cesty uživatelů umožňují definovat obchodní logiku s cestou, přes kterou bude uživatel postupovat, aby získal přístup k vaší aplikaci. Uživatel je na cestě uživatele k načtení deklarací identity, které se mají předložit vaší aplikaci. Cesta uživatele je vytvořená z posloupnosti kroků orchestrace. Uživatel musí k získání tokenu použít poslední krok.

Následující pokyny popisují, jak můžete přidat kroky orchestrace do zásad počátečního balíčku pro sociální sítě a místní účet. Tady je příklad přidaného REST API volání.

přizpůsobená cesta uživatele

Kroky orchestrace

Krok orchestrace odkazuje na metodu, která implementuje její zamýšlený účel nebo funkci. Tato metoda se nazývá technický profil. Když vaše cesta uživatele potřebuje větvení, aby lépe reprezentoval obchodní logiku, odkazuje krok orchestrace na dílčí cestu. Dílčí cesta obsahuje vlastní sadu kroků orchestrace.

Uživatel musí na cestě uživatele k získání tokenu dosáhnout posledního kroku orchestrace. Uživatelé ale nemusí procházet všemi kroky orchestrace. Kroky orchestrace je možné podmíněně provádět na základě podmínek definovaných v kroku orchestrace.

Po dokončení kroku orchestrace se Azure AD B2C výstupní deklarace identity uloží do zásobníku deklarací identity. Deklarace identity v tašce deklarací identity je možné využít v dalších krocích orchestrace na cestě uživatele.

Následující diagram znázorňuje, jak může postup orchestrace cesty uživatele přistupovat k tašce deklarací identity.

Azure AD B2C cesta uživatele

Technický profil

Technický profil poskytuje rozhraní pro komunikaci s různými typy stran. Cesta uživatele kombinuje volání technických profilů prostřednictvím kroků orchestrace a definuje obchodní logiku.

Všechny typy technických profilů mají stejný koncept. Odešlete vstupní deklarace identity, spustíte transformaci deklarací identity a komunikujete s nakonfigurovanou stranou. Po dokončení procesu vrátí technický profil výstupní deklarace identity do zásobníku deklarací identity. Další informace najdete v tématu Přehled technických profilů.

Technický profil ověřování

Když uživatel pracuje s uživatelským rozhraním, můžete chtít ověřit shromážděná data. K interakci s uživatelem je nutné použít technický profil s vlastním uplatněním.

Aby bylo možné ověřit vstup uživatele, je technický profil ověřování volán z technického profilu s vlastním potvrzením. Technický profil ověřování je metoda volání jakéhokoli neinteraktivního technického profilu. V takovém případě může technický profil vracet výstupní deklarace identity nebo chybovou zprávu. Chybová zpráva se uživateli zobrazí na obrazovce a umožní uživateli to opakovat.

Následující diagram znázorňuje, Azure AD B2C pomocí technického profilu ověřování ověřovat přihlašovací údaje uživatele.

Diagram technického profilu ověřování

Model dědičnosti

Každý úvodní balíček obsahuje následující soubory:

  • Základní soubor, který obsahuje většinu definic. Pokud chcete pomoct s řešením potíží a dlouhodobou údržbou zásad, zkuste minimalizovat počet změn, které v tomto souboru provést.
  • Lokalizační soubor, který obsahuje řetězce lokalizace. Tento soubor zásad je odvozen ze základního souboru. Tento soubor použijte k přizpůsobení různých jazyků tak, aby vyhovoval potřebám vašich zákazníků.
  • Soubor Rozšíření, který obsahuje jedinečné změny konfigurace pro vašeho tenanta. Tento soubor zásad je odvozený od lokalizačního souboru. Pomocí tohoto souboru můžete přidat nové funkce nebo přepsat stávající funkce. Tento soubor můžete například použít k federování s novými zprostředkovateli identity.
  • Soubor předávající strany (RP), který je jediným souborem zaměřeným na úlohy, který je vyvolán přímo aplikací předávající strany, jako jsou vaše webové, mobilní nebo desktopové aplikace. Každý jedinečný úkol, například registrace, přihlášení nebo úprava profilu, vyžaduje vlastní soubor zásad předávající strany. Tento soubor zásad je odvozený ze souboru přípon.

Model dědičnosti je následující:

  • Podřízená zásada na libovolné úrovni může dědit z nadřazené zásady a rozšiřuje ji přidáním nových elementů.
  • U složitějších scénářů můžete přidat další úrovně dědičnosti (celkem až 10).
  • Můžete přidat další zásady předávající strany. Například Odstraňte svůj účet, změňte telefonní číslo, zásadu předávající strany SAML a další.

Následující diagram znázorňuje vztah mezi soubory zásad a aplikacemi předávající strany.

Diagram znázorňující model dědičnosti zásad pro pravidlo důvěryhodnosti

Doprovodné materiály a osvědčené postupy

Osvědčené postupy

V rámci Azure AD B2C vlastní zásady můžete integrovat vlastní obchodní logiku, která bude vytvářet uživatelské prostředí, které vyžadujete a rozšiřujete funkčnost služby. Máme sadu osvědčených postupů a doporučení, abyste mohli začít.

  • Vytvořte logiku v rámci zásad rozšíření nebo zásad předávající strany. Můžete přidat nové prvky, které nahradí základní zásady odkazem na stejné ID. Tento přístup vám umožní horizontální navýšení kapacity projektu a pozdější upgrade základních zásad, pokud společnost Microsoft vydává nové úvodní balíčky.
  • V rámci základních zásad důrazně doporučujeme vyhnout se jakýmkoli změnám. V případě potřeby udělejte komentáře, kde byly provedeny změny.
  • Při přepisování elementu, jako jsou metadata technického profilu, se nekopíruje celý technický profil ze základních zásad. Místo toho zkopírujte pouze požadovanou část elementu. Příklad provedení změny najdete v tématu Zakázání ověřování e-mailem .
  • Pokud chcete omezit duplicity technických profilů, ve kterých se sdílí základní funkce, použijte zahrnutí technického profilu.
  • Vyhněte se zápisu do adresáře služby Azure AD během přihlašování, což může vést k omezení problémů.
  • Pokud vaše zásada obsahuje externí závislosti, například rozhraní REST API, zajistí, že budou vysoce dostupné.
  • Pro lepší uživatelské prostředí se ujistěte, že vlastní šablony HTML jsou globálně nasazené pomocí online doručování obsahu. Azure Content Delivery Network (CDN) umožňuje zkrátit dobu načítání, ušetřit šířku pásma a zvýšit rychlost odezvy.
  • Pokud chcete provést změnu na cestu uživatele, zkopírujte celou cestu uživatele ze základní zásady do zásady rozšíření. Zadejte jedinečné ID cesty uživatele pro cestu k uživateli, kterou jste zkopírovali. Pak v zásadách předávající stranyzměňte výchozí prvek cesty uživatele tak, aby odkazoval na novou cestu uživatele.

Řešení potíží

Při vývoji pomocí zásad Azure AD B2C můžete při provádění cesty uživatele spustit chyby nebo výjimky. lze prozkoumat pomocí Application Insights.

Kontinuální integrace

pomocí kanálu průběžné integrace a doručování (CI/CD), který jste nastavili v Azure Pipelines, můžete zahrnout vlastní zásady Azure AD B2C v rámci poskytování softwaru a automatizace řízení kódu. Při nasazení do různých Azure AD B2C prostředí, například pro vývoj, testování a produkci, doporučujeme odebrat ruční procesy a provádět automatizované testování pomocí Azure Pipelines.

Příprava prostředí

Začnete s vlastními zásadami Azure AD B2C:

  1. Vytvoření tenanta Azure AD B2C
  2. Zaregistrujte webovou aplikaci pomocí Azure Portal, abyste mohli svoje zásady testovat.
  3. Přidejte potřebné klíče zásad a Zaregistrujte aplikace architektury identity Experience Framework.
  4. Získejte úvodní sadu zásad Azure AD B2C a nahrajte ji do svého tenanta.
  5. Po nahrání počátečního balíčku otestujte zásady registrace nebo přihlašování.
  6. doporučujeme, abyste si stáhli a nainstalovali Visual Studio Code (VS Code). Visual Studio Code je jednoduchý, ale výkonný editor zdrojového kódu, který běží na vaší ploše a je dostupný pro Windows, macOS a Linux. pomocí VS Code můžete rychle procházet a upravovat soubory XML vlastních zásad Azure AD B2C tím, že nainstalujete rozšíření Azure AD B2C pro VS Code

Další kroky

Po nastavení a otestování zásad Azure AD B2C můžete začít přizpůsobovat zásady. V následujících článcích se dozvíte, jak: