Включение лимитных API и служб в Microsoft Graph
Некоторые API и службы в Microsoft Graph лимитируются и требуют оплаты за использование. Текущий список API- интерфейсов, требующих оплаты, см. в разделе Лимитные API и службы в Microsoft Graph.
Чтобы использовать лимитные API и службы в Microsoft Graph, регистрация приложения для приложения Microsoft Entra, использующего API, должна быть связана с подпиской Azure. Плата за эту подписку будет выставляться за все лимитные расходы. Эта связь также позволяет использовать управление затратами и выставление счетов Azure для понимания затрат приложения и управления ими.
В этой статье описывается, как связать приложение с подпиской Azure.
Известные ограничения
К лимитным API применяются следующие ограничения:
- Лимитные API и службы в Microsoft Graph в настоящее время доступны только в глобальной среде Майкрософт, а не в национальных облачных развертываниях, включая развертывания Microsoft 365 GCC, доступные через глобальную конечную точку Microsoft Graph. Дополнительные сведения о национальных облаках см. в статье Развертывание национальных облаков.
- Целевое приложение должно быть конфиденциальным клиентским приложением (например, веб-приложением, веб-API или управляющая программа или служба). Общедоступные клиентские приложения (классические и мобильные приложения) не поддерживаются.
Предварительные требования
Прежде чем получить доступ к лимитным API и службам в Microsoft Graph, необходимо выполнить следующие действия.
- Создайте регистрацию приложения в Microsoft Entra ID для приложения, которое будет выполнять вызовы к лимитным API и службам Microsoft 365.
- Если у вас нет подписки Azure, создайте ее в клиенте, который включает регистрацию приложения.
- У вас должны быть разрешения участник для активной подписки Azure, которую вы хотите использовать, а также разрешения владельца приложения для регистрации целевого приложения.
Включение приложения
Чтобы разрешить приложению использовать лимитные API и службы в Microsoft Graph, оно должно быть связано с подпиской Azure. Чтобы создать эту связь, необходимо создать ресурс Azure типа Microsoft.GraphServices/accounts. Ресурс Azure подключает одну регистрацию приложения Microsoft Entra с подпиской Azure, в которой взимается плата за использование приложением лимитных API.
Выполните следующие действия, чтобы создать и связать ресурс Azure Microsoft.GraphServices/accounts с приложением.
Примечание: Следующие действия можно выполнить, войдя в https://portal.azure.com систему и выбрав Cloud Shell, или с помощью локального интерфейса командной строки Azure. Если вы используете Cloud Shell в первый раз, может потребоваться создать учетную запись хранения. Выберите подписку Azure, нажмите кнопку Создать и следуйте инструкциям, чтобы создать учетную запись хранения. Чтобы использовать локальный интерфейс командной строки Azure, установите Azure CLI.
Если у вас несколько подписок Azure, сведения о настройке активной подписки см. в статье Использование нескольких подписок Azure. В противном случае перейдите к следующему шагу.
Используйте команду az resource create , чтобы создать экземпляр типа ресурса Microsoft.GraphServices/accounts, чтобы связать регистрацию приложения с активной подпиской. Скопируйте следующую команду в интерфейс командной строки, замените перечисленные в таблице параметры собственными значениями и введите <ВВОД>. Если команда выполнена успешно, ответ будет содержать представление только что созданного ресурса в формате JSON.
az resource create --resource-group myRG --name myGraphAppBilling --resource-type Microsoft.GraphServices/accounts --properties "{\"appId\": \"myAppGUID\"}" --location Global --subscription mySubscriptionGUID
Параметр | Описание |
---|---|
myRG | Имя существующей группы ресурсов Azure, в которую нужно добавить только что созданный ресурс. |
myGraphAppBilling | Имя, которое необходимо присвоить этому экземпляру ресурса. |
myAppGUID | Идентификатор приложения (клиента) включенного приложения, предоставленный в виде строкового параметра; например, 00000000-0000-0000-0000-000000000000000. |
mySubscriptionGUID | Идентификатор подписки Azure, которая будет получать события выставления счетов, указанная в виде строкового параметра; например, 00000000-0000-0000-0000-000000000000000. |
Успешный результат JSON будет выглядеть примерно так:
{
"extendedLocation": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.GraphServices/accounts/myGraphAppBilling",
"identity": null,
"kind": null,
"location": "Global",
"managedBy": null,
"name": "myGraphAppBilling",
"plan": null,
"properties": {
"appId": "00000000-0000-0000-0000-000000000000",
"billingPlanId": "00000000-0000-0000-0000-000000000000",
"provisioningState": "Succeeded"
},
"resourceGroup": "myRG",
"sku": null,
"systemData": {
"createdAt": "2023-01-31T00:12:20.7893671Z",
"createdByType": "User",
"lastModifiedAt": "2023-01-31T00:12:20.7893671Z",
"lastModifiedByType": "User"
},
"tags": null,
"type": "microsoft.graphservices/accounts"
}
Проверка установки
Выполните следующие действия, чтобы убедиться, что приложение правильно включено для использования лимитных API и служб в Microsoft Graph.
Примечание: Следующие действия можно выполнить, войдя в https://portal.azure.com систему и выбрав Cloud Shell, или с помощью локального интерфейса командной строки Azure. Если вы используете Cloud Shell в первый раз, может потребоваться создать учетную запись хранения. Выберите подписку Azure, нажмите кнопку Создать и следуйте инструкциям, чтобы создать учетную запись хранения. Чтобы использовать локальный интерфейс командной строки Azure, установите Azure CLI.
Если у вас несколько подписок Azure, сведения о настройке активной подписки см. в статье Использование нескольких подписок Azure. В противном случае перейдите к следующему шагу.
Используйте команду az resource list , чтобы получить список ресурсов, связанных с активной подпиской Azure. Скопируйте следующую команду в интерфейс командной строки и введите <ВВОД>. Если команда выполнена успешно, ответ будет содержать представление ресурсов, связанных с активной подпиской Azure в формате JSON.
az resource list --resource-type Microsoft.GraphServices/accounts
Успешный результат JSON будет выглядеть примерно так:
[
{
"changedTime": "2023-04-25T18:12:30.586342+00:00",
"createdTime": "2023-04-25T18:02:30.141407+00:00",
"extendedLocation": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.GraphServices/accounts/myGraphAppBilling",
"identity": null,
"kind": null,
"location": "global",
"managedBy": null,
"name": "myGraphAppBilling",
"plan": null,
"properties": null,
"provisioningState": "Succeeded",
"resourceGroup": "myRG",
"sku": null,
"tags": null,
"type": "Microsoft.GraphServices/accounts"
}
]
- Используя значения, возвращенные на шаге 2, используйте команду az resource show , чтобы отобразить полные сведения о ресурсе. Скопируйте следующую команду в интерфейс командной строки, замените перечисленные в таблице параметры собственными значениями и введите <ВВОД>. Если команда выполнена успешно, ответ будет содержать представление запрошенного ресурса в формате JSON.
az resource show --resource-group myRg --name myGraphAppBilling --resource-type Microsoft.GraphServices/accounts
Параметр | Описание |
---|---|
myRG | Имя группы ресурсов Azure, предоставленное в результате действия 2. |
myGraphAppBilling | Имя ресурса, предоставленное в результате действия 2. |
Успешный результат JSON будет выглядеть примерно так:
{
"extendedLocation": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.GraphServices/accounts/myGraphAppBilling",
"identity": null,
"kind": null,
"location": "Global",
"managedBy": null,
"name": "myGraphAppBilling",
"plan": null,
"properties": {
"appId": "00000000-0000-0000-0000-000000000000",
"billingPlanId": "00000000-0000-0000-0000-000000000000"
},
"resourceGroup": "myRG",
"sku": null,
"tags": null,
"type": "microsoft.graphservices/accounts"
}
Свойство properties будет включать идентификатор приложения для связанной регистрации приложения.
Использование лимитных API в приложении
После связывания регистрации приложения и подписки приложение может начать использовать лимитные API и службы в Microsoft Graph. Затраты, созданные на основе этих запросов, будут взиматься за подписку Azure, связанную с приложением.
Примечание: Приложению может потребоваться запросить новый маркер доступа OAuth, прежде чем будут разрешены запросы к ЛИМИТным API.
Вы можете отслеживать затраты и использование лимитных API и служб в Microsoft Graph с помощью управления затратами Azure и выставления счетов. Это обеспечивает доступ к затратам в рамках подписки, которые можно разделить на основе приложения, вызывающего клиента или счетчика.
Счета за использование лимитных API и служб
После запуска период выставления счетов подписки, обычно на 5-й день месяца, владелец подписки или пользователи с разрешениями на основе ролей могут скачать счет. Дополнительные сведения см. в статье Просмотр и скачивание счета Azure.
Счет будет содержать сведения, позволяющие понять объем использования, создаваемый приложением, и для мультитенантных приложений, где это происходит. Дополнительные сведения см. в статье Общие сведения о счете Azure.
Связанные материалы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по