Freigeben über


Gewähren des Zugriffs zum Erstellen von Azure Enterprise-Abonnements (Legacy)

Als Azure-Kunde mit einem Enterprise Agreement (EA) können Sie einem anderen Benutzer oder Dienstprinzipal die Berechtigung zum Erstellen von Abonnements erteilen, die Ihrem Konto in Rechnung gestellt werden. In diesem Artikel erfahren Sie, wie Sie rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC) verwenden, um anderen Benutzern das Erstellen von Abonnements zu ermöglichen, und wie Sie die Erstellung von Abonnements überwachen. Sie müssen für das Konto, das Sie freigeben möchten, über die Rolle „Besitzer“ verfügen.

Hinweis

  • Diese API funktioniert nur mit den Legacy-APIs für die Abonnementerstellung.
  • Sofern Sie nicht speziell die Legacy-APIs benötigen, sollten Sie die Informationen für die aktuelle GA-Version über die neueste API-Version verwenden. Siehe Registrierungskontorollenzuweisungen – Put, um die Berechtigung zum Erstellen von EA-Abonnements mit der aktuellen API zu erteilen.
  • Wenn Sie zur Verwendung der neueren APIs eine Migration durchführen, müssen Sie die Besitzerberechtigungen mithilfe von 2019-10-01-preview erneut erteilen. Die vorherige Konfiguration, die die folgenden APIs verwendet, wird nicht automatisch für die Verwendung mit den neueren APIs konvertiert.

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Gewähren von Zugriff

Benutzer müssen in einem Registrierungskonto über die Azure RBAC-Rolle „Besitzer“ verfügen, um Abonnements in diesem Konto zu erstellen. Sie können einem Benutzer oder einer Gruppe von Benutzern die Azure RBAC-Rolle „Besitzer“ in einem Registrierungskonto zuweisen, indem Sie folgende Schritte ausführen:

  1. Abrufen der Objekt-ID des Registrierungskontos, dem Sie den Zugriff gewähren möchten

    Sie müssen entweder der Kontobesitzer sein oder in diesem Konto über die Azure RBAC-Rolle „Besitzer“ verfügen, um anderen in einem Registrierungskonto die Azure RBAC-Rolle „Besitzer“ zuweisen zu können.

    Fordern Sie eine Liste aller Registrierungskonten an, auf die Sie zugreifen können:

    GET https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts?api-version=2018-03-01-preview
    

    Azure gibt eine Liste aller Registrierungskonten zurück, auf die Sie zugreifen können:

    {
      "value": [
        {
          "id": "/providers/Microsoft.Billing/enrollmentAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
          "name": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
          "type": "Microsoft.Billing/enrollmentAccounts",
          "properties": {
            "principalName": "SignUpEngineering@contoso.com"
          }
        },
        {
          "id": "/providers/Microsoft.Billing/enrollmentAccounts/4cd2fcf6-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "name": "4cd2fcf6-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "type": "Microsoft.Billing/enrollmentAccounts",
          "properties": {
            "principalName": "BillingPlatformTeam@contoso.com"
          }
        }
      ]
    }
    

    Verwenden Sie die principalName-Eigenschaft zum Identifizieren des Kontos, dem Sie die Azure RBAC-Rolle „Besitzer“ zuweisen möchten. Kopieren Sie den name-Wert dieses Kontos. Wenn Sie beispielsweise dem Registrierungskonto SignUpEngineering@contoso.com die Azure RBAC-Rolle „Besitzer“ zuweisen möchten, müssen Sie aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb kopieren. Dies ist die Objekt-ID des Registrierungskontos. Kopieren Sie diesen Wert, um ihn im nächsten Schritt als enrollmentAccountObjectId-Wert zu verwenden.

    Verwenden Sie die principalName-Eigenschaft zum Identifizieren des Kontos, dem Sie die Azure RBAC-Rolle „Besitzer“ zuweisen möchten. Kopieren Sie den name-Wert dieses Kontos. Wenn Sie beispielsweise dem Registrierungskonto SignUpEngineering@contoso.com die Azure RBAC-Rolle „Besitzer“ zuweisen möchten, müssen Sie aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb kopieren. Dies ist die Objekt-ID des Registrierungskontos. Kopieren Sie diesen Wert, um ihn im nächsten Schritt als enrollmentAccountObjectId-Wert zu verwenden.

  2. Abrufen der Objekt-ID des Benutzers oder der Gruppe, dem bzw. der Sie die Azure RBAC-Rolle „Besitzer“ zuweisen möchten

    1. Suchen Sie im Azure-Portal nach Microsoft Entra-ID.
    2. Wenn Sie einem Benutzer Zugriff gewähren möchten, klicken Sie im Menü auf der linken Seite auf Benutzer. Um einer Gruppe Zugriff zu erteilen, wählen Sie Gruppen aus.
    3. Wählen Sie den Benutzer oder die Gruppe aus, dem bzw. der Sie die Azure RBAC-Rolle „Besitzer“ zuweisen möchten.
    4. Wenn Sie einen Benutzer ausgewählt haben, finden Sie die Objekt-ID auf der Seite „Profil“. Wenn Sie eine Gruppe ausgewählt haben, befindet sich die Objekt-ID auf der Seite „Übersicht“. Kopieren Sie die ObjectID, indem Sie auf das Symbol rechts neben dem Textfeld klicken. Halten Sie diesen Wert bereit, damit Sie ihn im nächsten Schritt als userObjectId verwenden können.
  3. Zuweisen der Azure RBAC-Rolle „Besitzer“ zu einem Benutzer oder einer Gruppe im Registrierungskonto

    Verwenden Sie die Werte, die Sie in den ersten beiden Schritten erfasst haben, um dem Benutzer oder der Gruppe die Azure RBAC-Rolle „Besitzer“ im Registrierungskonto zuzuweisen.

    Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <enrollmentAccountObjectId> durch den name-Wert, den Sie im ersten Schritt (aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb) kopiert haben. Ersetzen Sie <userObjectId> durch die Objekt-ID, die Sie im zweiten Schritt kopiert haben.

    PUT  https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts/<enrollmentAccountObjectId>/providers/Microsoft.Authorization/roleAssignments/<roleAssignmentGuid>?api-version=2015-07-01
    
    {
      "properties": {
        "roleDefinitionId": "/providers/Microsoft.Billing/enrollmentAccounts/<enrollmentAccountObjectId>/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
        "principalId": "<userObjectId>"
      }
    }
    

    Wenn die Besitzerrolle im Bereich des Anmeldekontos erfolgreich zugewiesen wurde, antwortet Azure mit Informationen zur Rollenzuweisung:

    {
      "properties": {
        "roleDefinitionId": "/providers/Microsoft.Billing/enrollmentAccounts/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
        "principalId": "<userObjectId>",
        "scope": "/providers/Microsoft.Billing/enrollmentAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
        "createdOn": "2018-03-05T08:36:26.4014813Z",
        "updatedOn": "2018-03-05T08:36:26.4014813Z",
        "createdBy": "<assignerObjectId>",
        "updatedBy": "<assignerObjectId>"
      },
      "id": "/providers/Microsoft.Billing/enrollmentAccounts/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
      "type": "Microsoft.Authorization/roleAssignments",
      "name": "<roleAssignmentGuid>"
    }
    

Überwachen mit Aktivitätsprotokollen, wer Abonnements erstellt hat

Verwenden Sie zum Nachverfolgen der über diese API erstellten Abonnements die Mandantenaktivitätsprotokoll-API. Zurzeit ist es nicht möglich, PowerShell, die CLI oder das Azure-Portal zum Nachverfolgen der Abonnementerstellung zu verwenden.

  1. Als Mandantenadministrator des Microsoft Entra-Mandanten erhöhen Sie die Zugriffsrechte, und weisen Sie dann dem überwachenden Benutzer eine Rolle „Leser“ für den Bereich /providers/microsoft.insights/eventtypes/management zu. Dieser Zugriff ist in der Rolle Leser, in der Rolle Mitwirkender an der Überwachung oder in einer benutzerdefinierten Rolle verfügbar.

  2. Rufen Sie als überwachender Benutzer die Mandantenaktivitätsprotokoll-API auf, um Aktivitäten zum Erstellen von Abonnements anzuzeigen. Beispiel:

    GET "/providers/Microsoft.Insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp ge '{greaterThanTimeStamp}' and eventTimestamp le '{lessThanTimestamp}' and eventChannels eq 'Operation' and resourceProvider eq 'Microsoft.Subscription'"
    

Um diese API bequem über die Befehlszeile aufzurufen, verwenden Sie ARMClient.