我们开发了一个应用程序,我们需要允许用户注销,并使用其他用户登录。一旦用户登录(我们从bluemix获取令牌)并且令牌处理正在运行,该应用程序正常工作。当我们尝试实现注销功能时会出现问题。根据我们尝试使用的文档:
AuthorizationManager.getInstance().clearAuthorizationData();
根据文档,这应该删除与授权有关的所有内容。它没有做我们期望它做的事情。当我们尝试再次登录时,它只是刷新最新的令牌,而不是尝试获取新的令牌。再次登录的唯一方法是从应用程序中删除所有数据。这种方法对我们来说不是很好,因为我们有一个广泛的缓存,我们希望不必删除。
这是来自bluemix的错误还是我们遗漏了某些内容(其他方式删除令牌并强制它获取新令牌)。
答案 0 :(得分:0)
目前不支持退出MCA服务。通过身份验证过程,生成authorizationHeader,然后在出站请求中使用。如果您尝试访问受保护资源但没有有效的authorizationHeader,则将再次开始身份验证过程。
如上所述,除非此authorizatiohHeader过期或您将其从设备中删除(不是推荐的做法),否则无法重新进行身份验证。函数clearAuthorizationData没有按照您的预期完成删除此authorizationHeader。我将与文档团队合作,以确保它是明确的。我建议使用MCA保护任何有价值的资源/和/或端点,以确保适当的安全性。