使用 Microsoft graph API 检索特定属性
Using Microsoft graph API to retrieve a specific attribute
嗨(我是新手所以你需要原谅我),
我正在尝试使用 Microsoft Graph API 从活动目录中检索一些用户属性。
我正在对 Microsoft graph explorer 进行一些测试,但我不完全确定如何检索名为 employeeID 的特定属性(这是必需的)。我已经找到了如何使用以下方法检索我需要的其他一些基本信息:
https://graph.microsoft.com/v1.0/me
哪个returns:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
"id": "6df92a63-2bef-477c-8c84-bf1113d5bd3e",
"businessPhones": [],
"displayName": "SmithB",
"givenName": "bob",
"jobTitle": null,
"mail": "example@example.com",
"mobilePhone": null,
"officeLocation": null,
"preferredLanguage": null,
"surname": "smith",
"userPrincipalName": "example@example.com"
}
然而,我在这一点之外不知所措。文档似乎提到了一些关于使用 $select
的内容,但它似乎更多地用于优化查询而不是查找特定属性。
我确信有一个相当简单的解决方案,如果有人能为我指明如何查询特定属性的正确方向,我将不胜感激。
如果你查看documented properties exposed on a user,你会发现没有属性叫做EmployeeId
。
现在这 属性 可能作为用户对象上的 Open Extension 存在。
在那种情况下,您可以read here了解如何return用户对象的扩展属性。
GET /users/{Id|userPrincipalName}/extensions/{extensionId}
或者您可以使用 Schema Extensions 来达到同样的目的。
GET https://graph.microsoft.com/beta/schemaExtensions
无论哪种方式,如果您确定 EmployeeId
存在于您的目录中,您应该知道它不是 Microsoft Graph 或 AAD 支持的默认值 属性。相反,它必须是使用上述两种扩展方法之一添加到您的目录中的某个扩展。
希望对您有所帮助。
我想这个帖子已经过时了。现在,Azure AD 中有一个标准属性通过 Microsoft Graph API 公开,称为 "employeeId",如 Official GraphAPI reference doc 中所述
它不出现在默认响应中,但可以通过 $select
参数检索,例如:
https://graph.microsoft.com/v1.0/users/{user_id}?$select=givenName,surname,employeeId,etc...
嗨(我是新手所以你需要原谅我),
我正在尝试使用 Microsoft Graph API 从活动目录中检索一些用户属性。
我正在对 Microsoft graph explorer 进行一些测试,但我不完全确定如何检索名为 employeeID 的特定属性(这是必需的)。我已经找到了如何使用以下方法检索我需要的其他一些基本信息:
https://graph.microsoft.com/v1.0/me
哪个returns:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
"id": "6df92a63-2bef-477c-8c84-bf1113d5bd3e",
"businessPhones": [],
"displayName": "SmithB",
"givenName": "bob",
"jobTitle": null,
"mail": "example@example.com",
"mobilePhone": null,
"officeLocation": null,
"preferredLanguage": null,
"surname": "smith",
"userPrincipalName": "example@example.com"
}
然而,我在这一点之外不知所措。文档似乎提到了一些关于使用 $select
的内容,但它似乎更多地用于优化查询而不是查找特定属性。
我确信有一个相当简单的解决方案,如果有人能为我指明如何查询特定属性的正确方向,我将不胜感激。
如果你查看documented properties exposed on a user,你会发现没有属性叫做EmployeeId
。
现在这 属性 可能作为用户对象上的 Open Extension 存在。
在那种情况下,您可以read here了解如何return用户对象的扩展属性。
GET /users/{Id|userPrincipalName}/extensions/{extensionId}
或者您可以使用 Schema Extensions 来达到同样的目的。
GET https://graph.microsoft.com/beta/schemaExtensions
无论哪种方式,如果您确定 EmployeeId
存在于您的目录中,您应该知道它不是 Microsoft Graph 或 AAD 支持的默认值 属性。相反,它必须是使用上述两种扩展方法之一添加到您的目录中的某个扩展。
希望对您有所帮助。
我想这个帖子已经过时了。现在,Azure AD 中有一个标准属性通过 Microsoft Graph API 公开,称为 "employeeId",如 Official GraphAPI reference doc 中所述
它不出现在默认响应中,但可以通过 $select
参数检索,例如:
https://graph.microsoft.com/v1.0/users/{user_id}?$select=givenName,surname,employeeId,etc...