与MSAL.js相关
使用MSAL.js进行azure活动目录的单点登录时,我们使用MSAL的loginredirect方法重定向用户,重定向到“null”URL。我不知道它为什么会发生,但它来自MSAL库。
我们使用idtoken(新的Msal.IdToken(localStorage [“msal.idtoken”]);)方法来解码令牌,当我们使用版本0.1.1时它工作正常,当升级版本0.1.3时返回错误“Msal.IdToken不是构造函数”。我无法理解如何调用该方法。
MSAL.js的另一个问题是,当我们提供登录凭据时,登录不会重定向到我的应用程序,我不明白为什么在输入正确的凭据后它在登录页面中循环。
当我们退出并再次尝试登录时,它会在登录页面上循环。
我们使用'if(errorDesc!= null&& errorDesc.indexOf(“AADB2C90118”)> -1)'因为我们也做了忘记密码功能。
在我们为重定向实现的代码下面
var clientApplication = new Msal.UserAgentApplication(applicationConfig.clientID, applicationConfig.authority, authCallback, { cacheLocation: 'localStorage' });
function authCallback(errorDesc, token, error, tokenType) {
if (errorDesc != null && errorDesc.indexOf("AADB2C90118") > -1) {
clientApplication.authority = applicationConfig.passwordAuthority;
}
login();
}
function login() {
clientApplication.loginRedirect(applicationConfig.b2cScopes);
}
请解决这个问题。
答案 0 :(得分:0)
MSAL.js已经处理了expiracy,而IDToken用作令牌缓存键。它不应该用于获取有关用户的信息(如果您想这样做,最好调用Microsoft Graph Me endpoint。 另请注意,IDToken没有签名,因此,如果在线上有什么东西泄露(你不能保证它的inf