Интегрируйте Azure AD для аутентификации пользователя и сохраняйте данные на одном диске пользователя, используя REST API - PullRequest
1 голос
/ 08 мая 2019

Я хотел интегрировать службу Azure AD с моим веб-приложением, чтобы проверять подлинность пользователей и сохранять документ в хранилище одного пользователя.

Я попробовал пример библиотеки adal4j, где я настроил свое приложение на портале Azure и смог аутентифицировать его.Но теперь мне нужно использовать Microsoft Graph API для использования службы с одним приводом (загрузка файлов).

Любые предложения от вас, ребята ?.Я проверил Graph API, где образцы Java недоступны.

Я пробовал ниже библиотеки.

https://azure.microsoft.com/en-in/resources/samples/active-directory-java-webapp-openidconnect/

Также ссылка ниже, где я не сделалнашел любые образцы для Java.

https://docs.microsoft.com/en-us/onedrive/developer/rest-api/?view=odsp-graph-online

1 Ответ

0 голосов
/ 21 мая 2019

Звучит так, как будто вы пытаетесь сделать вызов API-интерфейса onedrive с использованием Java.

Библиотека ADAL4J, на которую вы ссылаетесь, имеет вики, в которой показано, как ее использовать.

Вики для библиотеки GALUB ADAL4J показывает, как получить токен доступа и позвонить в Microsoft Graph здесь: https://github.com/AzureAD/azure-activedirectory-library-for-java/wiki/ADAL4J-Basics

Ниже приведен отрывок:

Вот шаги, чтобы начать работу с ADAL4J:

Создание объекта ADAL AuthenticationContext.

String Authority = "https://login.microsoftonline.com/contoso.onmicrosoft.com/"; Служба ExecutorService = Executors.newFixedThreadPool (1);

AuthenticationContext context = new AuthenticationContext (author, true, service); Использование экземпляра контекста аутентификации для получения токенов. ADAL4J предоставляет различные методы для получения токенов в зависимости от типа вашего приложения. Обратитесь к разделу токенов получения для получения соответствующей информации.метод для вашей реализации.

Используйте полученный токен в качестве токена-носителя в обращении к веб-API.

Future future = context.acquireTokenByAuthorizationCode (code, redirectUri, new ClientCredential (clientId, clientSecret)), null, null); AuthenticationResult result = future.get ();

HttpURLConnection conn = (HttpURLConnection) url.openConnection ();conn.setRequestProperty («Авторизация», «Носитель» + result.getAccessToken ());Вы также можете обратиться к этому полному образцу веб-приложения с помощью ADAL4J для аутентификации пользователей и получения токенов для MS Graph API.

Получив токен доступа, вы будете следовать руководству по началу работы для OneDrive.API Graph здесь: https://docs.microsoft.com/en-us/onedrive/developer/rest-api/getting-started/?view=odsp-graph-online

Ниже приведен отрывок:

  1. Аутентификация пользователя и авторизация вашего приложения Microsoft Graph и OneDrive API используют OAuth 2.0 для авторизации.После завершения потока OAuth ваше приложение получает токен доступа, который предоставляет Microsoft Graph доступ к определенному набору разрешений для пользователя.

Ваше приложение предоставляет токен доступа в каждом запросе через HTTPheader:

Авторизация: bearer {token}

Для получения дополнительной информации о авторизации вашего приложения и получении токена доступа см. Авторизация приложения с помощью Microsoft Graph.

Выполнение вызовов ресурса После того, как ваше приложение авторизовано и получило токен доступа, оно может отправлять запросы конечной точке Microsoft Graph на ресурсы OneDrive или SharePoint.Чтобы создать URL-адрес для ресурса, вам необходимо знать относительный URL-адрес корневого ресурса (например, пользователя, группы или сайта) и ресурса накопителя или ресурса driveItem, на который нацелен ваш запрос.

URL-адрес запроса включает в себя следующие компоненты:

корневой URL-адрес Microsoft Graph и его версия (https://graph.microsoft.com/v1.0) целевое назначение корневого ресурса (/ users / {id}) целевое назначение ресурса API OneDrive (/ drive или / drives /{id} / items / {item-id} или / drive / root: / path / to / item) Примечание. В документации используется только частичный синтаксис, такой как: GET / drive / items / {item-id}ради краткости. Чтобы получить полный путь к ресурсу или URL-адрес, добавьте префикс пути к правильному корневому URL-адресу и целевому корневому ресурсу.

Пожалуйста, оставьте комментарий, если у вас есть вопросы.

...