Hinzufügen oder Entfernen von Azure-Rollenzuweisungen mithilfe der REST-APIAdd or remove Azure role assignments using the REST API

Azure RBAC (Role-Based Access Control, rollenbasierte Zugriffssteuerung) ist das Autorisierungssystem für die Verwaltung des Zugriffs auf Azure-Ressourcen.Azure role-based access control (Azure RBAC) is the authorization system you use to manage access to Azure resources. Sie weisen Benutzern, Gruppen, Dienstprinzipalen oder verwalteten Identitäten für einen bestimmten Bereich Rollen zu, um diesen Zugriff zu gewähren.To grant access, you assign roles to users, groups, service principals, or managed identities at a particular scope. In diesem Artikel wird die Zuweisung von Rollen mithilfe der REST-API beschrieben.Azure RBAC (Role-Based Access Control, rollenbasierte Zugriffssteuerung) ist das Autorisierungssystem für die Verwaltung des Zugriffs auf Azure-Ressourcen.Azure role-based access control (Azure RBAC) is the authorization system you use to manage access to Azure resources. Sie weisen Benutzern, Gruppen, Dienstprinzipalen oder verwalteten Identitäten für einen bestimmten Bereich Rollen zu, um diesen Zugriff zu gewähren.To grant access, you assign roles to users, groups, service principals, or managed identities at a particular scope. This article describes how to assign roles using the REST API.

VoraussetzungenPrerequisites

Sie benötigen Folgendes, um Rollenzuweisungen hinzufügen oder entfernen zu können:To add or remove role assignments, you must have:

Hinzufügen einer RollenzuweisungAdd a role assignment

In Azure RBAC fügen Sie zum Gewähren des Zugriffs eine Rollenzuweisung hinzu.In Azure RBAC, to grant access, you add a role assignment. Um eine Rollenzuweisung hinzuzufügen, verwenden Sie die REST-API unter Rollenzuweisungen – Erstellen, und geben Sie den Sicherheitsprinzipal, die Rollendefinition und den Bereich an.To add a role assignment, use the Role Assignments - Create REST API and specify the security principal, role definition, and scope. Zum Aufrufen dieser API benötigen Sie Zugriff auf den Vorgang Microsoft.Authorization/roleAssignments/write.To call this API, you must have access to the Microsoft.Authorization/roleAssignments/write operation. Von den integrierten Rollen verfügen nur Besitzer und Benutzerzugriffsadministrator über Zugriff auf diesen Vorgang.Of the built-in roles, only Owner and User Access Administrator are granted access to this operation.

  1. Verwenden Sie die REST API unter Rollendefinitionen – Auflisten oder lesen Sie Integrierte Rollen in Azure, um den Bezeichner für die zuzuweisende Rollendefinition zu ermitteln.Use the Role Definitions - List REST API or see Built-in roles to get the identifier for the role definition you want to assign.

  2. Verwenden Sie ein GUID-Tool, um einen eindeutigen Bezeichner zu generieren, der für den Bezeichner der Rollenzuweisung verwendet wird.Use a GUID tool to generate a unique identifier that will be used for the role assignment identifier. Das Format des Bezeichners ist: 00000000-0000-0000-0000-000000000000The identifier has the format: 00000000-0000-0000-0000-000000000000

  3. Beginnen Sie mit folgender Anforderung und folgendem Text:Start with the following request and body:

    PUT https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId}?api-version=2015-07-01
    
    {
      "properties": {
        "roleDefinitionId": "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}",
        "principalId": "{principalId}"
      }
    }
    
  4. Ersetzen Sie innerhalb des URIs {scope} durch den Bereich für die Rollenzuweisung.Within the URI, replace {scope} with the scope for the role assignment.

    ScopeScope typeType
    providers/Microsoft.Management/managementGroups/{groupId1} VerwaltungsgruppeManagement group
    subscriptions/{subscriptionId1} SubscriptionSubscription
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Resource groupResource group
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/microsoft.web/sites/mysite1 ResourceResource

    Im vorherigen Beispiel ist „microsoft.web“ ein Ressourcenanbieter, der auf eine App Service-Instanz verweist.In the previous example, microsoft.web is a resource provider that refers to an App Service instance. Analog dazu können Sie einen beliebigen anderen Ressourcenanbieter verwenden und den Bereich angeben.Similarly, you can use any other resource providers and specify the scope. Weitere Informationen finden Sie unter Azure-Ressourcenanbieter und -typen und unter unterstützten Vorgängen für Azure Resource Manager-Ressourcenanbieter.For more information, see Azure Resource providers and types and supported Azure Resource Manager resource provider operations.

  5. Ersetzen Sie {roleAssignmentId} durch den GUID-Bezeichner der Rollenzuweisung.Replace {roleAssignmentId} with the GUID identifier of the role assignment.

  6. Ersetzen Sie innerhalb des Anforderungstexts {scope} durch den Bereich für die Rollenzuweisung.Within the request body, replace {scope} with the scope for the role assignment.

    ScopeScope typeType
    providers/Microsoft.Management/managementGroups/{groupId1} VerwaltungsgruppeManagement group
    subscriptions/{subscriptionId1} SubscriptionSubscription
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Resource groupResource group
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/microsoft.web/sites/mysite1 ResourceResource
  7. Ersetzen Sie {roleDefinitionId} durch den Bezeichner der Rollendefinition.Replace {roleDefinitionId} with the role definition identifier.

  8. Ersetzen Sie {principalId} durch den Objektbezeichner des Benutzers, der Gruppe oder des Dienstprinzipals, der bzw. die der Rolle zugewiesen wird.Replace {principalId} with the object identifier of the user, group, or service principal that will be assigned the role.

Mit der folgenden Anforderung und dem folgenden Text wird einem Benutzer im Abonnementbereich die Rolle Benutzer mit Leseberechtigung für Sicherungsfunktionen zugewiesen:The following request and body assigns the Backup Reader role to a user at subscription scope:

PUT https://management.azure.com/subscriptions/{subscriptionId1}/providers/microsoft.authorization/roleassignments/{roleAssignmentId1}?api-version=2015-07-01
{
  "properties": {
    "roleDefinitionId": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/a795c7a0-d4a2-40c1-ae25-d81f01202912",
    "principalId": "{objectId1}"
  }
}

Nachfolgend sehen Sie ein Beispiel für die Ausgabe:The following shows an example of the output:

{
    "properties": {
        "roleDefinitionId": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/a795c7a0-d4a2-40c1-ae25-d81f01202912",
        "principalId": "{objectId1}",
        "scope": "/subscriptions/{subscriptionId1}",
        "createdOn": "2020-05-06T23:55:23.7679147Z",
        "updatedOn": "2020-05-06T23:55:23.7679147Z",
        "createdBy": null,
        "updatedBy": "{updatedByObjectId1}"
    },
    "id": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId1}",
    "type": "Microsoft.Authorization/roleAssignments",
    "name": "{roleAssignmentId1}"
}

Entfernen einer RollenzuweisungRemove a role assignment

In Azure RBAC entfernen Sie eine Rollenzuweisung, um den Zugriff zu entfernen.In Azure RBAC, to remove access, you remove a role assignment. Zum Entfernen einer Rollenzuweisung verwenden Sie die REST-API Rollenzuweisungen – Löschen.To remove a role assignment, use the Role Assignments - Delete REST API. Zum Aufrufen dieser API benötigen Sie Zugriff auf den Vorgang Microsoft.Authorization/roleAssignments/delete.To call this API, you must have access to the Microsoft.Authorization/roleAssignments/delete operation. Von den integrierten Rollen verfügen nur Besitzer und Benutzerzugriffsadministrator über Zugriff auf diesen Vorgang.Of the built-in roles, only Owner and User Access Administrator are granted access to this operation.

  1. Rufen Sie den Bezeichner der Rollenzuweisung (GUID) ab.Get the role assignment identifier (GUID). Dieser Bezeichner wird beim ersten Erstellen der Rollenzuweisung zurückgegeben oder kann durch Auflisten der Rollenzuweisungen ermittelt werden.This identifier is returned when you first create the role assignment or you can get it by listing the role assignments.

  2. Beginnen Sie mit der folgenden Anforderung:Start with the following request:

    DELETE https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId}?api-version=2015-07-01
    
  3. Ersetzen Sie innerhalb des URIs {scope} durch den Bereich, um die Rollenzuweisung zu entfernen.Within the URI, replace {scope} with the scope for removing the role assignment.

    ScopeScope typeType
    providers/Microsoft.Management/managementGroups/{groupId1} VerwaltungsgruppeManagement group
    subscriptions/{subscriptionId1} SubscriptionSubscription
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Resource groupResource group
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/microsoft.web/sites/mysite1 ResourceResource
  4. Ersetzen Sie {roleAssignmentId} durch den GUID-Bezeichner der Rollenzuweisung.Replace {roleAssignmentId} with the GUID identifier of the role assignment.

Mit der folgenden Anforderung wird die angegebene Rollenzuweisung im Abonnementbereich entfernt:The following request removes the specified role assignment at subscription scope:

DELETE https://management.azure.com/subscriptions/{subscriptionId1}/providers/microsoft.authorization/roleassignments/{roleAssignmentId1}?api-version=2015-07-01

Nachfolgend sehen Sie ein Beispiel für die Ausgabe:The following shows an example of the output:

{
    "properties": {
        "roleDefinitionId": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/a795c7a0-d4a2-40c1-ae25-d81f01202912",
        "principalId": "{objectId1}",
        "scope": "/subscriptions/{subscriptionId1}",
        "createdOn": "2020-05-06T23:55:24.5379478Z",
        "updatedOn": "2020-05-06T23:55:24.5379478Z",
        "createdBy": "{createdByObjectId1}",
        "updatedBy": "{updatedByObjectId1}"
    },
    "id": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId1}",
    "type": "Microsoft.Authorization/roleAssignments",
    "name": "{roleAssignmentId1}"
}

Nächste SchritteNext steps