MSAL get_accounts() 方法正确返回帐户 ID,但只有“用户名”具有空值

问题描述 投票:0回答:1

我在 AADB2C 中使用默认用户流程并添加 taro 作为用户。 当我在 MSAL for python 中使用 get_accounts() 方法时,只有用户名是空的,如下所示。

  • home_account_id: xxxx-xxxx-xxxx(taro注册的值)
  • 环境:xxxxxx.b2clogin.com
  • 用户名:“”
  • 权限类型:MSSTS
  • local_account_id: xxxx-xxxx-xxxx(taro注册的值)
  • 领域:xxxxxx.onmicrosoft.com

get_accounts() 返回的每个值中的用户名的哪一部分是指我在 AADB2C 中设置的用户名?

python azure-active-directory msal aad-b2c
1个回答
0
投票

我能找到解释的页面。

“MSAL Python 令牌缓存使用模式从通过 get_accounts(...) 查询所有现有帐户开始,它支持将用户名参数作为过滤器。该用户名数据由 ID 令牌内的 preferred_username 声明填充。

默认情况下,许多 Azure AD B2C 场景中都缺少该声明。”

就使用AADB2C而言,我发现我们应该考虑引用用户名以外的方法。

https://github.com/AzureAD/microsoft-authentication-library-for-python/wiki/Developing-an-AAD-B2C-app-with-MSAL-Python#caching-with-b2c-in-msal-蟒蛇

© www.soinside.com 2019 - 2024. All rights reserved.