Sdílet prostřednictvím


Možnosti konfigurace aplikace

K ověření a získání tokenů inicializujete v kódu novou veřejnou nebo důvěrnou klientskou aplikaci. Při inicializaci klientské aplikace v knihovně Microsoft Authentication Library (MSAL) můžete nastavit několik možností konfigurace. Tyto možnosti spadají do dvou skupin:

Autorita

Autorita je adresa URL, která označuje adresář, ze kterého může knihovna MSAL požadovat tokeny.

Mezi běžné orgány patří:

Běžné adresy URL autority Vhodné použití služby
https://login.microsoftonline.com/<tenant>/ Přihlaste se jenom uživatelům konkrétní organizace. V <tenant> adrese URL je ID tenanta Microsoft Entra (GUID) nebo jeho domény tenanta.
https://login.microsoftonline.com/common/ Přihlaste se k uživatelům pomocí pracovních a školních účtů nebo osobních účtů Microsoft.
https://login.microsoftonline.com/organizations/ Přihlaste se k uživatelům pomocí pracovních a školních účtů.
https://login.microsoftonline.com/consumers/ Přihlaste se jenom k uživatelům s osobními účty Microsoft (MSA).

Autorita, kterou zadáte ve svém kódu, musí být konzistentní s podporovanými typy účtů , které jste zadali pro aplikaci v registracích aplikací na webu Azure Portal.

Autorita může být:

Cloudové autority Microsoft Entra mají dvě části:

  • Instance zprostředkovatele identity
  • Publikum aplikace pro přihlášení

Instance a cílová skupina se dají zřetězením a poskytnutím jako adresa URL autority. Tento diagram znázorňuje, jak se adresa URL autority skládá:

Jak se adresa URL autority skládá

Cloudová instance

Instance se používá k určení, jestli vaše aplikace podepisuje uživatele z veřejného cloudu Azure nebo z národních cloudů. Pomocí knihovny MSAL v kódu můžete instanci cloudu Azure nastavit pomocí výčtu nebo předáním adresy URL instanci národního cloudu jako člena Instance .

MSAL.NET vyvolá explicitní výjimku, pokud je zadána oběInstance.AzureCloudInstance

Pokud instanci nezadáte, vaše aplikace cílí na instanci veřejného cloudu Azure (instanci adresy URL https://login.onmicrosoftonline.com).

Cílová skupina aplikací

Cílová skupina přihlašování závisí na obchodních potřebách vaší aplikace:

  • Pokud jste vývojář obchodních společností, pravděpodobně vytvoříte aplikaci s jedním tenantem, která se používá jenom ve vaší organizaci. V takovém případě zadejte organizaci podle ID tenanta (ID vaší instance Microsoft Entra) nebo podle názvu domény přidruženého k instanci Microsoft Entra.
  • Pokud jste výrobce softwaru, možná budete chtít přihlásit uživatele pomocí pracovních a školních účtů v libovolné organizaci nebo v některých organizacích (víceklientské aplikaci). Můžete ale také chtít, aby se uživatelé přihlásili pomocí svých osobních účtů Microsoft.

Určení cílové skupiny v kódu nebo konfiguraci

Pomocí knihovny MSAL v kódu určíte cílovou skupinu pomocí jedné z následujících hodnot:

  • Výčet cílové skupiny Microsoft Entra authority
  • ID tenanta, které může být následující:
    • Identifikátor GUID (ID vaší instance Microsoft Entra) pro aplikace s jedním tenantem
    • Název domény přidružený k vaší instanci Microsoft Entra (také pro aplikace s jedním tenantem)
  • Jeden z těchto zástupných symbolů jako ID tenanta místo výčtu cílové skupiny Microsoft Entra:
    • organizations pro aplikaci s více tenanty
    • consumers přihlášení uživatelů pouze pomocí jejich osobních účtů
    • common přihlášení uživatelů pomocí pracovních a školních účtů nebo jejich osobních účtů Microsoft

MsAL vyvolá výstižnou výjimku, pokud zadáte cílovou skupinu autority Microsoft Entra i ID tenanta.

Doporučujeme určit cílovou skupinu, protože mnoho tenantů a aplikací nasazených v nich bude mít uživatele typu host. Pokud je vaše aplikace určená pro externí uživatele, vyhněte se těmto common koncovým bodům.organization Pokud cílovou skupinu nezadáte, cílí vaše aplikace na ID Microsoft Entra a osobní účty Microsoft jako cílovou skupinu a bude se chovat tak, jako common by byla zadána.

Efektivní cílová skupina

Efektivní cílová skupina pro vaši aplikaci bude minimální (pokud existuje průnik) cílové skupiny, kterou jste v aplikaci nastavili, a cílové skupině, která je zadaná v registraci aplikace. Prostředí registrace aplikací umožňuje určit cílovou skupinu (podporované typy účtů) pro aplikaci. Další informace najdete v tématu Rychlý start: Registrace aplikace na platformě Microsoft Identity Platform.

Jediným způsobem, jak získat aplikaci pro přihlášení uživatelů jenom s osobními účty Microsoft, je v současné době nakonfigurovat obě tato nastavení:

  • Nastavte cílovou skupinu registrace aplikace na Work and school accounts and personal accounts.
  • Nastavte cílovou skupinu v kódu nebo konfiguraci na AadAuthorityAudience.PersonalMicrosoftAccount (nebo TenantID ="spotřebitelé").

ID klienta

ID klienta je jedinečné ID aplikace (klienta) přiřazené vaší aplikaci Microsoft Entra ID při registraci aplikace. ID aplikace (klienta) najdete na stránce Přehled aplikace vpodnikových aplikacích>.

URI pro přesměrování

Identifikátor URI přesměrování je identifikátor URI, na který zprostředkovatel identity odesílá tokeny zabezpečení zpět.

Identifikátor URI přesměrování pro veřejné klientské aplikace

Pokud jste vývojář veřejné klientské aplikace, který používá KNIHOVNU MSAL:

  • Chcete použít .WithDefaultRedirectUri() v desktopových aplikacích (MSAL.NET 4.1+). Metoda .WithDefaultRedirectUri() nastaví vlastnost identifikátoru URI přesměrování veřejné klientské aplikace na výchozí doporučený identifikátor URI přesměrování pro veřejné klientské aplikace.

    Platforma URI pro přesměrování
    Desktopová aplikace (.NET Framework) https://login.microsoftonline.com/common/oauth2/nativeclient
    Univerzální platforma Windows (UWP) WebAuthenticationBroker.GetCurrentApplicationCallbackUri()hodnota . To umožňuje jednotné přihlašování (SSO) v prohlížeči nastavením hodnoty na výsledek WebAuthenticationBroker.GetCurrentApplicationCallbackUri(), který potřebujete zaregistrovat.
    .SÍŤ https://localhost umožňuje uživateli používat systémový prohlížeč pro interaktivní ověřování, protože rozhraní .NET v tuto chvíli nemá uživatelské rozhraní pro vložené webové zobrazení.

Identifikátor URI přesměrování můžete přepsat pomocí RedirectUri vlastnosti (například pokud používáte zprostředkovatele). Tady je několik příkladů identifikátorů URI přesměrování pro tento scénář:

  • RedirectUriOnAndroid = "msauth-00001111-aaaa-2222-bbbb-3333cccc4444://com.microsoft.identity.client.sample";
  • RedirectUriOnIos = $"msauth.{Bundle.ID}://auth";

Další podrobnosti o Androidu najdete v tématu zprostředkované ověřování v Androidu.

  • Při vytváření aplikace pomocí MSAL Androidu můžete nakonfigurovat redirect_uri během počátečního kroku registrace aplikace nebo ji přidat později.

    • Formát identifikátoru URI přesměrování je: msauth://<yourpackagename>/<base64urlencodedsignature>
    • Příklad: redirect_uri = msauth://com.azuresamples.myapp/6/aB1cD2eF3gH4iJ5kL6-mN7oP8qR=
  • Další podrobnosti o konfiguraci aplikace MSAL pro Android najdete v tématu konfigurace MSAL Android.

  • Nakonfigurujte identifikátor URI přesměrování v registracích aplikací:

    Snímek obrazovky zobrazující podokno přesměrovacího identifikátoru URI a možnosti na stránce registrace aplikací

Identifikátor URI přesměrování pro důvěrné klientské aplikace

U webových aplikací je identifikátor URI přesměrování (nebo adresa URL odpovědi) identifikátor URI, který bude Microsoft Entra ID používat k odeslání tokenu zpět do aplikace. Identifikátor URI může být adresa URL webové aplikace nebo webového rozhraní API, pokud je jednou z nich důvěrná aplikace. Identifikátor URI přesměrování musí být zaregistrovaný v registraci aplikace. Registrace je obzvláště důležitá, když nasadíte aplikaci, kterou jste původně otestovali místně. Pak musíte přidat adresu URL odpovědi nasazené aplikace na portálu pro registraci aplikací.

U aplikací démon nemusíte zadávat identifikátor URI přesměrování.

Přihlašovací údaje aplikace

Pro důvěrné klientské aplikace je efektivní správa přihlašovacích údajů nezbytná. Přihlašovací údaje můžou být federované přihlašovací údaje (doporučeno), certifikát nebo tajný klíč klienta.

Údaje pro ověření federované identity

Přihlašovací údaje federované identity jsou typem přihlašovacích údajů, které umožňují úlohy, jako jsou GitHub Actions, úlohy spuštěné v Kubernetes nebo úlohy běžící na výpočetních platformách mimo Azure, přistupovat k prostředkům chráněným Microsoft Entra, aniž by bylo nutné spravovat tajné kódy pomocí federace identit úloh.

Certifikát

Tato možnost určuje certifikát pro důvěrnou klientskou aplikaci. Někdy nazývaný veřejným klíčem, je certifikát doporučeným typem přihlašovacího údaje, protože se považuje za bezpečnější než klientské tajemství.

Tajný klíč klienta

Tato možnost určuje tajný klíč klienta pro důvěrnou klientskou aplikaci. Tajný klíč klienta (heslo aplikace) je poskytován portálem pro registraci aplikace nebo poskytnutým ID Microsoft Entra během registrace aplikace pomocí PowerShellu Microsoft Entra ID, PowerShell AzureRM nebo Azure CLI.

Protokolování

MsAL poskytuje integrovanou podporu protokolování, která pomáhá při řešení potíží s laděním a selháním ověřování. Protokolování v každé knihovně je popsané v následujících článcích:

Další kroky

Seznamte se s vytvářením instancí klientských aplikací pomocí MSAL.NET a vytváření instancí klientských aplikací pomocí MSAL.js.