Udzielanie dostępu do tworzenia subskrypcji Platformy Azure Enterprise (starsza wersja)

Jako klient platformy Azure z Umowa Enterprise (EA) możesz nadać innemu użytkownikowi lub jednostce usługi uprawnienie do tworzenia subskrypcji rozliczanych na koncie. W tym artykule dowiesz się, jak korzystać z kontroli dostępu na podstawie ról (role-based access control, RBAC) platformy Azure w celu udostępniania możliwości tworzenia subskrypcji oraz jak przeprowadzać inspekcję tworzenia subskrypcji. W tym celu musisz mieć rolę właściciela konta, które chcesz udostępnić.

Uwaga

  • Ten interfejs API działa tylko ze starszymi interfejsami API na potrzeby tworzenia subskrypcji.
  • Jeśli nie musisz używać starszych interfejsów API, należy użyć informacji dotyczących najnowszej wersji ogólnie dostępnej dla najnowszej wersji interfejsu API. Zobacz Przypisania ról konta rejestracji — umieść , aby udzielić uprawnień do tworzenia subskrypcji EA przy użyciu najnowszego interfejsu API.
  • W przypadku migrowania do używania nowszych interfejsów API należy ponownie przyznać uprawnienia właściciela przy użyciu wersji 2019-10-01-preview. Poprzednia konfiguracja, która używa następujących interfejsów API, nie jest automatycznie konwertowana do użycia z nowszymi interfejsami API.

Uwaga

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Udzielanie dostępu

Aby tworzyć subskrypcje na koncie rejestracji, użytkownicy muszą mieć rolę właściciela RBAC platformy Azure na tym koncie. Można przyznać użytkownikowi lub grupie użytkowników rolę właściciela RBAC platformy Azure na koncie rejestracji, wykonując następujące czynności:

  1. Pobierz identyfikator obiektu konta rejestracji, do którego chcesz przyznać dostęp

    Aby przyznać innym osobom rolę właściciela RBAC platformy Azure konta rejestracji, musisz być właścicielem konta lub właścicielem RBAC platformy Azure tego konta.

    Wykonaj żądanie wyświetlenia listy wszystkich kont rejestracji, do których masz dostęp:

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

    Platforma Azure w odpowiedzi zwróci listę wszystkich kont rejestracji, do których masz dostęp:

    {
      "value": [
        {
          "id": "/providers/Microsoft.Billing/enrollmentAccounts/747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "name": "747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "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"
          }
        }
      ]
    }
    

    Użyj właściwości principalName, aby określić konto, na którym chcesz przyznać użytkownikowi dostęp właściciela RBAC platformy Azure. Skopiuj właściwość name tego konta. Jeśli na przykład chcesz przyznać użytkownikowi dostęp właściciela RBAC platformy Azure na koncie rejestracji SignUpEngineering@contoso.com, skopiuj wartość 747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Jest to identyfikator obiektu konta rejestracji. Wklej tę wartość w dogodnym miejscu, aby można było użyć jej w następnym kroku jako właściwości enrollmentAccountObjectId.

    Użyj właściwości principalName, aby określić konto, na którym chcesz przyznać użytkownikowi dostęp właściciela RBAC platformy Azure. Skopiuj właściwość name tego konta. Jeśli na przykład chcesz przyznać użytkownikowi dostęp właściciela RBAC platformy Azure na koncie rejestracji SignUpEngineering@contoso.com, skopiuj wartość 747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Jest to identyfikator obiektu konta rejestracji. Wklej tę wartość w dogodnym miejscu, aby można było użyć jej w następnym kroku jako właściwości enrollmentAccountObjectId.

  2. Pobierz identyfikator obiektu użytkownika lub grupy, którym chcesz przyznać rolę właściciela RBAC platformy Azure

    1. W witrynie Azure Portal wyszukaj identyfikator Entra firmy Microsoft.
    2. Jeśli chcesz przyznać dostęp użytkownikowi, wybierz pozycję Użytkownicy w menu po lewej stronie. Jeśli chcesz przyznać dostęp grupie, wybierz pozycję Grupy.
    3. Wybierz użytkownika lub grupę, którym chcesz przyznać rolę właściciela RBAC platformy Azure.
    4. Jeśli wybrano użytkownika, identyfikator obiektu znajdziesz na stronie Profil. Jeśli wybrano grupę, identyfikator obiektu znajdziesz na stronie Przegląd. Skopiuj wartość ObjectID, wybierając ikonę po prawej stronie pola tekstowego. Wklej tę wartość w dogodnym miejscu, aby można było użyć jej w następnym kroku jako właściwości userObjectId.
  3. Przyznaj użytkownikowi lub grupie rolę właściciela RBAC platformy Azure na koncie rejestracji

    Za pomocą wartości zebranych w pierwszych dwóch krokach przyznaj użytkownikowi lub grupie rolę właściciela RBAC platformy Azure na koncie rejestracji.

    Uruchom poniższe polecenie, zastępując wartość <enrollmentAccountObjectId> wartością name skopiowaną w pierwszym kroku (747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Zastąp wartość <userObjectId> identyfikatorem obiektu skopiowanym w drugim kroku.

    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>"
      }
    }
    

    Gdy rola właściciela zostanie pomyślnie przypisana do zakresu konta rejestracji, platforma Azure w odpowiedzi wyświetli informacje na temat przypisania roli:

    {
      "properties": {
        "roleDefinitionId": "/providers/Microsoft.Billing/enrollmentAccounts/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
        "principalId": "<userObjectId>",
        "scope": "/providers/Microsoft.Billing/enrollmentAccounts/747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "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>"
    }
    

Przeprowadzanie inspekcji osób, które utworzyły subskrypcje za pomocą dzienników aktywności

Aby śledzić subskrypcje utworzone za pośrednictwem tego interfejsu API, skorzystaj z interfejsu API dziennika aktywności w dzierżawie. Obecnie nie można śledzić tworzenia subskrypcji za pomocą programu PowerShell, interfejsu wiersza polecenia, ani witryny Azure Portal.

  1. Jako administrator dzierżawy firmy Microsoft Entra podnieś poziom dostępu, a następnie przypisz rolę Czytelnik do użytkownika inspekcji w zakresie /providers/microsoft.insights/eventtypes/management. Ten dostęp przysługuje roli czytelnika, współautora monitorowania lub roli niestandardowej.

  2. Jako użytkownik wykonujący inspekcję wywołaj interfejs API dziennika aktywności w dzierżawie, aby wyświetlić działania tworzenia subskrypcji. Przykład:

    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'"
    

Aby wygodnie wywołać ten interfejs API z poziomu wiersza polecenia, wypróbuj narzędzie ARMClient.

Następne kroki