Поделиться через


Управление ресурсами Azure с помощью REST API

Узнайте, как использовать REST API для Azure Resource Manager для управления ресурсами Azure. Подробные сведения о структуре вызовов AZURE REST см. в статье "Начало работы с REST". Дополнительные сведения о доступных операциях см. в справочнике по REST API управления ресурсами.

Получение маркера доступа

Чтобы выполнить вызов REST API в Azure, сначала необходимо получить маркер доступа. Включите этот маркер доступа в заголовки вызовов REST API Azure с помощью заголовка "Авторизация" и укажите значение "Bearer {access-token}".

Если необходимо программно получить новые маркеры в составе приложения, можно получить маркер доступа, зарегистрировав клиентское приложение с помощью идентификатора Microsoft Entra.

Если вы начинаете работу и хотите протестировать ИНТЕРФЕЙСы REST API Azure с помощью отдельного маркера, вы можете быстро получить текущий маркер доступа с помощью Azure PowerShell или Azure CLI.

token=$(az account get-access-token --query accessToken --output tsv)

Область операций

Можно вызывать множество операций Azure Resource Manager в разных областях:

Тип Область
Группа управления providers/Microsoft.Management/managementGroups/{managementGroupId}
Подписка subscriptions/{subscriptionId}
Группа ресурсов subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Ресурс subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderName}/{resourceType}/{resourceName}

Перечислить ресурсы

Следующая операция REST возвращает ресурсы в предоставленной группе ресурсов.

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources?api-version=2021-04-01 HTTP/1.1
Authorization: Bearer <bearer-token>
Host: management.azure.com

Ниже приведен пример команды cURL, которую можно использовать для перечисления всех ресурсов в группе ресурсов с помощью API Azure Resource Manager:

curl  -H "Authorization: Bearer $token" -H 'Content-Type: application/json' -X GET 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources?api-version=2021-04-01'

На шаге проверки подлинности этот пример выглядит следующим образом:

token=$(az account get-access-token --query accessToken --output tsv)
curl  -H "Authorization: Bearer $token" -H 'Content-Type: application/json' -X GET 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources?api-version=2021-04-01'

Развертывание ресурсов в существующей группе ресурсов

Вы можете развернуть ресурсы Azure непосредственно с помощью REST API или развернуть шаблон Resource Manager для создания ресурсов Azure.

Развертывание ресурса

Следующая операция REST создает учетную запись хранения. Дополнительные сведения см. в статье "Создание учетной записи служба хранилища Azure с помощью REST API". Полные справочные материалы и примеры для поставщика ресурсов хранилища доступны в справочнике по REST API поставщика ресурсов хранилища.

PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api-version=2018-02-01 HTTP/1.1
Authorization: Bearer <bearer-token>
Content-Type: application/json
Host: management.azure.com

{
  "sku": {
    "name": "Standard_GRS"
  },
  "kind": "StorageV2",
  "location": "eastus2",
}

Развертывание шаблона

Следующие операции развертывают шаблон быстрого запуска для создания учетной записи хранения. Дополнительные сведения см. в разделе Краткое руководство. Создание шаблонов Azure Resource Manager с помощью Visual Studio Code. Справочник по API этого вызова см. в разделе "Развертывания — создание или обновление".

PUT /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/my-deployment?api-version=2021-04-01 HTTP/1.1
Authorization: Bearer <bearer-token>
Content-Type: application/json
Host: management.azure.com

{
  "properties": {
    "templateLink": {
      "uri": "https://example.com/azuretemplates/azuredeploy.json"
    },
    "parametersLink": {
        "uri": "https://example.com/azuretemplates/azuredeploy.parameters.json"
    },
    "mode": "Incremental"
  }
}

Для REST API значение uri не может быть локальным файлом или файлом, доступным только в локальной сети. Azure Resource Manager должен иметь доступ к шаблону. Укажите значение URI, загружаемое как HTTP или HTTPS. Дополнительные сведения см. в статье Развертывание ресурсов с использованием шаблонов Resource Manager и Azure PowerShell.

Развертывание группы ресурсов и ресурсов

Вы можете создать группу ресурсов и развернуть ресурсы в группе с помощью шаблона. См. дополнительные сведения в разделе Создание группы ресурсов и развертывание ресурсов.

Развертывание ресурсов в нескольких подписках или группах ресурсов

Как правило, все ресурсы в шаблоне развертываются в отдельную группу ресурсов. Тем не менее возможны ситуации, когда необходимо развернуть набор ресурсов одновременно, но при этом разместить их в отдельных подписках или группах ресурсов. Дополнительные сведения см. в статье Развертывание ресурсов Azure в нескольких подписках или группах ресурсов.

Удаление ресурсов

В следующей операции показано, как удалить учетную запись хранения.

DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api-version=2022-09-01 HTTP/1.1
Authorization: Bearer <bearer-token>
Host: management.azure.com

Дополнительные сведения о том, как Azure Resource Manager упорядочивает удаление ресурсов, см. в статье Удаление группы ресурсов в Azure Resource Manager.

Управление доступом к ресурсам

Управление доступом на основе ролей Azure (Azure RBAC) — это способ управления доступом к ресурсам в Azure. Дополнительные сведения см. в статье "Добавление или удаление назначений ролей Azure с помощью REST".

Следующие шаги