2011-09-28 78 views
4

在我的Mac OS X應用程序中,我使用嵌入式WebView爲不同服務執行OAuth登錄。他們中的大多數人使用WebView中顯示的授權表單的HTTPS請求。如何在嵌入式WebView中顯示HTTPS請求證書

現在我需要顯示一個小鎖像Safari瀏覽器,只要連接是安全的。點擊該鎖應該打開一個SFCertificatePanel,顯示用於該請求的證書。

這可以在WebView for OS X中完成嗎?我檢查了所有代表,但沒有找到發送給他們的可用消息來顯示該鎖定圖標或獲取證書。

感謝您的幫助!

+1

不知道這是最好的解決辦法,但也許你可以自己加載該頁面與CFNetwork的API和在[這個答案]的代碼片段(http://stackoverflow.com/questions/1251117/how拿到證書-to-驗證-A-網站證書,在可可觸摸/ 1253585#1253585)。 – omz

+1

謝謝你的提示!使用CFNetwork工作。這是一個很好的解決方法。但代表們應該工作。這裏的蘋果開發者論壇的主題:https://devforums.apple.com/message/548415#548415(需要登錄和Mac開發賬戶) –

回答

0

這聽起來像一個很可疑的想法給我。考慮到用戶的行爲和用戶的理解(例如用戶對安全性的心理模型),我懷疑它在實踐中並不安全。

這是核心問題。在您的應用程序窗口中沒有地方可以顯示用戶可以信任的鎖,並且用戶可以理解並知道是無形的,並且用戶知道要關注它們。對於惡意網站來說,在他們的頁面上包含一個鎖圖標的圖像太容易了,這可能會欺騙用戶認爲HTTPS實際上沒有使用過。惡意網站甚至可以使圖標可點擊,如果用戶點擊它,則會彈出僞造的證書信息。大多數用戶無法檢測到這種攻擊。

相反,如果你知道某個網站需要使用HTTPS,我建議你使用https:// URL加載原始URL。由於您指定要在WebView中加載的URL,因此您知道它將使用SSL。據我所知,這是真實的關於你可以從你的應用程序內做的最好的。至少,考慮到這裏指定的問題描述,我想不出什麼更好的。

相關問題