Microsoft graph api 具有隐式授权流的Azure B2C身份验证

Microsoft graph api 具有隐式授权流的Azure B2C身份验证,microsoft-graph-api,azure-ad-b2c,msal,Microsoft Graph Api,Azure Ad B2c,Msal,我正在使用一个有一些用户的Azure B2C租户。我创建了一个应用程序,并在身份验证中选择了web。我取消选择了隐式授权流,因为我收到警告此应用已启用隐式授权设置。如果您在带有MSAL.js 2.0的SPA中使用这些URI中的任何一个,您应该迁移URI。I仅选择Local,而不选择其他提供商。我也有一个在用户流唱。我甚至无法从我的C#ASP.NET应用程序中看到具有这些设置的登录页面。所以我选择了隐式流。这解决了问题,我可以看到登录页面,可以登录 我的问题是为什么我需要am隐式流来进行web身份

我正在使用一个有一些用户的Azure B2C租户。我创建了一个应用程序,并在身份验证中选择了web。我取消选择了隐式授权流,因为我收到警告
此应用已启用隐式授权设置。如果您在带有MSAL.js 2.0的SPA中使用这些URI中的任何一个,您应该迁移URI。
I仅选择Local,而不选择其他提供商。我也有一个在用户流唱。我甚至无法从我的C#ASP.NET应用程序中看到具有这些设置的登录页面。所以我选择了隐式流。这解决了问题,我可以看到登录页面,可以登录

我的问题是为什么我需要am隐式流来进行web身份验证


除非您使用的是旧版本的MSAL,即MSAL1.XXX版本,否则不需要隐式流

MSAL.js的最新版本,即MSAL 2.XXX版本仅适用于 授权代码流使用PKCE,而不是隐式流。所以 您需要实现PKCE流,而不是隐式的Grand


如果您使用的是最新版本的MSAL,请不要使用将启用隐式流的
Access_token
id_token
设置。

除非您使用的是旧版本的MSAL,即MSAL1.XXX版本,否则您不需要隐式流

MSAL.js的最新版本,即MSAL 2.XXX版本仅适用于 授权代码流使用PKCE,而不是隐式流。所以 您需要实现PKCE流,而不是隐式的Grand

如果您使用的是最新版本的MSAL,请不要使用将启用隐式流的
Access\u token
id\u token
设置。

如果您使用的是或某个Microsoft Identity Web project模板,则它会在授权请求中传递
response\u type=code id\u token
,这表示

这就是为什么您必须为应用程序注册选择“ID令牌”设置的原因。

如果您正在使用或其中一个Microsoft Identity Web project模板,则它会在授权请求中传递
response\u type=code ID\u令牌
,表示


这就是为什么您必须为应用程序注册选择“ID令牌”设置。

我没有使用MSAL.js。我的是一个C#应用程序。您好@wonderfulworld,如果您不使用MSAL和直接http请求,则可以实现隐式流,但您只需要选择那些应用程序将使用MSAL.js 2.x的重定向URI,然后选择配置。请参考您的答案,Chris Padgett的答案让我感到困惑。有关该主题的MS文档通常会让我感到困惑。你是朋友,我不使用MSAL.js。我的是一个C#应用程序。您好@wonderfulworld,如果您不使用MSAL和直接http请求,则可以实现隐式流,但您只需要选择那些应用程序将使用MSAL.js 2.x的重定向URI,然后选择配置。请参考您的答案,Chris Padgett的答案让我感到困惑。有关该主题的MS文档通常会让我感到困惑。你是朋友中的一员。