Instanční objekty aplikací a služeb v Azure Active Directory

Tento článek popisuje registraci aplikací, aplikační objekty a instanční objekty v Azure Active Directory (Azure AD): co jsou, jak se používají a jak spolu vzájemně souvisejí. K ilustraci vztahu mezi aplikačním objektem aplikace a odpovídajícími objekty objektu služby je uveden i scénář s více tenanty.

Registrace aplikací

Pokud chcete delegovat funkce správy identit a přístupu do Azure AD, musí být aplikace zaregistrovaná v tenantovi Azure AD. Při registraci aplikace v Azure AD vytváříte konfiguraci identity pro vaši aplikaci, která umožňuje integraci s Azure AD. Když zaregistrujete aplikaci v Azure Portal, zvolíte si, jestli se jedná o jednoho tenanta (přístupný jenom ve vašem tenantovi) nebo více tenantů (přístupných v jiných tenantech), a volitelně můžete nastavit identifikátor URI přesměrování (kam se přístupový token odesílá). Podrobné pokyny k registraci aplikace najdete v rychlém startu k registraci aplikací.

Po dokončení registrace aplikace máte globálně jedinečnou instanci aplikace (objekt aplikace), která se nachází ve vašem domovském tenantovi nebo adresáři. Máte také globálně jedinečné ID vaší aplikace (ID aplikace nebo klienta). Na portálu pak můžete přidat tajné kódy nebo certifikáty a obory, aby vaše aplikace fungovala, přizpůsobovat branding aplikace v přihlašovacím dialogovém okně a provádět další činnosti.

Pokud zaregistrujete aplikaci na portálu, v domovském tenantovi se automaticky vytvoří objekt aplikace i instanční objekt. Pokud zaregistrujete nebo vytvoříte aplikaci pomocí rozhraní API služby Microsoft Graph, vytvoření objektu objektu služby je samostatný krok.

Objekt aplikace

Aplikace Azure AD je definovaná jediným objektem aplikace, který se nachází v tenantovi Azure AD, kde byla aplikace zaregistrovaná (označuje se jako "domovský" tenant aplikace). Objekt aplikace se používá jako šablona nebo podrobný plán k vytvoření jednoho nebo více objektů objektu služby. Instanční objekt se vytvoří v každém tenantovi, ve kterém se aplikace používá. Podobně jako u třídy v objektově orientovaném programování má objekt aplikace některé statické vlastnosti, které se použijí na všechny vytvořené instanční objekty (nebo instance aplikace).

Objekt aplikace popisuje tři aspekty aplikace: jak může služba vydávat tokeny pro přístup k aplikaci, prostředky, ke které může aplikace potřebovat přístup, a akce, které může aplikace provádět.

Pomocí okna Registrace aplikací v okně Azure Portal zobrazit a spravovat objekty aplikace v domovském tenantovi.

Registrace aplikací okna

Entita Microsoft Graph Application definuje schéma pro vlastnosti objektu aplikace.

Objekt objektu služby

Pro přístup k prostředkům zabezpečeným tenantem Azure AD musí být entita, která vyžaduje přístup, reprezentována objektem zabezpečení. Tento požadavek platí pro uživatele (objekt zabezpečení uživatele) i pro aplikace (objekt služby). Objekt zabezpečení definuje zásady přístupu a oprávnění pro uživatele nebo aplikaci v tenantovi Azure AD. To umožňuje základní funkce, jako je ověřování uživatele nebo aplikace během přihlašování a autorizace během přístupu k prostředkům.

Existují tři typy objektů služby:

  • Aplikace – Typ instančního objektu je místní reprezentace nebo instance aplikace globálního objektu aplikace v jednom tenantovi nebo adresáři. V tomto případě je instanční objekt konkrétní instancí vytvořenou z objektu aplikace a dědí určité vlastnosti z tohoto objektu aplikace. Instanční objekt se vytvoří v každém tenantovi, kde se aplikace používá, a odkazuje na globálně jedinečný objekt aplikace. Instanční objekt definuje, co může aplikace skutečně dělat v konkrétním tenantovi, kdo má přístup k aplikaci a ke kterým prostředkům má aplikace přístup.

    Když má aplikace oprávnění pro přístup k prostředkům v tenantovi (při registraci nebo souhlasu), vytvoří se instanční objekt. Když zaregistrujete aplikaci pomocí Azure Portal, automaticky se vytvoří objekt služby. Instanční objekty v tenantovi můžete vytvářet také pomocí Azure PowerShell, Azure CLI, Microsoft Graph a dalších nástrojů.

  • Spravovaná identita – tento typ objektu služby slouží k reprezentaci spravované identity. Spravované identity eliminují potřebu vývojářů spravovat přihlašovací údaje. Spravované identity poskytují identitu, kterou mohou aplikace používat při připojování k prostředkům, které podporují ověřování Azure AD. Když je povolená spravovaná identita, vytvoří se ve vašem tenantovi instanční objekt představující spravovanou identitu. Objektům služby představujícím spravované identity je možné udělit přístup a oprávnění, ale nelze je přímo aktualizovat ani upravit.

  • Starší verze – Tento typ objektu služby představuje starší verzi aplikace, což je aplikace vytvořená před zahájením registrace aplikací nebo aplikace vytvořená prostřednictvím starších verzí prostředí. Starší verze objektu služby může mít přihlašovací údaje, názvy objektů služby, adresy URL odpovědí a další vlastnosti, které může autorizovaný uživatel upravit, ale nemá přidruženou registraci aplikace. Instanční objekt je možné použít pouze v tenantovi, ve kterém byl vytvořen.

Entita Microsoft Graph ServicePrincipal definuje schéma pro vlastnosti objektu objektu služby.

K zobrazení seznamu a Enterprise instančních objektů v tenantovi Azure Portal můžete použít okno Enterprise aplikací ve službě Microsoft Azure. Můžete si zobrazit oprávnění instančního objektu, oprávnění odsoulaná uživatelem, která uživatelé tento souhlas provedli, přihlašovací údaje a další informace.

Enterprise aplikací

Vztah mezi objekty aplikace a objekty služby

Objekt aplikace je globální reprezentace vaší aplikace pro použití ve všech tenantech a instanční objekt je místní reprezentace pro použití v konkrétním tenantovi. Aplikační objekt slouží jako šablona, ze které se odvozují běžné nebo výchozí vlastnosti, které se používají při vytváření odpovídajících instančních objektů.

Objekt aplikace má:

  • Vztah 1:1 se softwarovou aplikací a
  • Relace 1:N s odpovídajícími objekty objektu služby

Instanční objekt se musí vytvořit v každém tenantovi, kde se aplikace používá, a umožnit mu tak vytvoření identity pro přihlášení nebo přístup k prostředkům zabezpečeným tenantem. Aplikace s jedním tenantem má jenom jeden instanční objekt (ve svém domovském tenantovi), který je vytvořený a odsouhlasený k použití při registraci aplikace. Aplikace s více tenanty má také instanční objekt vytvořený v každém tenantovi, kde uživatel z tohoto tenanta souhlasí s jeho použitím.

Důsledky úpravy a odstranění aplikací

Všechny změny, které v objektu aplikace změníte, se projeví také v jeho instančním objektu pouze v domovském tenantovi aplikace (tenant, ve kterém byl zaregistrovaný). To znamená, že odstraněním objektu aplikace se odstraní také jeho hlavní objekt služby domovského tenanta. Obnovením tohoto objektu aplikace se ale obnoví odpovídající objekt služby. U aplikací s více tenanty se změny objektu aplikace neprojeví v objektech instančního objektu tenantů příjemce, dokud se přístup neodebral prostřednictvím aplikačního objektu Přístupový panel znovu neudělí.

Příklad

Následující diagram znázorňuje vztah mezi aplikačním objektem aplikace a odpovídajícími instančními objekty v kontextu ukázkové aplikace s více tenanty s názvem Hr app. V tomto příkladu scénáře jsou tři tenanti Azure AD:

  • Adatum – tenant používaný společností, která vyvinula aplikaci personálního oddělení
  • Contoso – Tenant používaný organizací Contoso, která je příjemcem aplikace personálního oddělení
  • Fabrikam – tenant, kterého používá organizace Fabrikam, která také využívá aplikaci personálního oddělení

Vztah mezi objektem aplikace a hlavním objektem služby

V tomto příkladu scénáře:

Krok Description
1 Je proces vytváření objektů aplikace a instančního objektu v domovském tenantovi aplikace.
2 Když správci společnosti Contoso a společnosti Fabrikam dokončí souhlas, vytvoří se instanční objekt v tenantovi Azure AD společnosti a přiřadí se mu oprávnění udělená správcem. Všimněte si také, že aplikace personálního oddělení může být nakonfigurovaná nebo navržená tak, aby uživatelům umožnila udělení souhlasu pro individuální použití.
3 Tenanti příjemce aplikace personálního oddělení (Contoso a Fabrikam) mají vlastní objekt objektu služby. Každá představuje použití instance aplikace za běhu, která se řídí oprávněními odsoulaných příslušným správcem.

Další kroky

Zjistěte, jak vytvořit objekt služby: