gpt4 book ai didi

azure - MSAL idToken 没有 upn、个人资料或电子邮件数据?需要在 idToken 中进行 Passport-azure-ad 授权

转载 作者:行者123 更新时间:2023-12-02 07:25:07 25 4
gpt4 key购买 nike

我有一个使用官方 msal 包的 angular8 应用程序 (not the one for angular, the main one)在后端我授权使用 passport-azure-ad (official microsoft package)

我需要在 IdToken 中包含用户的电子邮件地址,因为我无法使用访问 token 的承载策略进行验证。我需要某种方式通过 UPN 或直接获取该电子邮件地址。

我已经在不同的 AD 组下尝试了 4 个不同的帐户,到目前为止,只有 1 个 AD 组实际上在 idToken 中显示了“电子邮件”或“upn”字段。

Permissions configured in the app screenshot.

登录请求的选项:

  private loginRequest: Msal.AuthenticationParameters = {
scopes: ['user.read', 'email', 'profile', 'openid'],
extraScopesToConsent: ['email']
};

我已经尝试了我能想到的任何变体,我尝试让它们以大写字母(Email、User.Read)开头,就像屏幕截图中那样,我尝试过在范围和 extraScopesToConsent 之间交换它们,我尝试过将 ' upn' 任何地方但没有运气。

是否可以:

A:以某种方式在 token 中获取该数据B:获取另一个 token ,我可以使用具有该数据的后端将其验证为“不记名 token ”?

最佳答案

我最终从前端发送了请求正文中的电子邮件,然后更新了我的护照策略以使用请求对象。

关于azure - MSAL idToken 没有 upn、个人资料或电子邮件数据?需要在 idToken 中进行 Passport-azure-ad 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56462180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com