Cordova 使用从Azure AD和ADAL获得的令牌访问SharePoint内部部署 目标

Cordova 使用从Azure AD和ADAL获得的令牌访问SharePoint内部部署 目标,cordova,authentication,sharepoint,azure-active-directory,adal,Cordova,Authentication,Sharepoint,Azure Active Directory,Adal,使用OAuth通过基于Apache Cordova的移动应用程序的REST请求访问本地SharePoint数据 到目前为止我都试过了 1.Azure移动服务/混合连接/AAD/ADAL 与博客文章类似,但使用内部部署服务器而不是O365: 客户端使用登录 通过混合连接连接到本地服务器的移动服务 使用ADAL.net使用步骤1中获得的令牌为SharePoint服务器获取令牌 除了第三步之外,这工作正常,因为本地服务器和AAD之间没有任何连接,因此无法获取令牌 2.同上,外加Azure应用程序代理

使用OAuth通过基于Apache Cordova的移动应用程序的REST请求访问本地SharePoint数据

到目前为止我都试过了 1.Azure移动服务/混合连接/AAD/ADAL 与博客文章类似,但使用内部部署服务器而不是O365:

  • 客户端使用登录
  • 通过混合连接连接到本地服务器的移动服务
  • 使用ADAL.net使用步骤1中获得的令牌为SharePoint服务器获取令牌
  • 除了第三步之外,这工作正常,因为本地服务器和AAD之间没有任何连接,因此无法获取令牌

    2.同上,外加Azure应用程序代理 我们已经按照Kirk Evans在本文中的描述设置了Azure应用程序代理。 移动服务的Azure AD应用程序被授予应用程序代理(在同一Azure AD租户中)的应用程序访问权限

    现在,第一步到第三步工作正常。我们已经能够使用应用程序代理URL作为资源获取令牌。然后,我们尝试使用令牌执行REST请求,如下所示:

    GET https://<server>.msappproxy.net/_api/web/title
    Authorization: Bearer <the token>
    Accept: application/json;odata=verbose
    
    GEThttps://.msappproxy.net/_api/web/title
    授权:持票人
    接受:application/json;odata=冗长
    
    但这会将302重定向发送到。 我试图通过将令牌作为“id_token=”发布到应用程序代理来模拟使用浏览器时进行的握手,但这似乎有点牵强,Azure应用程序代理设置并不打算这样做

    我认为缺少的部分是为本地SharePoint启用基于令牌的身份验证。我找不到任何关于如何做到这一点的信息。我正在考虑在本地服务器上安装SharePoint应用程序(现在是外接程序)进行调查。我怀疑这能否解决这个问题。 我尝试使用以下方法将服务器连接到AAD: . 同样,这更像是在黑暗中拍摄的

    问题:
    我如何获得AAD的令牌并使用它从Cordova移动应用程序中对内部SharePoint执行请求?

    您是否找到了一种方法来实现这一点?您是否能够解决此问题?