Azure的Graph API支持使用此API获取用户的详细信息。它支持 id 或 userPrincipalName(UPN(。对于 B2B 用户,要求是使用 UPN 获取详细信息。Azure 为 B2B 用户创建的 UPN 格式如下 "B2BUserEmail#EXT#directoryid/Tenant"
使用上述 UPN 格式查询时
https://graph.microsoft.com/v1.0/users/b2buseremail.com#EXT#@<directory/tenant>
REST API 失败并给出以下错误
{
"error": {
"code": "Request_ResourceNotFound",
"message": "Resource 'b2buseremail.com' does not exist or one of its queried reference-property objects are not present.",
"innerError": {
"request-id": "d167220f-e0ef-4528-b7a5-de71fd524f07",
"date": "2019-12-09T23:52:18"
}
}
}
目前,Azure Graph API 将"#"视为特殊字符,因此他们建议使用"%23"而不是"#"
所以查询看起来像
https://graph.microsoft.com/v1.0/users/b2buseremail.com%23EXT%23@<directory/tenant>