Konfigurace vaší App Service nebo Azure Functions pro použití přihlášení k Azure AD
Tento článek ukazuje, jak nakonfigurovat ověřování pro Azure App Service nebo Azure Functions tak, aby vaše aplikace při přihlášení uživatelů jako zprostředkovatele ověřování Microsoft identity platform (Azure AD).
Funkce App Service Authentication (Ověřování aplikací) může automaticky vytvořit registraci aplikace s Microsoft identity platform. Můžete také použít registraci, kterou vy nebo správce adresáře vytváříte samostatně.
Poznámka
Možnost vytvořit novou registraci není dostupná pro cloudy státní správy. Místo toho definujte registraci samostatně.
Možnost 1: Automatické vytvoření nové registrace aplikace
Tato možnost je navržená tak, aby povolování ověřování bylo jednoduché, a vyžaduje jen pár kliknutí.
Přihlaste se k Azure Portal a přejděte do své aplikace.
V nabídce na levé straně vyberte Ověřování. Klikněte na Přidat zprostředkovatele identity.
V rozevíracím seznamu zprostředkovatel identity vyberte Microsoft. Ve výchozím nastavení je vybraná možnost pro vytvoření nové registrace. Můžete změnit název registrace nebo podporované typy účtů.
Vytvoří se tajný klíč klienta a uloží se jako nastavení aplikace s přichytátkem slotů s názvem
MICROSOFT_PROVIDER_AUTHENTICATION_SECRET. Toto nastavení můžete později aktualizovat, abyste Key Vault odkazy, pokud chcete tajný kód spravovat v Azure Key Vault.Pokud se jedná o prvního zprostředkovatele identity nakonfigurovaného pro aplikaci, zobrazí se také výzva s App Service ověřování. Jinak můžete přejít k dalšímu kroku.
Tyto možnosti určují, jak vaše aplikace reaguje na neověřené požadavky, a výchozí výběry přesměrují všechny požadavky na přihlášení k tomuto novému poskytovateli. Toto chování teď můžete změnit nebo můžete tato nastavení upravit později na hlavní obrazovce Ověřování tak, že vedle nastavení ověřování zvolíte Upravit. Další informace o těchto možnostech najdete v tématu Tok ověřování.
(Volitelné) Klikněte na Další: Oprávnění a přidejte všechny obory, které aplikace potřebuje. Ty se přičtou do registrace aplikace, ale můžete je také později změnit.
Klikněte na Přidat.
Teď jste připraveni použít aplikaci Microsoft identity platform ověřování ve vaší aplikaci. Poskytovatel bude uvedený na obrazovce Ověřování. Odtud můžete tuto konfiguraci poskytovatele upravit nebo odstranit.
Příklad konfigurace přihlášení Azure AD pro webovou aplikaci, která přistupuje k Azure Storage a Microsoft Graph, najdete v tomto kurzu.
Možnost 2: Použití existující registrace vytvořené samostatně
Aplikaci můžete také ručně zaregistrovat pro Microsoft identity platform, přizpůsobení registrace a konfiguraci ověřování App Service s podrobnostmi registrace. To je užitečné například v případě, že chcete použít registraci aplikace z jiného tenanta Azure AD, než ve které je vaše aplikace.
Vytvoření registrace aplikace ve službě Azure AD pro App Service aplikace
Nejprve vytvoříte registraci aplikace. Při tom shromáždíte následující informace, které budete potřebovat později při konfiguraci ověřování v App Service aplikaci:
- ID klienta
- ID tenanta
- Tajný klíč klienta (volitelné)
- Identifikátor URI ID aplikace
Pokud chcete aplikaci zaregistrovat, proveďte následující kroky:
Přihlaste se k [Azure Portal,]vyhledejte a vyberte App Services a pak vyberte svou aplikaci. Poznamenejte si adresu URL vaší aplikace. Použijete ho ke konfiguraci registrace Azure Active Directory aplikace.
V nabídce portálu vyberte Azure Active Directory, pak přejděte na kartu Registrace aplikací a vyberte Nová registrace.
Na stránce Zaregistrovat aplikaci zadejte Název registrace aplikace.
V části Identifikátor URI pro přesměrování vyberte Web a zadejte
<app-url>/.auth/login/aad/callback. Například,https://contoso.azurewebsites.net/.auth/login/aad/callback.Vyberte Zaregistrovat.
Po vytvoření registrace aplikace zkopírujte ID aplikace (klienta) a ID adresáře (tenanta) pro pozdější použití.
Vyberte Ověřování. V části Implicitní udělení a hybridní toky povolte tokeny ID, které Připojení OpenID pro přihlašování uživatelů z App Service. Vyberte Uložit.
(Volitelné) Vyberte Branding. V části Adresa URL domovské stránky zadejte adresu URL vaší aplikace App Service a vyberte Uložit.
Vyberte Expose an API (Zveřejnit rozhraní API) a klikněte na Set (Nastavit) vedle application ID URI (Identifikátor URI ID aplikace). Tato hodnota jednoznačně identifikuje aplikaci, pokud se používá jako prostředek, a umožňuje vyžádat tokeny, které udělují přístup. Používá se jako předpona pro obory, které vytvoříte.
Pro aplikaci s jedním tenantem můžete použít výchozí hodnotu ve tvaru
api://<application-client-id>. Můžete také zadat čitelný identifikátor URI, například na základě jednéhttps://contoso.com/apiz ověřených domén pro vašeho tenanta. Pro aplikaci s více tenanty musíte zadat vlastní identifikátor URI. Další informace o přijímacích formátech pro identifikátory URI ID aplikací najdete v referenčních informacích k osvědčeným postupům registrace aplikací.Hodnota se automaticky uloží.
Vyberte Přidat obor.
- V části Přidat obor je identifikátor URI ID aplikace hodnota, kterou jste nastavili v předchozím kroku. Vyberte Uložit a pokračovat.
- Do pole Název oboru zadejte user_impersonation.
- Do textových polí zadejte název oboru souhlasu a popis, který mají uživatelé vidět na stránce souhlasu. Zadejte například Přístup < k > názvu aplikace.
- Vyberte Přidat obor.
(Volitelné) Pokud chcete vytvořit tajný klíč klienta, vyberte Certifikáty & tajné kódy > klienta Nový tajný klíč > klienta. Zadejte popis a vypršení platnosti a vyberte Přidat. Zkopírujte hodnotu tajného klíče klienta zobrazenou na stránce. Znovu se nezobrazí.
(Volitelné) Pokud chcete přidat více adres URL odpovědí, vyberte Ověřování.
Povolení Azure Active Directory ve App Service aplikaci
Přihlaste se k Azure Portal a přejděte do své aplikace.
V nabídce na levé straně vyberte Ověřování. Klikněte na Přidat zprostředkovatele identity.
V rozevíracím seznamu zprostředkovatel identity vyberte Microsoft.
V části Typ registrace aplikace můžete vybrat existující registraci aplikace v tomto adresáři, která automaticky shromáždí potřebné informace o aplikaci. Pokud vaše registrace pochází z jiného tenanta nebo nemáte oprávnění k zobrazení objektu registrace, zvolte Zadejte podrobnosti o registraci existující aplikace. U této možnosti budete muset vyplnit následující podrobnosti o konfiguraci:
Pole Description ID aplikace (klienta) Použijte ID aplikace (klienta) registrace aplikace. Tajný klíč klienta Použijte tajný klíč klienta, který jste vygeneroval při registraci aplikace. S tajným kódem klienta se použije hybridní tok a App Service vrátí přístupové a obnovovací tokeny. Pokud tajný klíč klienta není nastavený, použije se implicitní tok a vrátí se pouze token ID. Tyto tokeny odesílá zprostředkovatel a ukládají se do úložiště tokenů EasyAuth. Adresa URL vystavitele Použijte a nahraďte koncovým bodem ověřování pro vaše cloudové prostředí (např. " pro globální Azure) a nahraďte také ID adresáře (tenanta), ve kterém byla registrace <authentication-endpoint>/<tenant-id>/v2.0<authentication-endpoint> aplikace https://login.microsoftonline.com <tenant-id> vytvořena. Tato hodnota slouží k přesměrování uživatelů do správného tenanta Azure AD a také ke stažení příslušných metadat, aby bylo možné například určit odpovídající podpisové klíče tokenu a hodnotu deklarace vystavitele tokenu. U aplikací, které používají Azure AD v1 a Azure Functions aplikace, v adrese/v2.0URL vypište .Povolené cílové skupiny tokenů Pokud se jedná o cloudovou nebo serverovou aplikaci a chcete povolit ověřovací tokeny z webové aplikace, přidejte sem identifikátor URI ID aplikace webové aplikace. Nakonfigurované ID klienta se vždy implicitně považuje za povolenou cílovou skupinu. Tajný klíč klienta se uloží jako nastavení aplikace s sticky slotu s názvem
MICROSOFT_PROVIDER_AUTHENTICATION_SECRET. Pokud chcete tajný kód spravovat v Key Vault, můžete toto nastavení později Azure Key Vault.Pokud se jedná o prvního zprostředkovatele identity nakonfigurovaného pro aplikaci, zobrazí se také výzva s App Service ověřování. Jinak můžete přejít k dalšímu kroku.
Tyto možnosti určují, jak vaše aplikace reaguje na neověřené požadavky, a výchozí výběry přesměrují všechny požadavky na přihlášení k tomuto novému poskytovateli. Toto chování teď můžete změnit nebo můžete tato nastavení upravit později na hlavní obrazovce Ověřování tak, že vedle nastavení ověřování zvolíte Upravit. Další informace o těchto možnostech najdete v tématu Tok ověřování.
Klikněte na Přidat.
Teď jste připraveni použít aplikaci Microsoft identity platform ověřování ve vaší aplikaci. Poskytovatel bude uvedený na obrazovce Ověřování. Odtud můžete tuto konfiguraci poskytovatele upravit nebo odstranit.
Konfigurace klientských aplikací pro přístup k App Service
V předchozí části jste zaregistrovali svou aplikaci nebo App Service Azure Pro ověřování uživatelů. Tato část vysvětluje, jak zaregistrovat aplikace nativního klienta nebo démona, aby si mohli vyžádat přístup k rozhraním API zveřejněným vaším App Service jménem uživatelů nebo samotných. Dokončení kroků v této části není nutné, pokud chcete ověřovat pouze uživatele.
Nativní klientská aplikace
Můžete registrovat nativní klienty, kteří žádají o App Service rozhraní API vaší aplikace jménem přihlášené uživatele.
V okně Azure Portalvyberte Active Directory > Registrace aplikací > Nová registrace.
Na stránce Zaregistrovat aplikaci zadejte Název registrace aplikace.
V části Identifikátor URI pro přesměrování vyberte Veřejný klient (mobilní & desktop) a zadejte adresu URL
<app-url>/.auth/login/aad/callback. Například,https://contoso.azurewebsites.net/.auth/login/aad/callback.Poznámka
Pro Microsoft Store použijte identifikátor SID balíčku jako identifikátor URI.
Vyberte Vytvořit.
Po vytvoření registrace aplikace zkopírujte hodnotu ID aplikace (klienta).
Vyberte Oprávnění rozhraní API Přidání > oprávnění Moje rozhraní > API.
Vyberte registraci aplikace, kterou jste vytvořili dříve pro App Service aplikace. Pokud registraci aplikace nevidíte, ujistěte se, že jste v části Vytvoření registrace aplikace v Azure AD pro vaši aplikaci user_impersonation přidali obor App Service.
V části Delegovaná oprávnění user_impersonation a pak vyberte Přidat oprávnění.
Nyní jste nakonfigurovali nativní klientskou aplikaci, která může požádat o App Service aplikace jménem uživatele.
Klientská aplikace démona (volání mezi službou)
Vaše aplikace může získat token pro volání webového rozhraní API hostovaného v App Service nebo aplikaci funkcí za sebe (ne jménem uživatele). Tento scénář je užitečný pro neinteraktivní aplikace démona, které provádějí úlohy bez přihlášeného uživatele. Používá standardní udělení přihlašovacích údajů klienta OAuth 2.0.
- V okně Azure Portalvyberte Active Directory > Registrace aplikací > Nová registrace.
- Na stránce Zaregistrovat aplikaci zadejte Název registrace aplikace démona.
- Pro aplikaci démona nepotřebujete identifikátor URI přesměrování, abyste ho mohli ponechat prázdnou.
- Vyberte Vytvořit.
- Po vytvoření registrace aplikace zkopírujte hodnotu ID aplikace (klienta).
- Vyberte Certifikáty a tajné & Nový tajný klíč > klienta > Přidat. Zkopírujte hodnotu tajného klíče klienta zobrazenou na stránce. Znovu se nezobrazí.
Teď si můžete vyžádat přístupový token pomocí ID klienta a tajného klíče klienta nastavením parametru na identifikátor URI ID aplikace resource cílové aplikace. Výsledný přístupový token je pak možné cílové aplikaci předložit pomocí standardní autorizační hlavičky OAuth 2.0a ověřování / autorizace App Service ověří a použije token obvyklým způsobem, aby nyní indikoval, že volající (v tomto případě aplikace, nikoli uživatel) je ověřený.
V současné době to umožňuje každé klientské aplikaci ve vašem tenantovi Azure AD požádat o přístupový token a ověřit se v cílové aplikaci. Pokud chcete vynucovat autorizaci, která povolí jenom určité klientské aplikace, musíte provést určitou další konfiguraci.
- Definujte roli aplikace v manifestu registrace aplikace, která představuje App Service nebo aplikaci funkcí, kterou chcete chránit.
- V registraci aplikace představujícího klienta, který musí být autorizovaný, vyberte Oprávnění rozhraní API > Přidat oprávnění Moje rozhraní > API.
- Vyberte registraci aplikace, kterou jste vytvořili dříve. Pokud registraci aplikace nevidíte, ujistěte se, že jste přidali roli aplikace.
- V části Oprávnění aplikace vyberte roli aplikace, kterou jste vytvořili dříve, a pak vyberte Přidat oprávnění.
- Nezapomeňte kliknout na Udělit souhlas správce a autorizovat klientskou aplikaci k vyžádání oprávnění.
- Podobně jako v předchozím scénáři (před přidáním jakýchkoli rolí) si teď můžete vyžádat přístupový token pro stejný cíl a přístupový token bude obsahovat deklaraci identity obsahující role aplikace autorizované pro
resourcerolesklientskou aplikaci. - V cílovém App Service kódu aplikace funkcí teď můžete ověřit, jestli token obsahuje očekávané role (neschová se App Service ověřování/ autorizace). Další informace najdete v tématu Přístup k deklaraci identity uživatelů.
Právě jste nakonfigurovali klientskou aplikaci démona, která má přístup App Service aplikace pomocí vlastní identity.
Osvědčené postupy
Bez ohledu na konfiguraci, kterou použijete k nastavení ověřování, budou tenanty a aplikace zabezpečenější pomocí následujících osvědčených postupů:
- Každé aplikaci App Service vlastní oprávnění a souhlas.
- Nakonfigurujte každou App Service vlastní registraci.
- Vyhněte se sdílení oprávnění mezi prostředími pomocí samostatných registrací aplikací pro samostatné sloty nasazení. Při testování nového kódu může tento postup pomoct zabránit problémům v ovlivnění produkční aplikace.