首页 > 解决方案 > 令牌中的acquireTokenAsync 缺少deviceId

问题描述

我正在使用为 Intune 启用代理支持cordova adal 库。当我使用可选的userId参数调用下面的acquireTokenAsync方法时,返回的生成的访问令牌包含一个 deviceId 值,但是当我将 userId 排除在调用之外时,访问令牌不包含 deviceId。 设备 ID 是否应该出现在两个调用的访问令牌中,还是上述行为是预期的输出? 在此处输入图像描述

标签: adal

解决方案


根据我的理解,设备 ID 应该出现在两个调用的访问令牌中。因为即使我们不指定用户,我们在获取访问令牌时也需要用户信息。似乎与是否指定用户无关。

我对cordova不熟悉,但是我用C# Adal SDK测试过,即使我不使用userId作为参数,访问令牌也包括deviceId。

但是根据id_tokens 中的声明,设备令牌在访问令牌中不是强制性的。如果您确定 deviceId 不在您的访问令牌中,我建议您向 Azure 团队提供反馈。


推荐阅读