如何绕过标准 Mesibo 登录并改用 AWS Cognito

问题描述

我正在使用 Mesibo 信使/聊天应用程序。我有自己的使用 AWS Cognito 的自定义登录。 Mesibo 信使应用程序需要电话号码登录。我想完全绕过他们的身份验证并使用我自己的身份验证。我只需要知道如何关闭此身份验证(用户已经在我的应用程序中进行了身份验证)。我希望用户通过 Cognito 进行身份验证,他们单击按钮/onClick 侦听器并直接流向聊天应用程序,而无需第二次登录 Mesibo。我还有一个可以通过的 Cognito 联合令牌。谁有代码示例?

我的身份验证方法目前适用于我授予访问权限的活动:

              {                   
                        Amplify.Auth.fetchAuthSession(onSuccess -> {
                        AuthUser user = Amplify.Auth.getCurrentUser();
                        if (user != null) {
                            Log.i(TAG,"MainActivity,signed in,current user: " + user.getUsername());
                            goAuthenticatedActivity(null);
                        } else {
                            Log.i(TAG,user name is null");
                        }
                    },onError -> {
                        Log.i(TAG,error getting user session: " + onError.toString());
                    });
                }

public void goAuthenticatedActivity(View view) { Log.i(TAG,"in goAuthenticatedActivity()....去AuthenticatedUsersActivity..."); Intent intentAuthenticatedActivity = new Intent(this,MesiboChatActivity.class); 开始活动(intentAuthenticatedActivity); }

解决方法

这是来自 mesibo 文档 https://mesibo.com/documentation/tutorials/get-started/auth/

请注意,mesibo 不推荐或强制执行任何特定的 身份验证方法。您可以使用任何身份验证机制 适合您的应用程序,例如电子邮件、电话、用户 ID、LDAP、 RADIUS、OAuth2、Kerberos、SAML、指纹等您需要做的一切 是在您的用户通过您之后才生成 mesibo 访问令牌 身份验证。

Messenger 应用程序主要处理登录、联系人同步,然后启动 mesibo 消息传递或呼叫模块。如果您的用户已经通过身份验证,您真的不需要使用 messenger。相反,为每个用户生成 mesibo 访问令牌并直接启动相应的 UI 模块。

https://mesibo.com/documentation/tutorials/get-started/