即使有多个帐户可用,Microsoft oauth 帐户选择也默认为上次使用的帐户

Man*_*noj 6 oauth azure oauth-2.0 azure-active-directory

我正在使用 Microsoft OAuth2 获取我的应用程序的访问令牌。正常的 Oauth 流程工作正常,但如果我有多个帐户,它总是默认为最后使用的帐户,而不让我选择一个帐户,即使它在列表中可用。

我能想到的唯一选择是使用,prompt=login但这太侵入性了,尤其是对于每次登录。

我的 oauth 网址

授权请求https://login.microsoftonline.com/common/oauth2/authorize?client_id=<myAppId>&response_type=code&redirect_uri=<myUrl>&scope=User.Read&state=1111

令牌请求https://login.microsoftonline.com/common/oauth2/token?client_id=<myAppId>&client_secret=<myAppSecret>&redirect_uri=<myUrl>&code=<codeFromPreviousCall>&grant_type=authorization_code

是否可以设置一个参数来让用户选择帐户?

请看下面的 gif,注意我没有点击第二页中的任何帐户Microsoft 帐户选择

Ton*_* Ju 11

您可以使用prompt=select_account

select_account:提示用户选择帐户,中断单点登录。用户可以选择现有的登录帐户,输入记住的帐户的凭据,或者选择完全使用不同的帐户。