我想将Azure AD服务与我的Web应用程序集成在一起,以验证用户并将文档存储到用户的单驱动位置。
我尝试了Adal4j库示例,其中我在Azure Portal上配置了我的应用程序并能够对其进行认证。但是现在,我需要使用Microsoft Graph API来使用单驱动服务(上传文件(。
你们有什么建议吗?我检查了java示例的图形API。
我尝试了以下图书馆。
https://azure.microsoft.com/en-in/resources/samples/active-directory-java-webapp-openidconnect/
还参考了下面的链接,我没有找到Java的任何示例。
https://learn.microsoft.com/en-us/onedrive/developer/rest-api/?view=odsp-graph-online
听起来您正在尝试使用Java进行OneDrive Graph API调用。
您所指的Adal4j库有一个Wiki,显示了如何使用它。
adal4j github库的Wiki向您展示了如何获取访问令牌并拨打Microsoft Graph在这里:/adal4j-basics
摘录以下:
这是开始使用adal4j的步骤:
实例化Adal AuthenticationContext对象。
字符串权限= " https://login.microsoftonline.com/contoso.onmicrosoft.com/"; executorService service = executors.newfixedthreadpool(1(;
authenticationContext上下文= new AuthenticationContext(权威, 是的,服务(;使用身份验证上下文实例获取 令牌。adal4j提供了不同的方法来基于 您的申请类型。请参阅"获取令牌"部分 适合您实施的方法。
在呼叫Web API中,使用获得的令牌作为携带者令牌。
未来未来= context.acquiretokenbyauthorizationcode(代码,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 Graph API的入门指南:https://learn.microsoft.com/en-us/onedrive/developer/developer/rest-api/rest-api/getting-started/-w-----查看= ODSP-Graph-online
摘录以下:
- 用户身份验证并授权您的应用程序Microsoft Graph和OneDrive API使用OAuth 2.0进行授权。通过完成OAuth 流量,您的应用程序会收到一个访问令牌,可提供对 Microsoft将用户的特定权限集合为
您的应用程序通过http提供了每个请求中的访问令牌 标题:
授权:承载{token}
有关授权您的申请并获得的更多信息 访问令牌,请参阅具有Microsoft Graph的应用程序授权。
- 一旦您的应用程序获得授权并接收到访问令牌,请拨打资源,它可以向Microsoft Graph Endpoint提出请求 用于OneDrive或SharePoint资源。构建一个URL 资源,您需要了解根资源的相对URL (例如用户,组或站点(以及驱动器资源或驱动器 资源您的请求是针对的。
请求URL包括以下组件:
Microsoft Graph root URL和版本 (https://graph.microsoft.com/v1.0(根源目标 (/用户/{id}(OneDrive API资源目标(/drive或 /drives/{id}/item/{item-id}或/drive/root:/path/to/item(注意: 在整个文档中,仅部分语法,例如:获取 /drive/item/{item-id}用于简洁起见。前缀 具有正确的根网址和根资源目标的路径 获取完整的资源路径或URL。
如果您有问题,请发表评论。