Web basic access authentication

之前都沒注意到, 原來用 apache2 做使用者身份認證 (如使用 htaccess) 時, 跳出來詢問使用者名稱和密碼的對話框並不是網頁, 而是 client 軟體提供的輸入框。

《Basic access authentication》對此有詳細說明, 或用 Firefox 的 HttpFox 觀察 http header request 和 response 也不錯。幾個重點:

  • basic authentication 的傳輸沒有加密, 最好在 SSL 下使用
  • server 發覺沒通過身份認證時會傳 401 並在 header 裡附上 WWW-Authenticate: Basic ... 的訊息
  • client 送出 Authorization: Basic ... 的訊息, 其中 "..." 是 base64(USERNAME + ":" + PASSWORD)
  • 除關掉瀏覽器外, 沒有明確的方式「登出」這種登入方式

留言

  1. 其實是有方法的,只是不太確定您指的明確"登出"是什麼!

    在Browser中按"Ctrl+Shift+Delete"熱鍵,會彈出一個Window.

    可以找到類似底下的東西,這應該有幫助.
    1. Chrome: "清除已儲存的密碼"
    2. IE: 刪除瀏覽歷程記錄 -> 密碼.

    IE還有這一招 document.execCommand("ClearAuthenticationCache");

    回覆刪除
  2. 我的意思是, 相較於其它功能, 這些不太算是「明確的登出」方式。而一般網頁提供的「登出」介面, 就明確多了

    回覆刪除
  3. 的確是,難以實作出像Logout之類的button,可以直接點選登出!

    回覆刪除

張貼留言

這個網誌中的熱門文章

(C/C++ ) 如何在 Linux 上使用自行編譯的第三方函式庫

熟悉系統工具好處多多

virtualbox 使用 USB 裝置