Разница в пользовательских конечных точках - PullRequest
0 голосов
/ 25 апреля 2019

В моем клиенте Azure AD у меня есть несколько пользователей, которых я использую https://graph.microsoft.com/beta/users, и я получаю пользователей Education для школы, использующих https://graph.microsoft.com/beta/education/schools/<id>/users или https://graph.microsoft.com/beta/education/users

В чем здесь разница и как мы можем их дифференцировать на панели портала? Можем ли мы сделать обычного пользователя образовательным пользователем в определенной школе? На самом деле я не являюсь администратором портала.

1 Ответ

1 голос
/ 26 апреля 2019

На уровне AAD (который вы видите на портале Azure) нет различий между объектами.

Отличается то, как отображается ресурс User. Когда вы запрашиваете пользователей через /education/users, вы получаете дополнительные метаданные. Например, если пользователь является студентом, вы получите свойства educationStudent. Если они Учитель, вы увидите свойства educationTeacher.

Ресурсы educationUser также имеют дополнительные свойства навигации для educationClass и educationScool. Например, вы можете вызвать v1.0/education/users/{id}/classes, но не v1.0/users/{id}/classes, потому что стандартному ресурсу User не хватает навигационного свойства classes.

Эта же модель переносится в другие области:

  • educationUser расширяет ресурс user
  • educationClass расширяет ресурс group
  • educationSchool расширяет ресурс administrativeUnit

Вы можете добавить образованиеUser в EducationSchool , например:

POST https://graph.microsoft.com/v1.0/education/schools/{schoolId}/users/$ref
Content-type: application/json
{
  "@odata.id":"https://graph.microsoft.com/v1.0/education/users/{userId}"
}

Кроме того, я настоятельно рекомендую не использовать версию /beta. Бета-версия может и будет время от времени ломаться. Разрывные изменения происходят без предупреждения и, как таковые, просто недостаточно надежны для использования в производственном приложении.

...