Alkalmazás- és szolgáltatásnév-objektumok az Azure Active DirectorybanApplication and service principal objects in Azure Active Directory

Ez a cikk az alkalmazások regisztrálását, az alkalmazások objektumait és az egyszerű szolgáltatásokat ismerteti Azure Active Directoryban: mit, hogyan használják, és hogyan kapcsolódnak egymáshoz.This article describes application registration, application objects, and service principals in Azure Active Directory: what they are, how they're used, and how they are related to each other. Egy több-bérlős példa is látható, amely szemlélteti az alkalmazás alkalmazás-objektuma és a hozzá tartozó egyszerű szolgáltatásnév objektumok közötti kapcsolatot.A multi-tenant example scenario is also presented to illustrate the relationship between an application's application object and corresponding service principal objects.

AlkalmazásregisztrációApplication registration

Az identitás-és hozzáférés-kezelési funkciók Azure AD-be való delegálásához egy alkalmazást regisztrálni kell egy Azure AD- bérlőben.In order to delegate Identity and Access Management functions to Azure AD, an application must be registered with an Azure AD tenant. Ha az Azure AD-vel regisztrálja az alkalmazást, az alkalmazáshoz olyan identitás-konfigurációt hoz létre, amely lehetővé teszi, hogy integrálható legyen az Azure AD-vel.When you register your application with Azure AD, you are creating an identity configuration for your application that allows it to integrate with Azure AD. Ha a Azure Portalbanregisztrál egy alkalmazást, Ön dönti el, hogy egyetlen bérlő (csak a bérlőben érhető el) vagy több-bérlős (más bérlők számára elérhető), és igény szerint beállíthat-e ÁTirányítási URI-t (ahol a hozzáférési jogkivonat el van küldve).When you register an app in the Azure portal, you choose whether it's a single tenant (only accessible in your tenant) or multi-tenant (accessible to in other tenants) and can optionally set a redirect URI (where the access token is sent to).

Képernyőkép a Azure Portal az alkalmazás regisztrálása panelről

Az alkalmazás regisztrációjának befejezése után az alkalmazás (az Application objektum) globálisan egyedi példánya van, amely a saját bérlőn vagy címtáron belül él.When you've completed the app registration, you have a globally unique instance of the app (the application object) which lives within your home tenant or directory. Az alkalmazáshoz (az alkalmazáshoz vagy az ügyfél-AZONOSÍTÓhoz) globálisan egyedi azonosítót is használhat.You also have a globally unique ID for your app (the app or client ID). A portálon titkokat vagy tanúsítványokat és hatóköröket adhat hozzá az alkalmazás működéséhez, testreszabhatja az alkalmazás arculatát a bejelentkezési párbeszédpanelen, és így tovább.In the portal, you can then add secrets or certificates and scopes to make your app work, customize the branding of your app in the sign-in dialog, and more.

Ha regisztrál egy alkalmazást a portálon, a rendszer automatikusan létrehoz egy Application-objektumot és egy egyszerű szolgáltatásnevet a saját bérlőben.If you register an application in the portal, an application object as well as a service principal object are automatically created in your home tenant. Ha a Microsoft Graph API-k használatával regisztrál/hoz létre alkalmazást, az egyszerű szolgáltatás létrehozása egy külön lépés.If you register/create an application using the Microsoft Graph APIs, creating the service principal object is a separate step.

Application objektumApplication object

Egy Azure AD-alkalmazást egy és csak egy Application objektum definiál, amely abban az Azure AD-bérlőben található, ahol az alkalmazás regisztrálva van (vagyis az alkalmazás "Home" bérlője).An Azure AD application is defined by its one and only application object, which resides in the Azure AD tenant where the application was registered (known as the application's "home" tenant). Az Application Object sablonként vagy tervrajzként használható egy vagy több egyszerű szolgáltatásnév létrehozásához.An application object is used as a template or blueprint to create one or more service principal objects. A rendszer minden olyan bérlőn létrehoz egy szolgáltatásnevet, amelyben az alkalmazás használatban van.A service principal is created in every tenant where the application is used. Az objektumorientált programozáshoz hasonlóan az Application objektumhoz is vannak olyan statikus tulajdonságok, amelyek az összes létrehozott egyszerű szolgáltatásra (vagy alkalmazás példányaira) vonatkoznak.Similar to a class in object-oriented programming, the application object has some static properties that are applied to all the created service principals (or application instances).

Az Application objektum az alkalmazás három aspektusát ismerteti: Hogyan lehet jogkivonatokat kiállítani az alkalmazáshoz való hozzáféréshez, az alkalmazáshoz szükséges erőforrásokat és az alkalmazás által elvégezhető műveleteket.The application object describes three aspects of an application: how the service can issue tokens in order to access the application, resources that the application might need to access, and the actions that the application can take.

A Azure Portal Alkalmazásregisztrációk paneljének használatával listázhatja és kezelheti a saját bérlője alkalmazás-objektumait.The App registrations blade in the Azure portal is used to list and manage the application objects in your home tenant.

Alkalmazásregisztrációk panel

A Microsoft Graph alkalmazás entitása határozza meg az Application objektum tulajdonságainak sémáját.The Microsoft Graph Application entity defines the schema for an application object's properties.

Egyszerű szolgáltatásnév objektumService principal object

Az Azure AD-bérlő által védett erőforrások eléréséhez a hozzáférést igénylő entitást egy rendszerbiztonsági tagnek kell képviselnie.To access resources that are secured by an Azure AD tenant, the entity that requires access must be represented by a security principal. Ez a követelmény mind a felhasználók (felhasználói tag), mind az alkalmazások (egyszerű szolgáltatásnév) esetében igaz.This requirement is true for both users (user principal) and applications (service principal). A rendszerbiztonsági tag meghatározza az Azure AD-bérlőben a felhasználóhoz/alkalmazáshoz tartozó hozzáférési szabályzatot és engedélyeket.The security principal defines the access policy and permissions for the user/application in the Azure AD tenant. Ez lehetővé teszi az olyan alapvető funkciók használatát, mint a felhasználó/alkalmazás hitelesítése a bejelentkezéskor és az erőforrás-hozzáférés engedélyezésekor.This enables core features such as authentication of the user/application during sign-in, and authorization during resource access.

Egy egyszerű szolgáltatásnév egy globális Application objektum helyi képviselete vagy alkalmazás-példánya egyetlen bérlőben vagy címtárban.A service principal is the local representation, or application instance, of a global application object in a single tenant or directory. Az egyszerű szolgáltatásnév az Application objektumból létrehozott konkrét példány, amely bizonyos tulajdonságokat örököl az alkalmazás-objektumtól.A service principal is a concrete instance created from the application object and inherits certain properties from that application object. A rendszer minden olyan bérlőn létrehoz egy szolgáltatásnevet, amelyben az alkalmazás használatban van, és hivatkozik a globálisan egyedi alkalmazás-objektumra.A service principal is created in each tenant where the application is used and references the globally unique app object. Az egyszerű szolgáltatásnév objektum azt határozza meg, hogy az alkalmazás mit tud ténylegesen végrehajtani az adott bérlőn, ki férhet hozzá az alkalmazáshoz, és hogy milyen erőforrások férhetnek hozzá az alkalmazáshoz.The service principal object defines what the app can actually do in the specific tenant, who can access the app, and what resources the app can access.

Ha egy alkalmazás engedélyt kap a bérlő erőforrásainak elérésére (regisztráció vagy beleegyezésesetén), létrejön egy egyszerű szolgáltatásnév objektum.When an application is given permission to access resources in a tenant (upon registration or consent), a service principal object is created. A Azure PowerShell, az Azure CLI, a Microsoft Graph, a Azure Portalés más eszközök használatával is létrehozhat egyszerű szolgáltatásnév-objektumokat a bérlőn.You can also create service principal object in a tenant using Azure PowerShell, Azure CLI, Microsoft Graph, the Azure portal, and other tools. A portál használatakor a rendszer automatikusan létrehoz egy szolgáltatásnevet az alkalmazások regisztrálásakor.When using the portal, a service principal is created automatically when you register an application.

A portál vállalati alkalmazások paneljén az egyszerű szolgáltatások listázása és kezelése történik a bérlőben.The Enterprise applications blade in the portal is used to list and manage the service principals in a tenant. Megtekintheti az egyszerű szolgáltatás engedélyeit, a felhasználó által megadott engedélyeket, amelyeket a felhasználók megtettek a beleegyezés, a bejelentkezési adatok és egyebek között.You can see the service principal's permissions, user consented permissions, which users have done that consent, sign in information, and more.

Vállalati alkalmazások panel

A Microsoft Graph ServicePrincipal entitás definiálja az egyszerű szolgáltatásnév objektumának sémáját.The Microsoft Graph ServicePrincipal entity defines the schema for a service principal object's properties.

Alkalmazás-és egyszerű szolgáltatások közötti kapcsolatRelationship between application objects and service principals

Az Application objektum az alkalmazás globális ábrázolása az összes bérlő esetében, és az egyszerű szolgáltatásnév egy adott bérlőn való használatra szolgáló helyi képviselet.The application object is the global representation of your application for use across all tenants, and the service principal is the local representation for use in a specific tenant.

Az alkalmazásobjektum szolgál sablonként, amelyből a közös és az alapértelmezett tulajdonságok származtatása történik a megfelelő szolgáltatásnév-objektumok létrehozásához.The application object serves as the template from which common and default properties are derived for use in creating corresponding service principal objects. Az Application objektumnak ezért 1:1 kapcsolattal kell rendelkeznie a szoftver alkalmazással, és 1: sok kapcsolat van a hozzá tartozó szolgáltatásnév-objektummal.An application object therefore has a 1:1 relationship with the software application, and a 1:many relationship with its corresponding service principal object(s).

Minden olyan bérlőn létre kell hozni egy szolgáltatásnevet, amelyben az alkalmazás használatban van, ami lehetővé teszi, hogy személyazonosságot hozzon létre a bejelentkezéshez és/vagy a bérlő által védett erőforrásokhoz való hozzáféréshez.A service principal must be created in each tenant where the application is used, enabling it to establish an identity for sign-in and/or access to resources being secured by the tenant. Egybérlős alkalmazás csak egy szolgáltatásnévvel rendelkezik (a saját bérlőjében), melynek létrehozása és a használatának engedélyezése az alkalmazás regisztrációja során történik.A single-tenant application has only one service principal (in its home tenant), created and consented for use during application registration. A több-bérlős webalkalmazások/API-k egy egyszerű szolgáltatásnevet is létrehoznak minden olyan bérlőn, ahol az adott bérlő felhasználója beleegyezett a használatára.A multi-tenant Web application/API also has a service principal created in each tenant where a user from that tenant has consented to its use.

Megjegyzés

Az alkalmazás-objektumon végrehajtott módosításokat a rendszer csak az alkalmazás otthoni bérlője (a bérlő, ahol regisztrálva van) egyszerű szolgáltatásnév objektumában is megjeleníti.Any changes you make to your application object, are also reflected in its service principal object in the application's home tenant only (the tenant where it was registered). A több-bérlős alkalmazások esetében az Application objektum módosításai nem jelennek meg a fogyasztói bérlők egyszerű szolgáltatásaiban, amíg el nem távolítja a hozzáférést az alkalmazás-hozzáférési paneljén , és nem ad vissza engedélyt.For multi-tenant applications, changes to the application object are not reflected in any consumer tenants' service principal objects, until the access is removed through the Application Access Panel and granted again.

Azt is vegye figyelembe, hogy a natív alkalmazások alapértelmezés szerint több-bérlőként vannak regisztrálva.Also note that native applications are registered as multi-tenant by default.

PéldaExample

Az alábbi ábrán az alkalmazás alkalmazás-objektuma és a hozzá tartozó egyszerű szolgáltatásnév objektumok közötti kapcsolat látható az HR-alkalmazás nevű minta több-bérlős alkalmazás kontextusában.The following diagram illustrates the relationship between an application's application object and corresponding service principal objects, in the context of a sample multi-tenant application called HR app. Ebben a példában három Azure AD-bérlő található:There are three Azure AD tenants in this example scenario:

  • Adatum – a HR-alkalmazást fejlesztő vállalat által használt bérlőAdatum - The tenant used by the company that developed the HR app
  • Contoso – a contoso szervezet által használt bérlő, amely a HR-alkalmazás fogyasztójaContoso - The tenant used by the Contoso organization, which is a consumer of the HR app
  • Fabrikam – a fabrikam-szervezet által használt bérlő, amely a HR-alkalmazást is használjaFabrikam - The tenant used by the Fabrikam organization, which also consumes the HR app

Kapcsolat az alkalmazás-objektum és az egyszerű szolgáltatásnév objektum között

Ebben a példában a következő forgatókönyvben:In this example scenario:

LépésStep LeírásDescription
11 Az alkalmazás és a szolgáltatás egyszerű objektumainak létrehozásának folyamata az alkalmazás kezdőlapjának bérlője.Is the process of creating the application and service principal objects in the application's home tenant.
22 Ha a contoso és a fabrikam rendszergazdája teljes körű beleegyezik, a rendszer létrehoz egy egyszerű szolgáltatásnév-objektumot a vállalat Azure AD-bérlőben, és hozzárendeli a rendszergazda által megadott engedélyeket.When Contoso and Fabrikam administrators complete consent, a service principal object is created in their company's Azure AD tenant and assigned the permissions that the administrator granted. Azt is vegye figyelembe, hogy a HR-alkalmazás konfigurálható/úgy lett kialakítva, hogy engedélyezze a felhasználók számára az egyéni használatra való hozzájárulásukat.Also note that the HR app could be configured/designed to allow consent by users for individual use.
33 A HR-alkalmazás (contoso és Fabrikam) fogyasztói bérlői mindegyike saját egyszerű szolgáltatásnév-objektummal rendelkezik.The consumer tenants of the HR application (Contoso and Fabrikam) each have their own service principal object. Mindegyik azt jelenti, hogy az alkalmazás egy példányát futásidőben, a megfelelő rendszergazda által eljuttatott engedélyek szabályozzák.Each represents their use of an instance of the application at runtime, governed by the permissions consented by the respective administrator.

Következő lépésekNext steps