1

我们的应用程序是用 angularjs 和 C# 开发的。我使用 ADAL.js 进行天蓝色广告登录。由于它正在弃用,我们正在迁移到 MSALjs 。我已删除 ADAL 的所有引用并将其替换为 MSALand MSAL 配置如下

authority: "https://login.microsoftonline.com/common",
                clientID: AppClientId,
                redirectUri: "http://localhost:8080/#/home",
                postLogoutRedirectUri: logoutredirecURL,
                navigateToLoginRequestUrl: true,
                optionalParams: {
                    protectedResourceMap: GetEndPoints()
                },
                tokenReceivedCallback: function (errorDesc, token, error, tokenType) {
                    console.log('token : ' + token);
                    localStorage.setItem('Authorization', 'Bearer ' + token);
                }

我能够重定向到天蓝色的登录 URL,并且在输入凭据后 isAuthorized 也是如此。在将请求发送到服务器时,以下代码

HttpActionContext.ControllerContext.RequestContext.Principal.IsAuthenticated

这 isAuthenticated 变得错误,在 ADAL 中它变得真实。我不知道我哪里错了。

未获取用户的 PrincipalClaims。

请帮助并提前致谢

4

1 回答 1

0

您可以在此处找到可以帮助您进行开发的 MSAL.js 的 Pkce 流程的实现。

于 2020-10-23T10:14:08.673 回答