Zuweisen eines appRoleAssignment zu einem BenutzerGrant an appRoleAssignment to a user

Namespace: microsoft.graphNamespace: microsoft.graph

Verwenden Sie diese API, um einem Benutzer eine App-Rolle zuzuweisen.Use this API to assign an app role to a user. Um einem Benutzer eine App-Rolle zuzuweisen, benötigen Sie drei Bezeichner:To grant an app role assignment to a user, you need three identifiers:

  • principalId: Die id des Benutzers, dem Sie die App-Rolle zuweisen möchten.principalId: The id of the user to whom you are assigning the app role.
  • resourceId: Die id der Ressource servicePrincipal, über die die App-Rolle definiert wurde.resourceId: The id of the resource servicePrincipal that has defined the app role.
  • appRoleId: Die id der appRole (definiert für den Ressourcendienstprinzipal), die dem Benutzer zugewiesen werden sollen.appRoleId: The id of the appRole (defined on the resource service principal) to assign to the user.

BerechtigungenPermissions

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.One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

BerechtigungstypPermission type Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)Permissions (from least to most privileged)
Delegiert (Geschäfts-, Schul- oder Unikonto)Delegated (work or school account) AppRoleAssignment.ReadWrite.All, Directory.AccessAsUser.AllAppRoleAssignment.ReadWrite.All, Directory.AccessAsUser.All
Delegiert (persönliches Microsoft-Konto)Delegated (personal Microsoft account) Nicht unterstütztNot supported.
AnwendungApplication AppRoleAssignment.ReadWrite.AllAppRoleAssignment.ReadWrite.All

HTTP-AnforderungHTTP request

POST /users/{id | userPrincipalName}/appRoleAssignments

Hinweis

Als bewährte Methode wird empfohlen, App-Rollenzuweisungen über die appRoleAssignedTo-Beziehung des Dienstprinzipals der Ressource anstelle der appRoleAssignments-Beziehung des zugeordneten Benutzers, der Gruppe oder des Dienstprinzipals zu erstellen.As a best practice, we recommend creating app role assignments through the appRoleAssignedTo relationship of the resource service principal, instead of the appRoleAssignments relationship of the assigned user, group, or service principal.

AnforderungsheaderRequest headers

NameName BeschreibungDescription
AuthorizationAuthorization Bearer {token}. Erforderlich.Bearer {token}. Required.
Content-TypeContent-Type application/json. Erforderlich. application/json. Required.

AnforderungstextRequest body

Geben Sie im Anforderungstext eine JSON-Darstellung eines appRoleAssignment-Objekts an.In the request body, supply a JSON representation of an appRoleAssignment object.

AntwortResponse

Bei erfolgreicher Ausführung gibt die Methode den Antwortcode 201 Created und ein Objekt des Typs appRoleAssignment im Antworttext zurück.If successful, this method returns a 201 Created response code and an appRoleAssignment object in the response body.

BeispieleExamples

AnforderungRequest

Nachfolgend sehen Sie ein Beispiel der Anforderung.Here is an example of the request.

POST https://graph.microsoft.com/v1.0/users/cde330e5-2150-4c11-9c5b-14bfdc948c79/appRoleAssignments
Content-Type: application/json

{
  "principalId": "cde330e5-2150-4c11-9c5b-14bfdc948c79",
  "resourceId": "8e881353-1735-45af-af21-ee1344582a4d",
  "appRoleId": "00000000-0000-0000-0000-000000000000"
}

Beachten Sie, dass in diesem Beispiel der Wert, der als Benutzer-ID in der Anforderungs-URL (cde330e5-2150-4c11-9c5b-14bfdc948c79) verwendet wird, der gleiche ist, wie die Eigenschaft principalId im Textkörper.In this example, note that the value used as the user id in the request URL (cde330e5-2150-4c11-9c5b-14bfdc948c79) is the same as the principalId property in the body.

AntwortResponse

Nachfolgend sehen Sie ein Beispiel der Antwort.Here is an example of the response.

Hinweis: Das hier gezeigte Antwortobjekt wurde möglicherweise zur besseren Lesbarkeit gekürzt. Ein tatsächlicher Aufruf gibt alle Eigenschaften zurück.Note: The response object shown here might be shortened for readability. All the properties will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('cde330e5-2150-4c11-9c5b-14bfdc948c79')/appRoleAssignments/$entity",
  "id": "5TDjzVAhEUycWxS_3JSMeY-oHkjrWvBKi7aIZwYGQzg",
  "deletedDateTime": null,
  "appRoleId": "00000000-0000-0000-0000-000000000000",
  "createdDateTime": "2021-02-15T10:31:53.5164841Z",
  "principalDisplayName": "Megan Bowen",
  "principalId": "cde330e5-2150-4c11-9c5b-14bfdc948c79",
  "principalType": "User",
  "resourceDisplayName": "dxprovisioning-graphapi-client",
  "resourceId": "8e881353-1735-45af-af21-ee1344582a4d"
}