我使用SFAuthenticationSession与SSO到login.microsoftonline.com登录。它完全可以工作,但注销有一个问题。SFAuthenticationSession没有提供一种清除cookie的方法。因此,当我再次调用SFAuthenticationSession.start()时,我会得到带有身份验证令牌的以前回调url,而不是允许用户提供新的凭据。
作为一种解决办法,我用login.microsoftonline.com/common/oauth2/logout来调用SFAuthenticationSession.start()。这是可行的,但UX的体验比糟糕得多。
真的没有其他方法可以用SFAuthenticationSession清除cookie吗?会话不与Safari共享,因此打开webview也不起作用。
ASWebAuthenticationSession会允许以某种方式清除cookie而不是SFAuthenticationSession吗?
我知道已经有人问过类似的问题了,但是也许有一些关于这个话题的更新。
发布于 2018-11-07 15:52:16
进行注销的唯一方法是调用login.microsoftonline.com/common/oauth2/logout,或者如果您想在应用程序之间使用sso,您可以使用WKWebView,但是如果您想在Safari和应用程序之间使用sso,唯一的方法是ASWebAuthenticationSession或SFAuthenticationSession。ASWebAuthenticationSession与SFAuthenticationSession相同,但它们添加了权限警告视图,当您需要注销时,用户将看到带有问题的警报视图:您要登录吗?希望苹果能修好它
https://stackoverflow.com/questions/53188992
复制相似问题