我正在开发一个内部应用程序,该应用程序将利用我们的企业Google云端硬盘帐户,并将用于共享设备(学校网站上的教师和学生共享的iPad)。
有没有办法强制GIDSignIn
在每次登录尝试时都要求输入密码?现在,即使在致电GIDSIgnIn.sharedInstance().signOut()
(或GIDSignIn.sharedInstacne().disconnect()
)后,用户下次访问应用时也无需输入密码。这意味着,当设备被下一个用户占用时,他们可以非常轻松地访问其他用户的帐户。
我错过了什么吗?我是否需要以某种方式清除UIWebView
进程使用的GIDSignIn
中的Cookie存储区?
答案 0 :(得分:4)
如果可用,GIDSignIn
登录流程使用的是SFSafariViewController
,而不是UIWebView
。它利用Safari中存储的cookie(以及密码),以便更快地登录。
我认为您无法清除此类Cookie。不过,您应该可以通过在https://www.google.com/accounts/Logout
中打开SFSafariViewController
来强制退出Google,但与您应用其余部分的互动可能有点奇怪。有关提供返回URL的方法,请参阅Logout link with return URL (OAuth),您可以尝试使用该URL来控制流程(但是,您需要使用URL方案返回)。
请注意,iOS可能会提示保存登录信息,然后向后续用户提供所述登录信息。您需要在“设置”中禁用该功能 - > Safari - >自动填充
可能还有其他方法可以通过配置设备来实现它,但iOS目前并不是真正为多个用户设计的。