退出SSO kerberos

时间:2015-05-06 16:05:46

标签: macos single-sign-on kerberos

我的OSX应用程序是基于Kerberos协议进行身份验证所必需的。 登录时我通过加载授权URL请求使用WebView(和WKWebView for MAC OSX> 10.9)。

登录按预期工作,但在我从计算机注销或终止我的应用程序之前,它仍然保持登录状态。 这意味着在下次加载授权URL请求时,我会自动登录而不会被提升以插入我的用户&密码。

在加载授权URL之前,我从[NSHTTPCookieStorage sharedHTTPCookieStorage]中删除了cookie。

我该如何退出?

2 个答案:

答案 0 :(得分:1)

您需要销毁运行Web浏览器的计算机上的kerberos票证。

/usr/bin/kdestroy 

OS X曾经有一个图形界面来管理门票,但我认为这已经很久了。你应该只是这样做测试。 Kerberos票证在OS X中的许多应用程序之间共享,如果您的应用程序甩掉票证,您的用户将会用干草叉来跟踪...

答案 1 :(得分:0)

我的解决方案是通过以下方式关闭我的申请:

[NSApp终止:自我];

更好的解决方案是重新启动应用程序,但这对我来说已经足够了。