可以通过具有特定基于角色的访问控制和Microsoft Entra凭据的帐户使用 Intune Data Warehouse API。 然后,将使用 OAuth 2.0 通过 Microsoft Entra ID 授权 REST 客户端。 最后,将形成一个有意义的 URL 来调用数据仓库资源。
Microsoft Entra ID 和 Intune 凭据要求
身份验证和授权基于Microsoft Entra凭据Intune基于角色的访问控制 (RBAC) 。 默认情况下,租户的所有 Intune 管理员都有权访问数据仓库。 使用 Intune 角色通过为更多用户授予对 Intune 数据仓库资源的访问权限,为更多用户提供访问权限。
访问 Intune Data Warehouse(包括 API)的要求如下:
- 用户必须至少具有以下角色之一:
- Intune 服务管理员
- 对 Intune 数据仓库资源具有基于角色的访问权限的用户
- 使用仅应用程序身份验证的无用户身份验证
重要
若要分配有Intune角色并访问Intune Data Warehouse,用户必须具有Intune许可证。 有关详细信息,请参阅具有 Microsoft Intune 和 Microsoft Intune 许可的基于角色的访问控制 (RBAC) 。
Authorization
Microsoft Entra ID 使用 OAuth 2.0 授权访问 Microsoft Entra 租户中的 Web 应用程序和 Web API。 本指南与语言无关,介绍如何在不使用任何开源库的情况下发送和接收 HTTP 消息。 OAuth 2.0 授权代码流在 OAuth 2.0 规范的第 4.1 节 中介绍。
有关详细信息,请参阅使用 OAuth 2.0 和 Microsoft Entra ID 授权访问 Web 应用程序。
API URL 结构
Data Warehouse API 终结点读取每个集的实体。 API 支持 GET HTTP 谓词和查询选项的子集。
Intune 的 URL 使用以下格式:https://fef.{location}.manage.microsoft.com/ReportingService/DataWarehouseFEService/{entity-collection}?api-version={api-version}
注意
在以上 URL 中,根据 {location}下表中提供的详细信息替换 、 {entity-collection}和 {api-version} 。
URL 包含以下元素:
| 元素 | 示例 | 说明 |
|---|---|---|
| 位置 | msua06 | 可通过查看 Microsoft Intune 管理中心中的 Data Warehouse API 边栏选项卡找到基 URL。 |
| entity-collection | devicePropertyHistories | OData 实体集合的名称。 有关数据模型中的集合和实体的详细信息,请参阅 数据模型。 |
| API 版本 | beta 版 | Version 是要访问的 API 版本。 有关详细信息,请参阅 版本。 |
| MaxHistoryDays | 7 | (可选) 要检索的历史记录的最大天数。 此参数可以提供给任何集合,但仅对作为其键属性一部分的集合 dateKey 生效。 有关详细信息,请参阅 DateKey 范围筛选器 。 |
API 版本信息
现在,可以通过设置查询参数api-version=v1.0来使用 v1.0 版本的Intune Data Warehouse。 对 Data Warehouse 中的集合的汇报本质上是累加的,不会破坏现有方案。
您可以使用测试版试用 Data Warehouse 的最新功能。 若要使用 beta 版,URL 必须包含查询参数 api-version=beta。 beta 版本在作为受支持服务正式发布之前提供了功能。 随着 Intune 添加新功能,beta 版本可能会更改行为和数据协定。 任何依赖于 beta 版本的自定义代码或报告工具都可能因正在进行的更新而中断。
OData 查询选项
当前版本支持以下 OData 查询参数: $filter、、 $select和 $skip,$top。 在 $filter中,仅 DateKey 当列适用时才受支持或 RowLastModifiedDateTimeUTC 可能支持,而其他属性会触发错误的请求。
DateKey 范围筛选器
DateKey 范围筛选器可用于限制某些具有 AS 键属性的集合的下载 dateKey 数据量。
DateKey该筛选器可用于通过提供以下$filter查询参数来优化服务性能:
-
DateKey单独在$filter中,支持lt/le/eq/ge/gt运算符并与逻辑运算符and联接,其中它们可以映射到开始日期和/或结束日期。 -
maxhistorydays作为自定义查询选项提供。
筛选器示例
注意
筛选器示例假定今天是 2018 年 2 月 21 日。
| 筛选 | 性能优化 | 说明 |
|---|---|---|
maxhistorydays=7 |
完整 | 返回介于 20180214 和 20180221 之间的数据 DateKey 。 |
$filter=DateKey eq 20180214 |
完整 | 返回 DateKey 等于 20180214 的数据。 |
$filter=DateKey ge 20180214 and DateKey lt 20180221 |
完整 | 返回介于 20180214 和 20180220 之间的数据 DateKey 。 |
maxhistorydays=7&$filter=DateKey eq 20180214 |
完整 | 返回 DateKey 等于 20180214 的数据。
maxhistorydays 被忽略。 |
$filter=RowLastModifiedDateTimeUTC ge 2018-02-21T23:18:51.3277273Z |
完整 | 返回 RowLastModifiedDateTimeUTC 大于等于 2018-02-21T23:18:51.3277273Z |