2015-05-06 81 views
0

基於Kerberos協議進行身份驗證需要使用我的OSX應用程序。 對於登錄,我通過加載授權URL請求來使用WebView(和WKWebView for MAC OSX> 10.9)。從SSO註銷kerberos

登錄按預期工作,但它仍保持登錄狀態,直到我從計算機註銷或終止我的應用程序。 這意味着在我下次加載授權URL請求時,我自動登錄而不被提升爲插入我的用戶&密碼。

在我加載授權URL之前,我從[NSHTTPCookieStorage sharedHTTPCookieStorage]中刪除了cookie。

我該如何註銷?

回答

0

我的解決辦法是關閉我的應用程序:

[NSApp表示終止:自];

更好的解決方案將是重新啓動應用程序,但現在這對我來說已經足夠了。

1

您需要銷燬運行Web瀏覽器的計算機上的kerberos票據。

/usr/bin/kdestroy 

OS X過去有一個圖形界面來管理票證,但我認爲這已經很久沒有。你只應該做這個測試。 Kerberos票據在OS X中,如果您的應用程序吹走了票,你的用戶會跟在你後面乾草叉許多應用程序之間共享...

+0

舊的Kerberos GUI應用程序已經死了,但它已被替換爲Ticket Viewer(隱藏在/ System/Library/CoreServices /中),它完成了大部分相同的事情。 –

+0

@弗雷德最魔法奇蹟-d 我執行的kdestroy並將其與成品: kdestroy:krb5_cc_destroy:無憑據緩存文件中找到 @戈登 - 戴維森 門票Viewer是空 我覺得解決應該來自我的應用程序,特定於我的WebView,因爲正如我在重新啓動應用程序時所說的那樣,我提倡插入用戶名和密碼。 任何意見? – EdiZ