问题标签 [msal]

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.

0 投票
1 回答
293 浏览

c# - MSAL 浏览器对话框关闭

当我使用右上方关闭按钮(红色 x)从msalAcquireTokenAsync(scope)关闭登录对话框时遇到问题,我从.

问题是,我得到了一个有效的结果AcquireToken,结果与我之前从登录中得到的结果相同。

详细信息:我使用活动目录b2c中的帐户登录。作品。然后注销,清除 cookie 和令牌缓存也从PublicClientApplication.Users. 再次登录,按预期AcquireTokenSilent抛出一个,打开-Dialog,我现在可以选择我之前登录的帐户,(但我清除了所有,奇怪),然后我删除帐户(三个点,在登录对话框的右上角)然后说取消,我得到 null 结果,但是当关闭登录对话框时,我得到与正常登录时相同的结果。MsalUiRequiredExceptionAcquireTokenSignIn

这是正常行为吗,因为上次登录的帐户已保存在某个地方,我必须删除它们,或者想念我别的东西?

我在桌面 WPF 应用程序中使用 MSAL 1.1.0 预览版。也有自己的 TokenCache,但这些会删除每个注销保存的信息。

谢谢 dstreissi

0 投票
1 回答
1068 浏览

javascript - 如何将 MSAL(Microsoft Authentication Library for js)正确导入并使用到 javascript(非打字稿)反应单页应用程序中?

我试图将 Msal 导入 reactjs 应用程序。由于应用程序是由 create-react-app 创建的,因此我们在项目本身中没有 webpack 加载器。我无法获得对 Msal 的参考。试过:

总是有一个空的 Msal 没有用于创建连接器的构造函数。

0 投票
1 回答
332 浏览

ios - 在哪里管理通过应用程序注册门户注册的应用程序的仅限管理员的 MS Graph 权限

我在https://apps.dev.microsoft.com的应用程序注册门户中创建了本机应用程序

我已经配置了一个基于 iOS 的 MSAL 框架的 Xcode 项目,并且能够在仅需要用户同意时使用来自 MS Graph 的数据(如 User.ReadBasic.All)

但是,如果我想访问 User.Read.All 范围,它就不起作用。我遇到了管理员授予访问权限的要求(如预期的那样),但我的管理员无法找到授予必要权限的位置。

在 webview 的“授予访问权限”屏幕(请参见下面的屏幕截图)中提示输入管理员凭据时使用管理员凭据登录不起作用(再次重定向回同一屏幕,似乎不接受管理员凭据作为管理员凭据)。

在此处输入图像描述

我们不确定这是否是授予应用程序权限的方式,因为文档没有明确说明管理员如何授予必要的权限。

我们在 Azure AD 中找不到可以授予管理员权限的位置。

有很多关于如何使用 MSAL 框架的文档,但似乎缺少这一步。

0 投票
1 回答
130 浏览

redirect - 仅使用 Xamarin 表单在 Android 上使用 JIT 迁移登录 MSAL 失败

我在 Visual Studio 2015 中使用 Xamarin Forms 和新的 MSAL 预览 v.1.1.0。该应用程序调用 PublicClientApplication.AcquireTokenAsync,它会在移动设备上的 Chrome 中提取登录表单。

这使我的问题类似于这个问题:New preview for MSAL login redirect for Xamarin droid failed

有两个区别。首先,我间歇性地收到一个不同的错误。查看突出显示的区别:“无法访问此站点。位于 msal[my app id]://auth/? state=... 的网页”

其次,我的登录调用了 WebApi,它将用户从 SQL 数据库迁移到 Azure B2C Active Directory。我在这部分遵循以下示例:https ://github.com/Azure-Samples/active-directory-b2c-advanced-policies/tree/master/Migration-JIT-sample 。

我注意到这通常发生在用户从我的数据库迁移到 Azure B2C 时。在这种情况下,登录会被调用两次。一次迁移用户,然后另一次登录用户。当用户未迁移时,错误似乎也间歇性发生,通常是如果我有几个小时没有尝试登录,这可能是不同的漏洞。否则,登录工作正常。此外,iOS 上不会发生此错误。这是一个仅限 Android 的错误。

我认为 Android 上的意图侦听器无法正常工作。当我收到“无法访问此站点...”错误时,如果我从我的 Android 应用程序在 Chrome 中打开该站点,我将被重定向到我的应用程序并登录。这让我认为链接是正确,但监听器不工作。

我猜这可能是下面代码行中的一个错误,它位于 MainActivity 的 OnActivityResult 方法中。AuthenticationContinuationHelper.SetAuthenticationContinuationEventArgs(requestCode, resultCode, data);

0 投票
1 回答
309 浏览

javascript - 使用 SPA 对 Microsoft Graph 进行身份验证,然后在 Web API 中使用令牌

我有一个 SPA,它使用msal.js针对在Application Registration Portal 注册的应用程序对用户进行身份验证。它成功地检索了一个令牌,到目前为止一切都很好。

然后我有一个 ASP.NET Web API 设置,它应该使用来自 SPA 的令牌代表用户向 Microsoft Graph 发出请求,这就是我遇到麻烦的地方。

到目前为止,我已经在 API 上设置了一个 OWIN 中间件,它应该在向图形发出请求之前验证令牌,但无论我尝试什么,它总是无效的。我试过了UseOpenIdConnectAuthenticationUseOAuthBearerAuthenticationUseJwtBearerAuthentication仍然没有成功。SPA 和 API 使用相同的客户端 ID,并且颁发者设置为https://login.microsoftonline.com/common/v2.0.

我已经阅读了很多来自 MS 的 SO 问题和示例,但似乎没有任何东西可以解决这个特定的设置。根据这个我至少认为这是可能的?

这是我正在使用的 nuget 包:

我是否使用了正确的软件包,甚至可以这样设置吗?会喜欢一些关于我做错了什么的指示。

提前致谢!

0 投票
1 回答
5146 浏览

microsoft-graph-api - ADAL.js 和 MSAL.js 有什么区别?

我正在尝试为使用 Microsoft Graph 的应用程序处理身份验证。

这两个库有什么区别?

ADAL.js 只是 MSAL.js 的 Angular 1 库吗?

0 投票
1 回答
539 浏览

azure-ad-b2c - 将 MSAL 与 Azure AD B2C 一起使用以通过 Google 登录

我正在使用 MSAL 连接到 Azure AD B2C。

我正在尝试使用来自 GitHub 的以下示例,将权限、b2c 范围和 client_id 更改为我的:

https://github.com/Azure-Samples/active-directory-b2c-javascript-msal-singlepageapp

当我尝试打开登录弹出窗口时,出现以下错误:

您无权查看此目录或页面。

我怎么知道哪些参数是错误的,我怎么知道如何修复它?

0 投票
3 回答
534 浏览

azure - Azure AD B2C 应用程序 - 如何调用 Graph API?

我已经按照这个示例设置了带有 MSAL 的 Azure AD B2C 。用户可以用Facebook登录,我得到一个用户对象,一切都好。现在我想检索属性,例如 Country、City 等。这些是在 Azure AD B2C 属性中定义的。

我需要 Graph API 吗?我试过调用 graph.microsoft.com,但我得到了令牌错误。我已阅读需要创建应用程序注册的文章,但是当我使用该应用程序 ID 而不是在 Azure AD B2C 中创建的应用程序 ID 时,它会引发错误,我需要使用在 B2C 门户下创建的应用程序 ID。

在 B2C 的应用程序中,我无法配置我想要访问 Graph API。

我们确实有一个 C# API,我可能可以在其中实现这个逻辑。这是要走的路吗?理想情况下,我想直接从客户那里完成。

这是如何一起工作的,这一切都非常令人困惑。我已经阅读了大多数类似的问题,但找不到相同的问题。

0 投票
1 回答
206 浏览

msal - 使用 MSAL 通过隐式授权访问 Azure AC

如何使用 MSAL 通过隐式授权使用 Azure AD 访问 Microsoft Graph?

我已经oauth2AllowImplicitFlow启用了 Azure 注册应用程序,我正在尝试调用userAgentApplication.acquireTokenSilent,但我不断收到错误消息“需要用户登录”。

我是从 Sharepoint 在线应用程序调用它,所以我已经登录到 365 服务。

这种情况有没有样本?

0 投票
1 回答
1793 浏览

swift - AzureAD b2c MSAL - 令牌响应缺少访问令牌

我在尝试使用 Azure 的活动目录 b2c 快速对用户进行身份验证时遇到问题。看来我可以在 webview 中成功登录AD 能够找到我的用户并在密码错误时返回错误,但在我“登录”后我被重定向到我的应用程序并出现以下错误:

无法获取令牌:错误域=MSALErrorDomainCode=-41205"null" Userinfo={MSALErrorDescriptionKey=令牌响应缺少访问令牌}

我怀疑我如何在前端列出范围的后端范围配置有问题。据我所知,我们在后端没有自定义范围配置。我为 kScopes 变量尝试了一些不同的字符串: