Service-principals verkennen
Als u identiteits- en toegangsbeheerfuncties wilt delegeren aan Microsoft Entra ID, moet een toepassing zijn geregistreerd bij een Microsoft Entra-tenant. Wanneer u uw toepassing registreert bij Microsoft Entra ID, maakt u een identiteitsconfiguratie voor uw toepassing waarmee deze kan worden geïntegreerd met Microsoft Entra-id. Wanneer u een app registreert in Azure Portal, kiest u of deze het volgende is:
- Eén tenant: alleen toegankelijk in uw tenant
- Meerdere tenants: toegankelijk in andere tenants
Als u een toepassing registreert in de portal, worden er automatisch een toepassingsobject (het wereldwijd unieke exemplaar van de app) en een service-principal-object gemaakt in uw thuistenant. U hebt ook een wereldwijd unieke id voor uw app (de app- of client-id). In de portal kunt u vervolgens geheimen of certificaten en bereiken toevoegen om uw app te laten werken, de huisstijl van uw app aanpassen in het aanmeldingsdialoogvenster en meer.
Notitie
U kunt ook service-principalobjecten in een tenant maken met Azure PowerShell, Azure CLI, Microsoft Graph en andere hulpprogramma's.
Toepassingsobject
Een Microsoft Entra-toepassing heeft het bereik van het ene en enige toepassingsobject. Het toepassingsobject bevindt zich in de Microsoft Entra-tenant waar de toepassing is geregistreerd (ook wel 'home' van de toepassing genoemd). Een toepassingsobject wordt gebruikt als sjabloon of blauwdruk om een of meer objecten voor de service-principal te maken. Er wordt een service-principal gemaakt in elke tenant waarin de toepassing wordt gebruikt. Net als bij een klasse in op objecten georiënteerd programmeren heeft het toepassingsobject enkele statische eigenschappen die worden toegepast op alle gemaakte service-principals (of toepassingsexemplaren).
In het toepassingsobject worden drie aspecten van een toepassing beschreven:
- Hoe de service tokens kan uitgeven om toegang te krijgen tot de toepassing.
- Resources waartoe de toepassing mogelijk toegang moet hebben.
- De acties die de toepassing kan uitvoeren.
De Entiteit van toepassing van Microsoft Graph definieert het schema voor de eigenschappen van een toepassingsobject.
Service-principalobject
Voor toegang tot resources die worden beveiligd door een Microsoft Entra-tenant, moet de entiteit die toegang aanvraagt, worden vertegenwoordigd door een beveiligingsprincipaal. Dit geldt voor zowel gebruikers (user principal) als toepassingen (service-principal).
De beveiligingsprincipaal definieert het toegangsbeleid en de machtigingen voor de gebruiker/toepassing in de Microsoft Entra-tenant. Dit maakt kernfuncties mogelijk, zoals verificatie van de gebruiker of toepassing tijdens het aanmelden en autorisatie tijdens toegang tot bronnen.
Er zijn drie typen service-principals:
Toepassing : dit type service-principal is de lokale weergave of het toepassingsexemplaren van een globaal toepassingsobject in één tenant of map. Er wordt een service-principal gemaakt in elke tenant waarin de toepassing wordt gebruikt en verwijst naar het globaal unieke app-object. Het service-principal-object definieert wat de app daadwerkelijk kan doen in de specifieke tenant, wie toegang heeft tot de app en tot welke bronnen de app toegang heeft.
Beheerde identiteit: dit type service-principal wordt gebruikt om een beheerde identiteit weer te geven. Beheerde identiteiten bieden een identiteit die toepassingen kunnen gebruiken bij het maken van verbinding met resources die ondersteuning bieden voor Microsoft Entra-verificatie. Wanneer een beheerde identiteit is ingeschakeld, wordt er een service-principal gemaakt die de beheerde identiteit in uw tenant vertegenwoordigt. Service-principals die beheerde identiteiten vertegenwoordigen, kunnen toegang en machtigingen krijgen. Maar ze kunnen niet rechtstreeks worden bijgewerkt of gewijzigd.
Verouderd: dit type service-principal vertegenwoordigt een verouderde app. Dit is een app die is gemaakt voordat app-registraties zijn geïntroduceerd of een app die is gemaakt via verouderde ervaringen. Een verouderde service-principal kan het volgende hebben:
- aanmeldingsgegevens
- service-principalnamen
- antwoord-URL's
- en andere eigenschappen die een geautoriseerde gebruiker kan bewerken, maar geen gekoppelde app-registratie heeft.
Relatie tussen toepassingsobjecten en service-principals
U kunt het toepassingsobject beschouwen als de globale representatie van uw toepassing voor gebruik in alle tenants en de service-principal als de lokale representatie voor gebruik in een specifieke tenant. Het toepassingsobject fungeert als de sjabloon waaruit algemene en standaardeigenschappen worden afgeleid voor gebruik bij het maken van bijbehorende service-principal-objecten.
Een toepassingsobject heeft:
- Een een-op-een-relatie met de softwaretoepassing en
- Een een-op-veel-relaties met de bijbehorende service-principal-objecten.
Er moet een service-principal worden gemaakt in elke tenant waarin de toepassing wordt gebruikt om een identiteit tot stand te brengen voor aanmelding en/of toegang tot resources die door de tenant worden beveiligd. Een toepassing met één tenant heeft slechts één service-principal (in de basistenant) die is gemaakt en toestemming gegeven voor gebruik tijdens de registratie van de toepassing. Een toepassing met meerdere tenants heeft ook een service-principal gemaakt in elke tenant waarbij een gebruiker van die tenant toestemming heeft gegeven voor het gebruik ervan.