Einem Dienstprinzipal eine appRoleAssignment zuweisen

Namespace: microsoft.graph

Weisen Sie einem Ressourcendienstprinzipal, einem Benutzer, Gruppen- oder Client-Dienstprinzipal eine App-Rolle zu.

Dienstprinzipalen zugewiesene App-Rollen werden auch als Anwendungsberechtigungen bezeichnet. Anwendungsberechtigungen können direkt durch App-Rollenzuweisungen oder über eine Zustimmungsfunktionalität erteilt werden.

Für die Erteilung einer App-Rollenzuweisung benötigen Sie drei Bezeichner:

  • principalId: Die id des Benutzer-, Gruppen- oder Client-Dienstprinzipals, dem Sie die App-Rolle zuweisen möchten.
  • resourceId: Die id des Ressourcen dienstprinzipals, über den die App-Rolle definiert wurde.
  • appRoleId: Die id der (im Ressourcendienstprinzipal definierte) App-Rolle, die einem Benutzer-, Gruppen- oder Dienstprinzipal zugeordnet werden soll.

Berechtigungen

Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) AppRoleAssignment.ReadWrite.All und Application.Read.All, AppRoleAssignment.ReadWrite.All und Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt
Anwendung AppRoleAssignment.ReadWrite.All und Application.Read.All, AppRoleAssignment.ReadWrite.All und Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All

HTTP-Anforderung

POST /servicePrincipals/{id}/appRoleAssignedTo

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich.
Content-type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung eines appRoleAssignment-Objekts an.

Antwort

Bei erfolgreicher Ausführung gibt die Methode den Antwortcode 201 Created und ein Objekt des Typs appRoleAssignment im Antworttext zurück.

Beispiele

Anforderung

Nachfolgend sehen Sie ein Beispiel der Anforderung.

POST https://graph.microsoft.com/v1.0/servicePrincipals/9028d19c-26a9-4809-8e3f-20ff73e2d75e/appRoleAssignedTo
Content-Type: application/json

{
  "principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
  "resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e",
  "appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7"
}

In diesem Beispiel wären {id} und {resourceId-value} die id des Ressourcendienstprinzipals, und {principalId} wäre die id des zugeordneten Benutzer-, Gruppen- oder Client-Dienstprinzipals.

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals('9028d19c-26a9-4809-8e3f-20ff73e2d75e')/appRoleAssignedTo/$entity",
  "id": "-WmtM5na7Uus0D8kI1yylpU9Mdo0Pb9OoBJvd3T5eKc",
  "deletedDateTime": null,
  "appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7",
  "createdDateTime": "2021-02-15T16:14:59.8643039Z",
  "principalDisplayName": "Parents of Contoso",
  "principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
  "principalType": "Group",
  "resourceDisplayName": "Fabrikam App",
  "resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e"
}