0

我正在尝试通过使用 Azure ID 对用户进行身份验证来使用 ucwa。我试图遵循这些信息:使用 Azure AD 进行身份验证

有些步骤运行得不是很好,但在重新发送带有承载令牌的自动发现请求后,我设法获取了应用程序资源链接。

当我向https://webdir1e.online.lync.com/autodiscover/autodiscoverservice.svc/root/oauth/user发送获取请求时,不记名令牌起作用。所以我收到这样的答案:

HTTP/1.1 200 OK { "_links":{ "self":{"href":"https://webdirX.online.lync.com/Autodiscover/AutodiscoverService.svc/root/user"}, "applications":{"href":"https://webpoolXY.infra.lync.com/ucwa/oauth/v1/applications"} } }

所以我尝试做一个像这样的发布请求:

POST https://webpoolXY.infra.lync.com/ucwa/oauth/v1/applications HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer <access-token> ... { "UserAgent":"UCWA Samples", "EndpointId":"a917c6f4-976c-4cf3-847d-cdfffa28ccdf", "Culture":"en-US", }

但我有一个403 Forbidden答案,与 X-Ms-diagnostics:28055;source="DB41E07FES15.infra.lync.com";reason="The OAuth token is invalid.";faultcode="wsse:FailedAuthentication"

我对此请求使用相同的承载访问令牌。我应该得到一个新的令牌吗?

4

1 回答 1

0

是的,您需要获得一个新令牌才能访问应用程序资源,然后才能成功 POST 到它。

在您的示例中,将https://webpoolXY.infra.lync.com/作为资源传递给 Azure AD,并使用生成的令牌来执行您的 POST 请求。

我创建了一个基于 C# 的示例应用程序,它执行 UCWA 自动发现以及应用程序创建、会议创建/列表/删除和状态管理,您可以将其作为参考。

于 2016-07-07T17:27:14.807 回答