问题标签 [msal.js]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure-ad-b2c - 如何从新的 Msal.UserAgentApplication(applicationConfig.clientID) 获取值?
这是我第一次使用 MSAL.js。
在 Azure AD B2C 中,我试图从输入到弹出登录屏幕的用户 ID 中获取值,该用户 ID 由从 html 文件调用的登录策略生成。
var clientApplication = new Msal.UserAgentApplication(applicationConfig.clientID, applicationConfig.authority, function (errorDesc, token, error, tokenType) { // 在 loginRedirect 或 acquireTokenPopup 之后调用 });
用户正在输入 userid@domain.com 我需要检索此值以便解析出域名。
如何提取用户标识?
msal.js - 如何在不要求访问资源的情况下仅登录用户?
我正在尝试使用 MSAL.js 库登录 Azure AD 和 Microsoft 帐户用户。现在,我使用acquireTokenPopup()
它要求我传递 API 的范围。我想只登录用户而不获取访问令牌。
有谁知道我该怎么做?
msal - 什么重定向与 MSAL 一起用于 Chrome 扩展?
我正在编写一个 Chrome 扩展,它需要访问需要 AAD 访问令牌的 ASP.NET Core Web API。我正在尝试使用msal NPM 包提供身份验证流程,以便用户可以使用他们现有的 AAD 帐户登录我的扩展程序,从而为我的扩展程序提供所需的访问令牌。
到目前为止,我得到了一个让用户登录的弹出窗口,但在我的扩展程序获取令牌之前,弹出窗口显示此错误:
ERR_UNSAFE_REDIRECT
我猜这是因为 https 页面正在尝试使用chrome-extension://
方案重定向回 URL。但是我该怎么做呢?这是我现在的代码:
azure - 使用 MSAL.js 的多个域的 SSO 问题
我想使用 MSAL 和 Azure B2C 对多个域(即 www.a.com 和 www.b.com)进行单点登录。我使用本地存储作为缓存位置,但单点登录在多个域中不起作用。
javascript - 在使用 B2C 的 Javascript/Angular 6 SPA 应用程序中通过 MSAL.JS 注销时出错
我有一个使用 MSAL.JS 对 Azure AD B2C 进行身份验证的 Javascript SPA 应用程序和另一个使用 MSAL for Angular 对 Azure AD B2C 进行身份验证的 Angular 6 SPA 应用程序。
在这两个应用程序中,注销都会引发以下错误。
相关 ID:6de6e068-7b07-4d24-bac4-c1af3131815b 时间戳:2018-09-25 16:16:20Z AADB2C90272:请求中未指定 id_token_hint 参数。请提供令牌并重试。
对于 Logout,MSAL 有非常简单的 logout api,它不带任何参数,那么我如何提供 id_token_hint?我错过了什么吗?在 Angular 应用程序中注入 MsalModule 时是否需要提供任何配置参数。或在 Msal.UserAgentApplication 的 Javascript 应用程序中的任何类似内容。
angular - 使用 msal 访问 sharepoint REST api 会抛出 401
如果我去https://developer.microsoft.com/en-us/graph/graph-explorer#并使用如下 URL:
现在,如果我使用来自 github https://github.com/AzureAD/microsoft-authentication-library-for-js的 Angular 应用程序
和像这样的代码
它抛出:
将主机更改为(在图形 api 资源管理器中工作)
投掷
不知道我做错了什么
azure-ad-b2c - MSAL acquireTokenSilent 后跟 acquireTokenPopup 在弹出窗口中导致错误请求
我们正在使用 MSAL.js 对 Azure AD B2C 实例的用户进行身份验证。用户可以使用本地帐户或使用来自另一个 Azure Active Directory 实例的凭据登录。
登录后,我们的 SPA 使用 acquireTokenSilent 获取访问令牌,并回退到 acquireTokenPopup。
我们注意到的是,当acquireTokenSilent 超时时,仍可能在后台检索token,并用token 更新应用程序本地存储。但是,在应用程序中,我们继续调用了 acquireTokenPopup。用户在acquireTokenPopup 中输入他们的凭据后,弹出窗口会显示“Bad Request”。用户可以关闭弹出窗口,如果他们刷新应用程序,他们现在将登录。
对于我们的用户来说,这种体验并不是很好的体验。
只是想知道这是一个已知问题还是预期行为?
这是我们代码的相关摘录。我们将 UserAgentApplication 包装在 MsalAuthenticationManager 对象中。
angular6 - 修复 Internet Explorer 11 + Angular 6+ 项目中的语法错误
我"@azure/msal-angular": "^0.1.2"
在两个项目中都使用 msal.js Angular 6
,但Angular 7
出现以下错误:
第 64379 行的 .js 代码
我添加了rxjs-compat
npm 模块来支持 Angular 6+。
为 IE 11 尝试了以下修复:
uncommented polyfills.ts
azure-active-directory - 访问令牌不包括使用 MSAL 访问 API
我在反应应用程序中使用MSAL for JavaScript对 Azure AD 进行身份验证。我能够成功验证用户并获取 id 令牌和访问令牌。但检索到的访问令牌无法访问受 Azure AD 保护的 API。
一切都在 Azure AD 端进行配置,因为我可以使用检索到的访问令牌通过 dotnet 核心 Web 应用程序与 API 对话。
dotnet core app 和 react app 的区别在于“resource”属性。我不确定如何将其包含在 MSAL 的请求中。
我的反应代码:
对于 dotnet 核心应用程序,我使用与 Azure AD 应用程序中配置的两个 URL 相同的配置,并添加一个。
我没有使用 MSAL 发送此资源参数。不确定如何发送以及是否是问题所在。
任何帮助表示赞赏。
node.js - 如何从缓存位置检索 msal 对象:本地存储?
首先,当谈到 Nodejs/msal/azure b2c 时,我低于新手级别,我正在尝试理解流程。我从这里的示例开始:https : //azure.microsoft.com/en-us/resources/samples/active-directory-b2c-javascript-msal-singlepageapp/ 我正在使用 msal.js 和 azure ad b2c Node.js 应用程序。通过登录策略登录后,我将用户重定向到我有其他策略的不同页面。
//index.html
这是我在 index.html 中的 onclick 登录功能。'test(accessToken)' 方法重定向到后端节点 js 路由,我将 accesstoken 存储在会话变量中,并且该方法呈现到存储我的其他 b2c 策略的不同页面(test.ejs)。
现在我的问题是如何在我的另一个视图(test.ejs)中检索 clientApplication Msal.UserAgentApplication 对象的当前状态以执行以下操作: