ADAL.js 和 Yammer 身份验证

ADAL.js and Yammer authentication

我遇到的问题看起来与这个问题非常相似,但 activity 现在很低: Yammer REST API: 401 Unauthorized when using Azure AD token and Yammer Delegated Permissions

使用 Adal.JS 我已成功检索到多项服务的令牌,包括 https://graph.windows.net, https://graph.microsoft.net 等等。

但是,无论我如何尝试,都没有对我指定的端点的请求:

'https://wwww.yammer.com': 'https//wwww.yammer.com'

将始终导致 401 未经授权。有没有人 运行 遇到过类似的问题并设法解决了它?根据上述问题的答案之一,我无法禁用 SSO。

必须将 yammer 网络映射到 Office 365,以便 ADAL 集成令牌与 Yammer API 端点一起使用。如果用户可以使用其 Office 365 凭据成功登录到 Yammer,则可以判断您的网络映射已到位。

我怀疑您是否属于这种情况,因为您仍在使用 Yammer SSO,因为 Yammer SSO 与 Yammer 的 Office 365 登录互斥。

Yammer 将于 2016 年 12 月 1 日弃用 SSO,因此开始计划尽快切换到 Office 365 身份可能是有意义的。

如评论中所述,最终问题不是401 Unauthorized而是缺少Access-Control-Allow-Origin headers,意味着请求成功但在浏览器中被阻止。

在与 Microsoft 联系后,确定通过 ADAL.js 进行身份验证时,当前未添加这些 headers。我们鼓励客户暂时使用 Yammer JS SDK。

我们还被建议尝试构建一个代理请求服务器,它将转发客户端请求并在响应中提供必要的 headers,我们目前正在探索。