如何在iOS ADAL库中清除缓存

问题描述:

我在iOS应用程序中集成了ADAL库以使用WAAD帐户进行身份验证。接收到accessToken后,(ADAL)登录屏幕自动消失。现在,如果我尝试调用相同的登录代码以不同的用户登录,那么它不会显示任何新的登录屏幕,并且它会自动与前一个用户登录并给我新的accessToken。如何清除以前登录的用户的缓存。我使用下面的代码来清除缓存但不使用它。如何在iOS ADAL库中清除缓存

[authContext.tokenCacheStore removeAll]; // This method is no more available. Getting error for removeAll method. 
    [authContext.tokenCacheStore removeAllWithError:&error]; // It does not clear cache. 

有什么方法可以清除缓存或显示登录屏幕?请帮帮我。提前致谢。

+0

实际上同样的问题。你有答案吗? – human4

+1

是的,我设置promptBehavior与方法AD_PROMPT_REFRESH_SESSION [authContext acquireTokenWithResource:RESOURCEID 的clientId:客户端ID redirectUri:redirectUri promptBehavior:AD_PROMPT_REFRESH_SESSION 用户id:无 extraQueryParameters:无 completionBlock:^(ADAuthenticationResult *结果){}]; –

+0

谢谢@GaneshGuturi – Himanth

缓存清除意味着从钥匙串中删除令牌。它对webview中的cookie没有影响。您应该使用peomptbehavior.always标志来确保在登录时提示用户输入密码。

+0

谢谢你Kanishk。我将promptBehavior设置为AD_PROMPT_REFRESH_SESSION,它确实对我有用。 –