1

我们开发了一个应用程序,我们需要在其中允许用户注销并使用其他用户登录。一旦用户登录(我们从 bluemix 获取令牌)并且令牌处理工作正常,该应用程序就可以正常工作。当我们尝试实现注销功能时,问题就出现了。根据我们尝试使用的文档:

AuthorizationManager.getInstance().clearAuthorizationData();

根据文档,这应该删除与授权有关的所有内容。它没有做我们期望它做的事情。当我们再次尝试登录时,它只会刷新最新的令牌,而不是尝试获取新令牌。再次登录的唯一方法是从应用程序中删除所有数据。这种方法对我们来说不是很好,因为我们有一个我们希望不必删除的大量缓存。

这是来自 bluemix 的错误还是我们遗漏了某些东西(删除令牌并强制它获取新令牌的其他方法)。

4

1 回答 1

0

当前不支持注销 MCA 服务。通过身份验证过程,将生成一个 authorizationHeader,然后用于出站请求。如果您尝试访问受保护的资源并且没有有效的授权标头,则身份验证过程将再次开始。

如上所述,除非此 authorizatiohHeader 过期或您将其从设备中删除(不推荐做法),否则不可能要求重新身份验证。函数 clearAuthorizationData 并没有像您预期的那样完成删除此 authorizationHeader。我将与文档团队合作以确保其清晰。我建议使用 MCA 保护任何有价值的资源/和/或端点,以确保适当的安全性。

于 2016-02-01T19:26:08.550 回答