Ibm mobilefirst MobileFirst OAuth和注销
我有一个可以访问两个适配器的测试应用程序:Ibm mobilefirst MobileFirst OAuth和注销,ibm-mobilefirst,Ibm Mobilefirst,我有一个可以访问两个适配器的测试应用程序: 受引用域的SecurityTest保护的JavaScript适配器 一个Java适配器,其方法受对应于同一领域的OAuth范围保护 如果我遵循此顺序,一切都会按预期进行: 尝试访问JS适配器时,我会受到质疑,进行身份验证,获取数据 WL.Client.isUserAuthenticated()和WL.Client.getUserInfo()现在的行为符合预期 使用WL.Client.Logout()注销 WL.Client.isUserAuthenti
localStorage.removeItem("com.worklight.oauth.idtoken")
问题是:
WL.Client.logout()方法是否应该破坏OAuth会话?如果不是,我应该使用什么API?对于OAuth,注销“工作”的方式不同。请参阅以下用户文档主题(搜索“注销”): 登录/注销API:
WLClient登录/注销API使用户能够 通过更新服务器端,登录和注销特定领域 安全状态。但是,在新的基于OAuth的安全模型中, 安全凭据也保存在客户端的访问令牌中 一边结果是,使用此API将导致不一致的 例如,客户端从服务器上的某个域注销的状态 服务器端,但仍保留服务器上该领域的有效令牌 客户端。为了解决这种不一致性,建议 使用重新获取访问令牌 成功登录后获取AuthorizationHeaderForScope方法,或 注销
例如,考虑通过安全检查的客户端 Realm1和Realm2,然后调用logout(Realm2)。在这种情况下 客户端上的访问令牌仍将包含安全性 Realm1和Realm2的凭据,客户端可以使用 访问受保护资源的令牌。刷新令牌,即 仅获取Realm1的令牌,客户端调用 获取没有注销域Realm2的AuthorizationHeaderScope
在JavaScript中,等效调用为: WLAuthorizationManager.obtainAuthorizationHeader("SomeRealm")
并且有计划改进OAuth的注销体验。