我使用 MSAL JS 来验证用户身份,然后调用 acquireTokenPopup(scopes) 来获取访问令牌。
我正在获取访问令牌,但无法按照其说明使用它签名无效。
(也在 jwt.io 中检查过 - 同样的错误)
在论坛上我发现这是由于 Graph 添加了随机数造成的。
解决方案是什么?
请帮忙。
以下是代码。
tenantConfig = {
scopes: ["directory.read.all"]
};
this.clientApplication.acquireTokenSilent(this.tenantConfig.scopes).then(
函数(访问令牌){
},
function (error) {
console.log(error);
this.clientApplication
.acquireTokenPopup(this.tenantConfig.scopes)
.then(
function (accessToken) {
console.log("access token " + accessToken);
},
function (error) {
alert(error);
}
);
}
);
当使用 MSAL.js 并且不使用图形 api 时,您的范围参数应为“[CLIENT_ID]/.default”:
var requestObj = {
scopes:["[CLIENT_ID]/.default"]
};
如果您打算使用图形 api,则 scopes 参数会有所不同:
var ResourceId = "https://graph.windows.net/";
var scopes = [ ResourceId + "Directory.Read", ResourceID + "Directory.Write"];
这里的例子https://learn.microsoft.com/en-us/azure/active-directory/develop/tutorial-v2-javascript-spa使用 graph api 并为 graph api 生成特定令牌,如果需要生成用于其他用途的访问令牌,请更改scopes 参数。
有关范围参数的更多信息:https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-v1-app-scopes#scopes-to-request-access-to-all-the-permissions-of-a- v10-应用程序
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)