Přehled tokenů a deklarací identity

Centralizovaný zprostředkovatel identity je zvlášť užitečný pro aplikace, které mají uživatele po celém světě, kteří se nutně nepřihlašují ze sítě podniku. Platforma Microsoft Identity Platform ověřuje uživatele a poskytuje tokeny zabezpečení, jako jsou přístupové tokeny, obnovovací tokeny a tokeny ID. Tokeny zabezpečení umožňují klientské aplikaci přistupovat k chráněným prostředkům na serveru prostředků.

  • Přístupový token – Přístupový token je token zabezpečení vydaný autorizačním serverem jako součást toku OAuth 2.0. Obsahuje informace o uživateli a prostředku, pro který je token zamýšlen. Informace lze použít pro přístup k webovým rozhraním API a dalším chráněným prostředkům. Prostředky ověřují přístupové tokeny, aby udělily přístup klientské aplikaci. Další informace najdete v tématu Přístupové tokeny na platformě Microsoft Identity Platform.
  • Obnovovací token – protože přístupové tokeny jsou platné jenom krátce, autorizační servery někdy vydávají obnovovací token současně s přístupovým tokenem. Klientská aplikace pak může tento obnovovací token v případě potřeby vyměnit za nový přístupový token. Další informace najdete v tématu Aktualizace tokenů na platformě Microsoft Identity Platform.
  • Token ID – Tokeny ID se odesílají do klientské aplikace jako součást toku Připojení OpenID. Je možné je odeslat společně s přístupovým tokenem nebo místo něj. Tokeny ID používají klient k ověření uživatele. Další informace o tom, jak platforma Microsoft Identity Platform vydává tokeny ID, najdete v tématu Tokeny ID na platformě Microsoft Identity Platform.

Mnoho podnikových aplikací používá k ověřování uživatelů SAML. Informace o kontrolních výrazech SAML najdete v referenčních informacích k tokenům SAML.

Ověření tokenů

Záleží na aplikaci, pro kterou se token vygeneroval, webovou aplikaci, která se přihlásila k uživateli, nebo k ověření tokenu volané webové rozhraní API. Autorizační server podepíše token privátním klíčem. Autorizační server publikuje odpovídající veřejný klíč. K ověření tokenu aplikace ověří podpis pomocí veřejného klíče autorizačního serveru a ověří, že podpis byl vytvořen pomocí privátního klíče. Další informace najdete v článku o ověřování deklarací identity v zabezpečených aplikacích a rozhraních API.

Pokud je to možné, doporučujeme používat podporované knihovny MICROSOFT Authentication Library (MSAL ). Tím se implementuje získání, aktualizace a ověření tokenů za vás. Implementuje také zjišťování nastavení a klíčů tenanta vyhovující standardům pomocí dobře známého dokumentu zjišťování OpenID tenanta. MSAL podporuje mnoho různých aplikačních architektur a platforem, včetně .NET, JavaScriptu, Javy, Pythonu, Androidu a iOS.

Tokeny jsou platné pouze po omezenou dobu, takže autorizační server často poskytuje pár tokenů. Poskytuje se přístupový token, který přistupuje k aplikaci nebo chráněnému prostředku. Poskytuje se obnovovací token, který slouží k aktualizaci přístupového tokenu, když je přístupový token blízko vypršení platnosti.

Přístupové tokeny se předávají webovému rozhraní API jako nosný token v Authorization hlavičce. Aplikace může autorizačnímu serveru poskytnout obnovovací token. Pokud uživatel k aplikaci neodvolal přístup, obdrží nový přístupový token a nový obnovovací token. Když autorizační server obdrží obnovovací token, vydá jiný přístupový token jenom v případě, že je uživatel stále autorizovaný.

Webové tokeny JSON a deklarace identity

Platforma Microsoft Identity Platform implementuje tokeny zabezpečení jako webové tokeny JSON (JWT), které obsahují deklarace identity. Vzhledem k tomu, že se JWT používají jako tokeny zabezpečení, tato forma ověřování se někdy nazývá ověřování JWT.

Deklarace identity poskytuje kontrolní výrazy o jedné entitě, jako je klientská aplikace nebo vlastník prostředku, do jiné entity, jako je například server prostředků. Deklarace identity může být také označována jako deklarace identity JWT nebo deklarace identity webového tokenu JSON.

Deklarace identity jsou dvojice názvů nebo hodnot, které předávají fakta o předmětu tokenu. Deklarace identity může například obsahovat fakta o objektu zabezpečení, který autorizační server ověřil. Deklarace identity, které jsou přítomné v určitém tokenu, závisí na mnoha věcech, jako je typ tokenu, typ přihlašovacích údajů použitý k ověření předmětu a konfigurace aplikace.

Aplikace můžou používat deklarace identity pro následující různé úlohy:

  • Ověření tokenu
  • Identifikace tenanta subjektu tokenu
  • Zobrazení informací o uživateli
  • Určení autorizace subjektu

Deklarace identity se skládá z párů klíč-hodnota, které poskytují následující typy informací:

  • Server tokenů zabezpečení, který token vygeneroval
  • Datum vygenerování tokenu
  • Předmět (například uživatel, ale ne démon)
  • Cílová skupina, což je aplikace, pro kterou se token vygeneroval
  • Aplikace (klient), která požádala o token

Koncové body a vystavitele tokenů

Microsoft Entra ID podporuje dvě konfigurace tenantů: konfigurace pracovních sil, která je určená pro interní použití a spravuje zaměstnance a obchodní hosty, a konfiguraci zákazníka, která je optimalizovaná pro izolování uživatelů a partnerů v omezeném externím adresáři. I když je základní služba identit stejná pro obě konfigurace tenantů, přihlašovací domény a autorita pro vystavování tokenů pro externí tenanty se liší. To umožňuje aplikacím, aby pracovní postupy pracovních sil a externích ID byly v případě potřeby oddělené.

Tenanti Microsoft Entra se ověřují na login.microsoftonline.com pomocí tokenů vydaných sts.windows.net. Tokeny tenantů pracovních sil jsou obecně zaměnitelné mezi tenanty a aplikacemi s více tenanty za předpokladu, že základní vztahy důvěryhodnosti umožňují tuto interoperabilitu. Externí tenanti Microsoft Entra používají koncové body tenanta formuláře {název_tenanta}.ciamlogin.com. Aplikace zaregistrované v externích tenantech si musí být vědomy tohoto oddělení, aby přijímaly a ověřovaly tokeny správně.

Každý tenant Microsoft Entra publikuje dobře známá metadata vyhovující standardům. Tento dokument obsahuje informace o názvu vystavitele, ověřovacích a autorizačních koncových bodech, podporovaných oborech a deklarací identity. U externích tenantů je dokument veřejně dostupný na adrese: https://{název_tenanta}.ciamlogin.com/{id_tenanta}/v2.0/.well-known/openid-configuration. Tento koncový bod vrátí hodnotu vystavitele https://{tenantid}.ciamlogin.com/{tenantid}/v2.0.

Autorizační toky a ověřovací kódy

V závislosti na tom, jak je váš klient sestavený, může používat jeden nebo několik toků ověřování podporovaných platformou Microsoft Identity Platform. Podporované toky můžou vytvářet různé tokeny a autorizační kódy a vyžadovat různé tokeny, aby fungovaly. Následující tabulka obsahuje přehled.

Tok Vyžaduje Token ID Token přístupu Obnovovací token Autorizační kód
Tok autorizačního kódu linka x x linka
Implicitní tok linka linka
Hybridní tok OIDC linka linka
Obnovení uplatnění tokenu Obnovovací token linka x linka
Tok On-Behalf-Of Token přístupu linka x linka
Přihlašovací údaje klienta x (jenom aplikace)

Tokeny vydané pomocí implicitního toku mají omezení délky, protože se předávají zpět do prohlížeče pomocí adresy URL, kde response_mode je query nebo fragment. Některé prohlížeče mají omezení velikosti adresy URL, která se dá vložit do panelu prohlížeče a pokud je příliš dlouhá, selže. V důsledku toho tyto tokeny nemají groups ani wids deklarace identity.

Viz také

Další kroky