【问题标题】:OKTA SSO Logout issueOKTA SSO 注销问题
【发布时间】:2019-12-15 10:41:37
【问题描述】:

我正在使用 okta-sdk-appauth-android 库在移动原生 android 应用中进行身份验证。

登录有效,但我在注销和下一个登录周期时遇到问题。当我使用库中的注销方法时,在下一个登录周期webview 显示登录屏幕,但它立即登录用户而没有手动提供登录名和密码的选项。 这是正常行为吗?使用这种登录方式,我无法在注销后立即登录另一个用户。只有有时有提供登录名和密码的选项……这取决于什么?我可以在每次注销后强制提供登录名和密码吗? 即使在我的访问和刷新令牌过期后,它也会自动登录用户。我正在使用本机应用配置 + PKCE

【问题讨论】:

    标签: android authentication okta pkce


    【解决方案1】:

    我解决了这个问题如下:

    • 按下注销按钮后立即调用 webAuthClient.signOutOfOkta(Activity)。
    • ResultCallback中会返回结果,看是否登录。
    • 调用 webAuthClient.sessionClient.clear()

    像这样:

    webAuthClient.registerCallback(object : ResultCallback<AuthorizationStatus, AuthorizationException> {
                override fun onCancel() {
                    network_progress.hide()
                    showMessage(getString(R.string.operation_cancelled))
                }
    
                override fun onError(msg: String?, exception: AuthorizationException?) {
                    signInError(msg, exception)
                }
    
                override fun onSuccess(result: AuthorizationStatus) {
                    network_progress.hide()
                    when (result) {
                        AUTHORIZED -> signInSuccess()
                        SIGNED_OUT -> webAuthClient.sessionClient.clear()
                    }
                }
            }, this)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多