Sdílet prostřednictvím


Registrace jednostrákové aplikace v Azure Active Directory B2C

Důležité

Od 1. května 2025 už nebude Azure AD B2C k dispozici k nákupu pro nové zákazníky. Další informace najdete v našich nejčastějších dotazech.

Aby vaše aplikace mohly pracovat s Azure Active Directory B2C (Azure AD B2C), musí být zaregistrované v tenantovi, který spravujete. V této příručce se dozvíte, jak zaregistrovat jednostránkovou aplikaci ("SPA") pomocí webu Azure Portal.

Přehled možností ověřování

Mnoho moderních webových aplikací je sestaveno jako jednostráňové aplikace na straně klienta ("SPA"). Vývojáři je píší pomocí JavaScriptu nebo architektury SPA, jako je Angular, Vue a React. Tyto aplikace běží ve webovém prohlížeči a mají jiné vlastnosti ověřování než tradiční webové aplikace na straně serveru.

Azure AD B2C nabízí dvě možnosti, jak povolit jednostránka aplikacím přihlašování uživatelů a získání tokenů pro přístup k back-endovým službám nebo webovým rozhraním API:

Tok autorizačního kódu (s PKCE)

Tok autorizačního kódu OAuth 2.0 (s PKCE) umožňuje aplikaci vyměnit autorizační kód tokenů ID , aby představoval ověřeného uživatele a přístupové tokeny potřebné k volání chráněných rozhraní API. Kromě toho vrací obnovovací tokeny, které poskytují dlouhodobý přístup k prostředkům jménem uživatelů bez nutnosti interakce s těmito uživateli.

Toto je doporučený přístup. Používání tokenů aktualizace s omezenou životností pomáhá vaší aplikaci přizpůsobit se moderním omezením ochrany osobních údajů souborů cookie v prohlížeči, jako je Safari ITP.

K využití tohoto toku může vaše aplikace použít knihovnu ověřování, která ji podporuje, například MSAL.js.

Jednostránkové aplikace – ověřování

Implicitní tok udělení

Některé knihovny, jako MSAL.js 1.x, podporují pouze implicitní udělení oprávnění, nebo je vaše aplikace implementována k použití implicitního toku. V těchto případech Azure AD B2C podporuje implicitní tok OAuth 2.0. Tok implicitního udělení umožňuje aplikaci získat ID a přístupové tokeny z autorizovaného koncového bodu. Na rozdíl od toku autorizačního kódu tok implicitního grantu nevrací obnovovací token.

Jednostránkové aplikace - implicitní

Tento tok ověřování neobsahuje scénáře aplikací, které používají multiplatformní javascriptové architektury, jako jsou Elektron a React-Native. Tyto scénáře vyžadují další možnosti pro interakci s nativními platformami.

Požadavky

  • Pokud nemáte předplatné Azure, vytvořte si bezplatný účet před zahájením.

  • Pokud nemáte tenanta Azure AD B2C, vytvořte ho teď. Můžete použít existujícího tenanta Azure AD B2C.

Registrace aplikace SPA

  1. Přihlaste se do Azure Portalu.

  2. Pokud máte přístup k více tenantům, vyberte ikonu Nastavení v horní nabídce a přepněte se do svého tenanta Azure AD B2C z nabídky Adresáře + předplatná.

  3. Na webu Azure Portal vyhledejte a vyberte Azure AD B2C.

  4. Vyberte Registrace aplikacía pak vyberte Nová registrace.

  5. Zadejte název aplikace. Například spaapp1.

  6. V části Podporované typy účtů vyberte Účty v libovolném zprostředkovateli identity nebo organizačním adresáři (pro ověřování uživatelů s toky uživatelů).

  7. V části Identifikátor URI přesměrování vyberte jednostránkovou aplikaci (SPA) a poté zadejte https://jwt.ms do textového pole adresy URL.

    Identifikátor URI přesměrování je koncový bod, do kterého autorizační server (v tomto případě Azure AD B2C) pošle uživatele po dokončení jeho interakce s uživatelem. Koncový bod identifikátoru URI přesměrování také obdrží přístupový token nebo autorizační kód po úspěšné autorizaci. V produkční aplikaci se obvykle jedná o veřejně přístupný koncový bod, ve kterém je vaše aplikace spuštěná, například https://contoso.com/auth-response. Pro účely testování, jako je tato příručka, ji můžete nastavit na https://jwt.mswebovou aplikaci vlastněnou Microsoftem, která zobrazuje dekódovaný obsah tokenu (obsah tokenu nikdy neopustí váš prohlížeč). Během vývoje aplikací můžete přidat koncový bod, ve kterém vaše aplikace naslouchá místně, například http://localhost:5000. Identifikátory URI pro přesměrování můžete v registrovaných aplikacích kdykoli přidávat a upravovat.

    Pro přesměrovací URI platí následující omezení:

    • Adresa URL odpovědi musí začínat schématem https, pokud nepoužíváte localhost.
    • V adrese URL odpovědi se rozlišují malá a velká písmena. Jeho případ se musí shodovat s případem cesty URL spuštěné aplikace. Pokud vaše aplikace například obsahuje jako součást cesty .../abc/response-oidc, nezadávejte .../ABC/response-oidc v adrese URL odpovědi. Vzhledem k tomu, že webový prohlížeč pracuje s cestami jako s případově citlivými, mohou být soubory cookie přidružené k .../abc/response-oidc vyloučeny, pokud jsou přesměrovány na neodpovídající .../ABC/response-oidc adresu URL s velikostí písmen.
  8. V části Oprávněnízaškrtněte políčko Udělit souhlas správce pro oprávnění openid a offline_access.

  9. Vyberte Zaregistrovat.

Povolit implicitní grantový proces

Implicitní tok udělení můžete povolit ze dvou důvodů, když používáte MSAL.js verze 1.3 nebo starší nebo když použijete registraci aplikace k otestování toku uživatele pro účely testování.

Pomocí těchto kroků povolíte implicitní tok udělení pro vaši aplikaci:

  1. Vyberte registraci aplikace, kterou jste vytvořili.

  2. V části Spravovat vyberte Ověřování.

  3. V části Implicitní udělení a hybridní toky zaškrtněte políčka Přístupové tokeny (používané pro implicitní toky) i tokeny ID (používané pro implicitní a hybridní toky).

  4. Vyberte Uložit.

Poznámka:

Pokud vaše aplikace používá MSAL.js 2.0 nebo novější, nepovolujte implicitní tok udělení, protože MSAL.js 2.0+ podporuje tok autorizačního kódu OAuth 2.0 (s PKCE). Pokud povolíte implicitní udělení pro testování toku uživatele, nezapomeňte před nasazením aplikace do produkčního prostředí zakázat implicitní nastavení toku udělení oprávnění.

Přejděte z implicitního toku povolení

Pokud máte existující aplikaci, která používá implicitní tok, doporučujeme migrovat na použití toku autorizačního kódu s pkCE pomocí architektury, která ji podporuje, například MSAL.js 2.0 nebo novější.

Pokud všechny vaše produkční SPA (Single Page Application) reprezentované registrací aplikace začnou používat tok autorizačního kódu, zakažte nastavení implicitního udělování oprávnění následovně:

  1. V nabídce vlevo v části Spravovat vyberte Ověřování.
  2. V části Implicitní udělení zrušte zaškrtnutí políček Přístupové tokeny i tokeny ID .
  3. Vyberte Uložit.

Aplikace používající implicitní tok můžou dál fungovat, pokud necháte implicitní tok povolený (zaškrtnutý).

Další kroky

Naučte se vytvářet toky uživatelů v Azure Active Directory B2C.