【问题标题】:MSAL ANDROID : MultiAccountMode issue with LogoutMSAL ANDROID:注销的 MultiAccountMode 问题
【发布时间】:2022-12-11 05:32:47
【问题描述】:

我有一个使用 MSAL 库进行身份验证的 android 本机应用程序。登录后我们面临从应用程序注销的问题。注销时,它会显示一个屏幕,其中显示已登录的电子邮件,点击该屏幕可让用户无需密码即可登录应用程序。该应用程序配置为多帐户模式。下面是注销的代码。

 removeAccountButton.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                if (mMultipleAccountApp == null) {
                    return;
                }

                /**
                 * Removes the selected account and cached tokens from this app (or device, if the device is in shared mode).
                 */
                mMultipleAccountApp.removeAccount(accountList.get(accountListSpinner.getSelectedItemPosition()),
                        new IMultipleAccountPublicClientApplication.RemoveAccountCallback() {
                            @Override
                            public void onRemoved() {
                                Toast.makeText(getContext(), "Account removed.", Toast.LENGTH_SHORT)
                                        .show();

                                /* Reload account asynchronously to get the up-to-date list. */
                                loadAccounts();
                            }

                            @Override
                            public void onError(@NonNull MsalException exception) {
                                displayError(exception);
                            }
                        });
            }
        });

它总是显示吐司“帐户已删除”,但实际上不是。任何帮助表示赞赏!

【问题讨论】:

    标签: java android msal


    【解决方案1】:

    从发布的代码来看,您似乎正在使用类似于 this site 的方法和单独的 loadAccounts() 方法。 “步骤 5.2:加载帐户”

    但是,在 MS MSAL Single and Multi-Account 页面中,它指出:

    “如果您的应用程序配置为使用代理,并且设备上安装了代理,则当您调用 removeAccount 时,该帐户不会从代理中删除。只会删除与您的客户关联的令牌。”

    MS 特别推荐使用“呼叫getAccounts 以获取应用程序当前已知的帐户列表”。

    因此,当前设置可能在每个第一个链接中使用 loadAccounts(),但 MS 实际上建议使用 getAccounts,它专门针对内部 MSAL 令牌系统。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-15
      • 2022-01-24
      • 1970-01-01
      • 1970-01-01
      • 2016-05-20
      • 1970-01-01
      相关资源
      最近更新 更多