问题标签 [passport-azure-ad]

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 投票
0 回答
184 浏览

node.js - 在 microsoft-graph-client 中使用时,来自 msal-angular 的 v2 令牌上的 x5t 令牌无效

我在 Node.js 中使用 microsoft-graph-client。我正在使用 msal-angular 获取我的令牌并将它们传递给我的节点后端。令牌是 2.0 版访问令牌,因此令牌标头中没有“x5t”键,尽管我读过“孩子”键具有相同的用途。

在节点中,我能够初始化图形客户端,但是一旦我调用图形的“/me”端点,我就会收到一条错误消息,上面写着“无效的 x5t 声明”。

我必须确保我获得了用于 passport-azure-ad 的 2.0 版令牌来验证它们。

图形根本不能使用 2.0 版访问令牌吗?

0 投票
0 回答
7 浏览

passport.js - 在 Ts.ED 中手动注册协议/服务

我们在 Ts.ED 项目中手动注册控制器和实体,由于我们的项目结构,无法使用 glob 模式自动扫描和注册它们。手动注册协议和/或服务而不是使用带有 glob 模式的 componentScan 的最佳方法是什么?

0 投票
0 回答
57 浏览

javascript - NODE JS / OIDC Passport-azure-ad openid,无法将“oid”登录与数据库中的用户匹配

我正在实现用于登录谷歌用户的代码,现在我正在尝试更改,以便它登录来自同一家公司的 MS 365 用户。我有一个存储用户的 psql 数据库。我曾经使用 google 凭据登录并将它们与具有相同 google_id 的用户 id 匹配。现在我将其更改为所有 MS 帐户都具有的 oid。我可以登录,但我似乎无法弄清楚它如何将凭据与用户“id”匹配。这是在数据库中找到用户的 api 请求

这就是数据库逻辑的方式:

我正在使用 OIDCStrategy

0 投票
0 回答
23 浏览

msal - Bearer 想要代币,但 OIDC 为你做这一切?

这个问题是关于 Node.js 的 Passport Azure 策略的。对于上下文,我试图将我们的旧 JavaScript/jQuery 应用程序指向一个基于 Node 构建的新 API 端点,并且我试图将身份验证与 Microsoft 结合起来。(我在 GitHub 上浏览了几个示例,包括使用不记名令牌的SPA <--> API 示例,以及使用 OIDC 策略的 API 示例)

这些说法正确吗?

  1. OIDC 策略适用于完全由节点(M、V 和 C)托管的应用程序。也就是说,Node App 呈现视图,获取用户身份验证,将会话信息存储在 cookie 中,在数据库中保留对该会话的引用,并保护 API 端点。 API 和视图是同一个实体。

  2. 另一方面,在 SPA <--> API 场景中:API 需要来自前端的不记名令牌。由 SPA 获取令牌(通过 msal.js)。API 不会将会话信息存储在数据库中,尽管 SPA 可能会将信息保存在浏览器的localStroage. SPA 和 API 是独立的实体。

0 投票
0 回答
34 浏览

javascript - passport-azure-ad AzureAD:承载策略,令牌验证

我已经实现了 SPA 和 express.js WEB Api 应用程序,SPA 使用 msal.js V2 进行身份验证并获取 access_token,包括角色:[] 和 spc:[] 包含正确的角色和范围。

WEB Api 使用接收到的 access_token 调用,它在 API 端使用使用 BearerStrategy 初始化的 passport-azure-ad 库进行解码。它从令牌中提取信息,但最终抛出错误:身份验证失败,原因是:在 Strategy.prototype.jwtVerify 中:令牌中的任何范围“Execute.Api”都不被接受,其中Execute.Api是我的自定义范围。

如果有人帮助我解决这个问题会很棒,因此项目处于关键阶段。

0 投票
1 回答
115 浏览

node.js - Passport-azure-ad Nodejs 访问令牌验证错误

我在我的 nodejs api 项目上使用 passport-azure-ad 来授权带有访问令牌的请求,在授权过程中我不断收到此错误:

AzureAD: Bearer Strategy","hostname":"","pid":20016,"level":30,"msg":"authentication failed due to: Error: unable to get local issuer certificate","time.

我不知道是什么原因造成的

0 投票
1 回答
68 浏览

node.js - NodeJS:如何使用“passport-azure-ad”将未经身份验证的用户重定向到 Microsoft 登录页面

在我的 node/express 应用程序中,我正在尝试使用passport-azure-adnpm 包对用户进行身份验证,有谁知道如何将用户重定向到微软登录屏幕?例如在如下路线的帮助下:

app.get('/login', function(req, res, next) { passport.authenticate('oauth-bearer',

谢谢

0 投票
1 回答
56 浏览

active-directory - 撤销对通过 MS Active Directory 身份验证接收的 access_token 的访问权限

我目前正在使用passport-azure-adnodejs@azure/msal-node 库来验证我的 API 的用户。当用户通过他/她的 microsoft 帐户成功进行身份验证时,我们会收到一个 access_token,用户可以使用该 access_token 调用我们的 API。现在,如果我们从 Azure 管理面板禁用用户帐户,则用户已经存在的 access_token 应该会失效,并且他/她应该无法使用该 access_token 调用我们的 API。

请问我们该怎么做?

0 投票
1 回答
75 浏览

azure-active-directory - 带有来宾用户的 Azure Active Directory PIM

我们有公司为我们的 azure 订阅提供托管支持吗?

  1. 我们是否也可以为他们启用 MFA,即为访客帐户启用 MFA?

  2. AzureAD PIM 是否适用于外部用户,即来宾帐户?

0 投票
0 回答
42 浏览

nestjs - 使用 Azure AD 保护 nestjs api

我有一个nestjs应用程序(我是nestjs的新手),我正在尝试使用护照(passport-azure-ad)来保护使用Azure AD的api:

这是我使用 Guards 的控制器:

我在 Azure AD 租户中注册了应用程序和所有内容。我使用范围公开了一个 api。然后我创建了另一个 Azure AD 应用程序(作为 api 的使用者)并授予对该 api 范围的访问权限。我使用邮递员来调用我的api。我设法使用 oAuth2.0 从邮递员进行身份验证并获取令牌,但是当我尝试使用该令牌调用我的 api 时,我会收到此错误:

身份验证失败,原因是:jwt 受众无效

我在这里做错了什么?(当我使用 .net 应用程序测试相同的 azure 广告配置时,它可以工作,所以 azure 广告应用程序注册似乎很好,而且我没有正确地在嵌套中进行身份验证)