Sdílet prostřednictvím


Konfigurace aplikace OpenID Connect OAuth z galerie aplikací Microsoft Entra

  1. Přihlaste se do Centra pro správu Microsoft Entra jako alespoň správce cloudových aplikací.

  2. Přejděte k podnikovým aplikacím> identit.>

    Okno Podnikové aplikace

  3. V horní části dialogového okna vyberte Nová aplikace .

    Tlačítko Nová aplikace

  4. Do vyhledávacího pole zadejte název aplikace. Na panelu výsledků vyberte požadovanou aplikaci a zaregistrujte se k aplikaci.

    Openid v seznamu výsledků

  5. Na stránce Název aplikace klikněte na tlačítko Zaregistrovat se.

    Tlačítko Přidat

    Poznámka:

    Tady by měl správce tenanta vybrat tlačítko registrace a poskytnout souhlas s aplikací. Aplikace se pak přidá do externího tenanta, kde můžete provádět konfigurace. Aplikaci nemusíte explicitně přidávat.

  6. Budete přesměrováni na přihlašovací stránku aplikace nebo na stránku Microsoft Entra ID pro přihlašovací údaje.

  7. Po úspěšném ověření přijmete souhlas ze stránky souhlasu. Potom se zobrazí domovská stránka aplikace.

    Poznámka:

    Můžete přidat pouze jednu instanci aplikace. Pokud jste už přidali jeden a pokusili se znovu poskytnout souhlas, už se v tenantovi nepřidá. Logicky tedy můžete v tenantovi použít pouze jednu instanci aplikace.

  8. Pokud chcete přidat aplikaci OpenID z galerie, postupujte podle následujícího videa.

Tok ověřování pomocí OpenID Connect

Nejzásadnější tok přihlašování obsahuje následující kroky:

Tok ověřování pomocí OpenID Connect

Víceklientová aplikace

Víceklientní aplikace je určená pro použití v mnoha organizacích, ne jenom v jedné organizaci. Obvykle se jedná o aplikace typu software jako služba (SaaS), které napsal nezávislý dodavatel softwaru (ISV).

Víceklientských aplikací je potřeba zřídit v každém adresáři, kde se budou používat. Vyžadují souhlas uživatele nebo správce, aby je zaregistrovali. Tento proces vyjádření souhlasu se spustí, když je aplikace zaregistrovaná v adresáři a má přístup k rozhraní Graph API nebo jinému webovému rozhraní API. Když se uživatel nebo správce z jiné organizace zaregistruje k používání aplikace, zobrazí se v dialogovém okně oprávnění, která aplikace potřebuje.

Uživatel nebo správce pak může s aplikací souhlasit. Souhlas dává aplikaci přístup k stavovaným datům a nakonec aplikaci zaregistruje v adresáři.

Poznámka:

Pokud aplikaci zpřístupňujete uživatelům v několika adresářích, potřebujete mechanismus pro určení tenanta, ve kterém se nachází. Aplikace s jedním tenantem musí hledat pouze ve svém vlastním adresáři uživatele. Víceklientní aplikace potřebuje identifikovat konkrétního uživatele ze všech adresářů v Microsoft Entra ID.

K provedení této úlohy poskytuje Microsoft Entra ID společný koncový bod ověřování, ve kterém může libovolná víceklientová aplikace místo koncového bodu specifického pro tenanta směrovat žádosti o přihlášení. Tento koncový bod je https://login.microsoftonline.com/common určený pro všechny adresáře v Microsoft Entra ID. Koncový bod specifický pro tenanta může být https://login.microsoftonline.com/contoso.onmicrosoft.com.

Při vývoji aplikace je důležité zvážit běžný koncový bod. Při přihlašování, odhlášení a ověřování tokenu budete potřebovat potřebnou logiku pro zpracování více tenantů.

Microsoft Entra ID ve výchozím nastavení podporuje víceklientských aplikací. Jsou snadno přístupné napříč organizacemi a po přijetí souhlasu jsou snadno použitelné.

K vývoji víceklientských webových a nativních klientských aplikací můžete použít architekturu souhlasu Microsoft Entra. Tyto aplikace umožňují přihlášení uživatelskými účty z tenanta Microsoft Entra, a liší se od toho, kde je aplikace zaregistrovaná. Můžou také potřebovat přístup k webovým rozhraním API, například:

  • Rozhraní Microsoft Graph API pro přístup k Microsoft Entra ID, Intune a službám v Microsoftu 365.
  • Rozhraní API jiných služby Microsoft.
  • Vlastní webová rozhraní API.

Tento rámec je založený na uživateli nebo správci, který dává souhlas aplikaci, která žádá o registraci ve svém adresáři. Registrace může zahrnovat přístup k datům adresáře. Po udělení souhlasu může klientská aplikace za uživatele volat rozhraní Microsoft Graph API a podle potřeby tyto informace používat.

Rozhraní Microsoft Graph API poskytuje přístup k datům v Microsoftu 365, například:

  • Kalendáře a zprávy z Exchange.
  • Weby a seznamy ze SharePointu
  • Dokumenty z OneDrivu
  • Poznámkové bloky z OneNotu
  • Úkoly z Planneru
  • Sešity z Excelu

Rozhraní Graph API také poskytuje přístup uživatelům a skupinám z ID Microsoft Entra a dalších datových objektů z více cloudových služeb Microsoftu.

Následující kroky ukazují, jak funguje prostředí souhlasu pro vývojáře a uživatele aplikace:

  1. Předpokládejme, že máte webovou klientskou aplikaci, která potřebuje požádat o konkrétní oprávnění pro přístup k prostředku nebo rozhraní API. Azure Portal slouží k deklaraci žádostí o oprávnění v době konfigurace. Stejně jako ostatní nastavení konfigurace se stanou součástí registrace Microsoft Entra aplikace. Pro cestu k žádosti o oprávnění potřebujete následující postup:

    a. Klikněte na Registrace aplikací na levé straně nabídky a otevřete aplikaci zadáním názvu aplikace do vyhledávacího pole.

    Snímek obrazovky s vybranou možností

    b. Klikněte na Zobrazit oprávnění rozhraní API.

    Snímek obrazovky se stránkou Call A P I (Volání A P I) s vybraným tlačítkem Zobrazit oprávnění P I

    c. Klikněte na Přidat oprávnění.

    Snímek obrazovky znázorňující část Oprávnění P I s vybraným tlačítkem Přidat oprávnění

    d. Klikněte na Microsoft Graph.

    e. V části Delegovaná oprávnění a Oprávnění aplikace vyberte požadované možnosti.

    Graph API

  2. Vezměte v úvahu, že oprávnění vaší aplikace byla aktualizována. Aplikace je spuštěná a uživatel ji bude používat poprvé. Nejprve musí aplikace získat autorizační kód z koncového bodu Microsoft Entra ID /authorize. Autorizační kód pak můžete použít k získání nového přístupového a obnovovacího tokenu.

  3. Pokud uživatel ještě není ověřený, zobrazí se výzva k přihlášení pomocí koncového bodu Microsoft Entra ID /authorize.

    Snímek obrazovky s výzvou k přihlášení k účtu

  4. Po přihlášení uživatele určuje ID Microsoft Entra, jestli se má uživateli zobrazit stránka souhlasu. Toto rozhodnutí vychází z toho, jestli uživatel (nebo správce své organizace) už udělil souhlas s aplikací.

    Pokud nebyl udělen souhlas, Microsoft Entra vyzve uživatele k vyjádření souhlasu a zobrazí požadovaná oprávnění, která potřebuje k fungování. Oprávnění zobrazená v dialogovém okně souhlasu odpovídají oprávněním vybraným v delegovaných oprávněních.

    Stránka souhlasu

Běžný uživatel může udělit souhlas s některými oprávněními. Jiná oprávnění vyžadují souhlas správce tenanta.

Jako správce můžete také udělit souhlas s delegovanými oprávněními aplikace jménem všech uživatelů ve vašem tenantovi. Souhlas správce brání zobrazení dialogového okna souhlasu pro každého uživatele v tenantovi. Souhlas můžou poskytnout uživatelé, kteří mají roli správce. Vyberte Spravovat>oprávnění rozhraní API. V části Udělení souhlasu vyberte Udělit souhlas správce.

Poznámka:

Udělení výslovného souhlasu pomocí tlačítka Udělit souhlas správce se teď vyžaduje pro jednostrákové aplikace (SPA), které používají MSAL.js. V opačném případě aplikace selže při vyžádání přístupového tokenu.

Oprávnění jen pro aplikaci vždy vyžadují souhlas správce tenanta. Pokud vaše aplikace požádá o oprávnění jen pro aplikaci a uživatel se pokusí přihlásit k aplikaci, zobrazí se chybová zpráva. Zpráva říká, že uživatel nemůže souhlasit.

Pokud vaše aplikace používá oprávnění, která vyžadují souhlas správce, musíte mít gesto, jako je tlačítko nebo odkaz, kde může správce akci spustit. Žádost, kterou vaše aplikace odešle pro tuto akci, je obvyklým požadavkem na autorizaci OAuth2/OpenID Connect. Tento požadavek zahrnuje parametr řetězce dotazu prompt=admin_consent .

Po vyjádření souhlasu správce a vytvoření instančního objektu v tenantovi zákazníka nebudou později žádosti o přihlášení potřebovat parametr prompt=admin_consent . Vzhledem k tomu, že správce rozhodl, že požadovaná oprávnění jsou přijatelná, nebudou od tohoto okamžiku vyzváni k vyjádření souhlasu žádní další uživatelé v tenantovi.

Správce tenanta může zakázat možnost, aby běžní uživatelé udělili souhlas s aplikacemi. Pokud je tato funkce zakázaná, souhlas správce se vždy vyžaduje, aby se aplikace používala v tenantovi. Pokud chcete otestovat aplikaci se zakázaným souhlasem koncového uživatele, najdete přepínač konfigurace na webu Azure Portal. Je v části Uživatelská nastavení v části Podnikové aplikace.

Parametr prompt=admin_consent lze také použít aplikace, které požadují oprávnění, která nevyžadují souhlas správce. Příkladem je aplikace, která vyžaduje prostředí, kdy se správce tenanta jednou zaregistruje a žádní jiní uživatelé od tohoto okamžiku nebudou vyzváni k vyjádření souhlasu.

Představte si, že aplikace vyžaduje souhlas správce a správce se přihlásí bez odeslání parametru prompt=admin_consent . Pokud správce úspěšně souhlasí s aplikací, vztahuje se pouze na jeho uživatelský účet. Běžní uživatelé se stále nebudou moct přihlásit nebo udělit souhlas s aplikací. Tato funkce je užitečná, pokud chcete správci tenanta dát možnost prozkoumat aplikaci před povolením přístupu jiných uživatelů.

Další kroky

Nastavení jednotného přihlašování založeného na OIDC pro aplikaci ve vašem tenantovi Microsoft Entra