#azure-ad-graph-api
#azure-ad-graph-api
Вопрос:
Я использую GraphAPI, получая пользователей по электронной почте в течение нескольких месяцев. Что-то случилось с конкретным пользователем. Прямо сейчас я не могу получить этого пользователя, используя следующий подход:
signInNames/any(x:x/value eq '{email}'
Это работает со всеми пользователями, кроме того, о котором я говорил ранее.
Я получаю это при попытке получить по электронной почте:
{
"odata.metadata": "https://graph.windows.net/jsmaddev.onmicrosoft.com/$metadata#directoryObjects",
"value":[]
}
Если я попытаюсь получить доступ к ObjectId, я смогу получить доступ к информации пользователя, но имена входа кажутся пустыми:
"signInNames":[]
Есть ли что-то, что может вызвать это? Вы должны помнить, что этот конкретный доступ работал так, как предполагалось.
Спасибо!
Ответ №1:
Это нормально. Фильтр signInNames/any(x:x/value eq '{email}'
возвращает пользователей, которым signInNames.value
соответствует электронная почта.
Пример signInNames
части:
"signInNames": [
{
"type": "userName",
"value": "AlexW"
},
{
"type": "emailAddress",
"value": "AlexW@example.com"
}
]
Если я попытаюсь получить доступ к ObjectId, я смогу получить доступ к информации пользователя, но имена входа кажутся пустыми
Поскольку signInNames
свойство пустое, "signInNames":[]
, оно вернет "value":[]
.
Вы должны помнить, что этот конкретный доступ работал так, как предполагалось.
Конечно, если параметр signInNames
не пуст, он будет работать нормально.
Комментарии:
1. Верно, но, как я уже сказал, этот пользователь работал по назначению и внезапно остановился. Есть ли что-нибудь, что может вызвать это? Спасибо!
2. @AustinFelipe Не уверен, может быть, кто-то в вашем клиенте обновляет свойство пользователя. Вы можете перейти к Azure Active Directory в разделе портал -> Пользователи -> Журналы аудита, проверить журналы, указать цель с идентификатором объекта пользователя, см. : i.stack.imgur.com/nwIl0.png , для получения более подробной информации о журналах аудита перейдите по этой ссылке . Короче говоря, комментарий выше — это только мое предположение. По этому вопросу, на самом деле, вы не должны спрашивать меня, вы должны спросить участников в вашем клиенте.