会话未在基于IBM Worklight Adapter的身份验证中的注销结束

时间:2014-09-18 14:19:53

标签: ibm-mobilefirst session-timeout worklight-adapters worklight-server

我从IBM Worklight下载了基于适配器的身份验证项目,并且我发现当我单击“注销”按钮时它不会结束当前会话,而在超时时它会话正确结束。 (注意,它结束了会话,但没有清除UserID)我在worklight.properties中设置了serverSessionTimeout = 3。 下面的屏幕截图将显示发生的最新情况:

  1. 当我点击获取机密数据时,在设备选项卡下的IBM worklight控制台中,它显示DeviceID,设备模型,但不显示UserID
  2. Initial screen

    1. 现在,当我插入用户名和密码时,它会将我登录并且UserID更改为worklight,当我注销时,此处没有任何更改。在我的代码中,我添加了1个用户名worklight1,当我使用 worklight1 登录时,此屏幕仍然显示用户ID中的工作灯。用户ID仅在超时发生后更改,即在我的情况下3分钟后更改!
    2. Successful login using userID: worklight

      1. 超时后,如果我尝试使用任何用户登录,则userID将更改为该特定用户,并保持不变,直到会话超时。
      2. After Timeout, logging in with other userID

        任何人都可以建议如何结束会话,因为我在注销时尝试了以下代码但没有帮助 -

        WL.Server.setActiveUser("SingleStepAuthRealm", null);
        

        提前致谢!

1 个答案:

答案 0 :(得分:0)

我刚刚测试了适配器身份验证的Worklight示例,它正在按预期工作。在注销时,它正在注销用户。 (http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v620/AdapterBasedAuthenticationHybridProject.zip

你没有在退出功能上传递错误的Realm吗?

查看单步应用程序注销的示例代码: WL.Client.logout('SingleStepAuthRealm',{onSuccess:WL.Client.reloadApp})

此代码会将您从SingleStepAuthRealm注销,而不是DoubleStepAuthRealm。