我们可以在 MFP 上注销后使旧的访问令牌失效吗?
Posted
技术标签:
【中文标题】我们可以在 MFP 上注销后使旧的访问令牌失效吗?【英文标题】:Can we invalidate the old access token after logout on MFP? 【发布时间】:2018-11-15 08:54:53 【问题描述】:我目前使用的是 IBM Mobilefirst 平台 8.0。 目前,我面临一个问题:
在我的 MFP 上,我有 1 个安全检查来保护 1 个适配器。 流程是这样的:
-
通过安全检查登录
可以获得访问令牌(我称之为TOKEN_1)
可以向适配器请求资源
注销
这一步,我使用TOKEN_1向适配器请求资源,返回401未授权(这里正确)
再次使用安全检查登录
现在可以获取新的访问令牌(我称之为TOKEN_2)
此时,我可以同时使用 TOKEN_1 和 TOKEN_2 向适配器请求资源,我认为这不是一件好事(仅针对我的情况和我的观点)
我认为 TOKEN_1 应该不再有效,而只有 TOKEN_2。
那么,我的问题是,在我们使用 MFP 注销后,有什么方法可以使访问令牌永久失效?
非常感谢您。
【问题讨论】:
注销会在本地清除令牌。您使用什么 API 来注销?另外,这是特定于 android 还是 ios 的?科尔多瓦还是本地人? 我们正在使用 WL.logout() 函数,在后台,它调用 MFP 上的“/preauth/v1/logout”端点 WLAuthorizationManager.logout(securitycheck) ?这将清除 SDK 中的令牌。您使用的是什么版本的 SDK,是原生的还是 Cordova?安卓/iOS? 我们正在使用 Cordova。但是我们可以在 WL 向 MFP 上的适配器发出请求时捕获 OLD 和 NEW 访问令牌,我提到的一点是,目前我们可以同时使用 OLD 和 NEW 访问令牌来调用适配器。 【参考方案1】:您可以使用 API clearAccessToken 手动清除移动设备中的访问令牌。
您可以在注销调用之前或之后调用它。这是为了确保清除内存中保存的所有令牌相关数据。这不会清除您在代码中记录并存储的任何令牌数据。
一旦您使用 WLAuthorizationManager.logout(securitycheck) 注销,下次您请求受保护的资源时,MFP 客户端 SDK 始终会获取新令牌。
【讨论】:
嗨 Vivin K,谢谢您的回复。我知道那个 API。但我想知道访问令牌。在我们注销并再次登录后,旧的访问令牌应该不再有效,对吧?这是重点。 WLAuthorizationManager.logout(securitycheck) ?这将清除 SDK 中的令牌。您使用的是什么版本的 SDK,是原生的还是 Cordova?安卓/iOS? 我们正在使用 Cordova。但是我们可以在 WL 向 MFP 上的适配器发出请求时捕获 OLD 和 NEW 访问令牌,我提到的一点是,目前我们可以同时使用 OLD 和 NEW 访问令牌来调用适配器。 会检查这个。以上是关于我们可以在 MFP 上注销后使旧的访问令牌失效吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何使旧的 Eclipse 项目在带有 Gradle 的 Android Studio 上运行? [关闭]