从SharePoint页面调用Web API,即不是SharePoint加载项

时间:2016-03-08 03:59:46

标签: sharepoint asp.net-web-api office365 jwt

我已成功按照here中的说明创建并发布了一个Web API项目。

我还测试了访问我的服务的根网址,并且我被正确提示先登录,之后我可以从通过[Authorize]属性保护的端点获取结果。

Web API实例与我的SharePoint Online网站处于相同的租赁状态。我现在想要使用Code Snippet webpart从SharePoint中的页面调用API。我添加了一些代码来调用API,然后我回到302重定向到https://login.windows.net/[instance id] / oauth2 / authorize?response_type = id_token&amp; redirect_uri = ...所以它似乎正在尝试执行登录。< / p>

我的问题:由于SharePoint和Web API共享同一个Azure AD实例,如何通过Javascript将已登录用户的令牌转发到API?

1 个答案:

答案 0 :(得分:0)

  

由于SharePoint和Web API共享同一个Azure AD实例,如何通过JavaScript将已登录用户的令牌转发到API?

SharePoint AD保护SharePoint Online和Web API,但无法在应用程序之间共享令牌。

在这种情况下,您可以考虑在Azure AD中为Web App配置单点登录(SSO),以避免用户重复输入用户名和密码。

enter image description here