Отмените подписку Azure
Область применения: Центр партнеров | Центр партнеров, управляемый 21Vianet | Центр партнеров для облачных сервисов Microsoft в правительстве США
Если происходит компрометация или злоупотребление, партнеры, управляющие клиентскими подписками в Azure, могут отменить подписки непосредственно с портала Центра партнеров или с помощью API, прекратив подозрительную активность, обнаруженную в их подписках плана Azure.
Этот API отменит подписку Azure. Если партнеры хотят отменить несколько подписок, им необходимо отдельно вызвать API, чтобы отменить каждую из них.
Если партнеры хотят приостановить свой план Azure, они должны использовать существующий API, обновите подписку по идентификатору.
Отмена плана Azure не поддерживается следующим API.
Для отмены партнёры должны быть глобальными администраторами с ролями агента администрирования.
Предварительные требования
Учетные данные, как описано в документе Проверка подлинности Центра партнеров, поддерживают проверку подлинности с помощью автономных учетных данных Приложения и учетных данных Приложение+Пользователь.
Идентификатор_клиента.
Идентификатор_подписки.
Entitlement_id.
C#
Чтобы отменить подписку Azure, необходимо определить идентификатор клиента, идентификатор подписки и идентификатор права для этой подписки.
Чтобы получить заказчика, обратитесь к запросу Get a customer by ID и Get customer by customer ID — REST API для получения дополнительной информации.
Чтобы получить подписку, ознакомьтесь с разделом "Получить подписку по идентификатору" и "Получить подписку по идентификатору" — REST API для получения дополнительной справки.
Чтобы получить право на использование Azure, обратитесь к статье «Получение права Azure для подписки — REST API».
Запрос REST
Синтаксис запроса
Method | URI запроса |
---|---|
POST | {baseURL}/v1/customers/{customer_id}/subscriptions/{subscription_id}/azureEntitlements/{entitlement_id}/cancel HTTP/1.1 |
Параметр URI
В этой таблице перечислены необходимые параметры запроса для отмены подписки Azure.
Имя | Тип | Обязательное поле | Description |
---|---|---|---|
идентификатор_клиента | Строка | Y | Значение — это строка, которая обозначает идентификатор клиента. |
subscription_id (идентификатор подписки) | Строка | Y | Значением является строка, которая обозначает идентификатор подписки. |
идентификатор привилегий (entitlement_id) | Строка | Y | Это строка, которая обозначает идентификатор права подписки Azure. |
Заголовки запросов
Смотрите заголовки REST API Центра партнеров.
Текст запроса
HTTP
{ "cancellationReason": "compromise" }
Пример запроса
POST
[https://api.partnercenter.microsoft.com/v1/customers/{customer_id}/subscriptions/{subscription_id}/azureEntitlements/{entitlement_id}/cancel](https://api.partnercenter.microsoft.com/v1/customers/%7bcustomer_id%7d/subscriptions/%7bsubscription_id%7d/azureEntitlements/%7bentitlement_id%7d/cancel)
HTTP/1.1
Accept: application/json
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
"id": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"friendlyName": "Cancel_Azure_Subscription ",
"status": "active",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"links": {
"self": {
"uri":
"/customers/aaaabbbb-0000-cccc-1111-dddd2222eeee/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/azureEntitlements/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"method": "GET",
"headers": []
}
}
}
Ответ REST
В случае успешного выполнения этот метод возвращает право Azure на ресурс подписки в теле ответа.
Коды успешного и ошибочного ответа
Каждый ответ поставляется с кодом состояния HTTP, который указывает на успешность или сбой и дополнительные сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и других параметров. Полный список ответов есть в статье Коды ошибок REST в Центре партнеров.
Состояние HTTP | КОД HTTP | Код ошибки | Description |
---|---|---|---|
Неверный запрос | 400 | 900118 | Недопустимый идентификатор клиента. |
Неверный запрос | 400 | 800002 | Идентификатор клиента {0} должен иметь формат GUID (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). |
Неверный запрос | 400 | 800002 | Требуется идентификатор подписки. |
Неверный запрос | 400 | 800002 | Требуется идентификатор права. |
Неверный запрос | 400 | 800002 | Требуется содержимое запроса на отмену прав Azure. |
Запрещено | 403 | 900159 | Партнер с идентификатором учетной записи {0} и идентификатором организации {1} не имеет коммерческих отношений с клиентом с идентификатором учетной записи {2} и идентификатором организации {3}. |
Неверный запрос | 400 | 900307 | Причина отмены '{0}' недопустима. |
Не найдено | 404 | 800111 | В Azure не найдено право доступа с идентификатором {0}. |
Пример ответа
Ответ на отмену подписки включает статус доступа. Ожидайте около 10 минут, пока статус изменится (с активного на неактивный).
HTTP
HTTP/1.1 200 OK
Content-Length: 1132
Content-Type: application/json; charset=utf-8
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
MS-RequestId: 22bfd0fb-d1e6-4a8f-aa1a-124b7c820d80
MS-CV: cmde2DtbuUWi8JLq.0
MS-ServerId: 201022015
Date: Wed, 14 Dec 2022 00:12:53 GMT
{
"id": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"friendlyName": " Cancel_Azure_Subscription",
"status": "active",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"links": {
"self": {
"uri":
"/customers/aaaabbbb-0000-cccc-1111-dddd2222eeee/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/azureEntitlements/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"method": "GET",
"headers": []
}
}