注销时绕过帐户选择屏幕@azure/msal-Angular V2

pre*_*mar 4 azure-active-directory angular msal-angular msal-react

我正在使用@azure/msal-Angular版本 2 和Angular版本 13。这种情况是,当用户登录应用程序时,如果用户没有访问权限,则需要对用户进行授权,需要从应用程序中注销用户。这将通过调用 msalService.logoutRedirect() 在后台发生。调用注销功能时,将显示 Microsoft 帐户选择屏幕以注销而不是自动注销。有没有办法跳过帐户选择屏幕以退出。

Ε Г*_*И О 6

为此,首先您必须login_hint在 ID 令牌中设置可选声明。这需要在应用程序注册方面完成。(Azure 门户 -> 应用程序注册 -> 令牌配置 -> 添加可选声明 -> ID -> login_hint)

一旦该声明到位,MSAL 会将其传递到logoutRedirect()并跳过帐户选择器提示。

const account = this.msalService.instance.getActiveAccount();
this.msalService.logoutRedirect({ account: account });
Run Code Online (Sandbox Code Playgroud)

参考: https: //github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/logout.md#promptless-logout