Я пытаюсь загрузить файлы из OneDrive с помощью Microsoft Graph.Сейчас я нахожусь в стадии тестирования и еще не написал ни одного кода.
Вот что я сделал до сих пор:
- Создал и зарегистрировал приложение через https://apps.dev.microsoft.com
- Генерировал секретный включенный неявный поток
Предоставил ему следующий список разрешений Microsoft Graph:
Делегированный : Files.ReadWrite.All
, offline_access
, Group.ReadWrite.All
, Directory.ReadWriteAll
, User.ReadWriteAll
Применение : Directory.ReadWrite.All
, Files.ReadWrite.All
, Group.ReadWrite.All
, User.ReadWrite.All
Использовал поток code
с областью действия offline_access
и Files.ReadWrite.All
, получил код и затем токен.
Использование этого токена для загрузкифайл через /me
диск работает хорошо (/v1.0/me/drive/items/itemid/content
), но когда я пытаюсь загрузить или просто запросить других пользователей, я получаю сообщение об ошибке с недостаточными привилегиями.
Вызов https://graph.microsoft.com/v1.0/users
получает ответ:
{
"error": {
"code": "Authorization_RequestDenied",
"message": "Insufficient privileges to complete the operation.",
"innerError": {
"request-id": "cee06586-12af-4768-9135-b9709d7ecb5d",
"date": "2018-05-29T14:45:48"
}
}
}
То же самое происходит, когда я добавляю идентификатор пользователя.Когда я прошу получить устройство пользователя, я получаю ответ «не найден».
Я видел ответы на аналогичные вопросы, в которых говорилось, что я должен добавить разрешения для своего приложения в Azure Active Directory через портал Azure, но мое приложение указано только в разделе «Корпоративное приложение», и я не вижув разделе «Регистрация приложений», где я могу добавить разрешения, в разделе «Приложения предприятия» я не могу добавить какие-либо разрешения, только поиск.
Примечание. Мой идентификатор пользователя - глобальный администратор на портале Azure.,Этот пользователь также является пользователем, который создал и владеет приложением.
Есть идеи, чего мне здесь не хватает?
Спасибо
Редактировать :
Мне удалось добиться определенного прогресса, я пытался создать приложение через портал Azure, а не через портал приложений.Теперь он отображается на странице регистрации приложения, поэтому я смог добавить к нему разрешения.
Так что теперь я могу просматривать всех пользователей, но все же, когда я пытаюсь просмотреть их диск, я получаю "«not found» ответ:
Вызов https://graph.microsoft.com/v1.0/users/userid/drive
возвращает ответ:
{
"error": {
"code": "itemNotFound",
"message": "The resource could not be found.",
"innerError": {
"request-id": "ec6ed197-15ea-498a-80d0-e2a9f832a0b9",
"date": "2018-05-29T15:49:18"
}
}
}