2009-10-22 46 views
0

以下網站顯示了(有點劈十歲上下)的方式來保護與htaccess的管理員路線:CakePHP的+管理+航線的.htaccess +生產模式

http://snook.ca/archives/servers/password_protect_admin/

如果我理解正確的話,它僅在CakePHP處理自己的URL邏輯之前對「真實」文件存在進行檢查時纔有效。因此,當您請求yoursite.com/admin時,它會檢查(真實的,因爲我們創建了它)/ admin目錄中的默認文檔,並且此檢查會觸發驗證。

我的問題是:如果將我的調試級別設置爲'1'或更高,'hack'工作正常。如果我將它設置爲生產模式('0'),我只會得到一個蛋糕解釋的HTTP 401(訪問被拒絕)錯誤。

所以,我的問題是:有沒有辦法讓這個'黑客'工作的調試級別設置爲零?

+0

你爲什麼要用這種方式保護你的管理路線?只是在允許訪問之前有另一個挑戰/迴應?我認爲你可能會過度設計這一個。 – 2009-10-22 15:40:16

+0

如果您只設置管理路由,它們將保持開放供公衆訪問,除非您設置了一個身份驗證組件來保護它們。由於我不需要真正的用戶管理(只是密碼保護),所以我選擇使用內置的Apache供電auth而不是蛋糕供電。所以,我想我實際上是在設計它。 = D – 2009-10-22 16:41:19

+0

即使您可以使用它,您也應該使用auth組件來實現可維護性和靈活性。此外,它很容易設置 – 2009-10-22 18:41:17

回答

2

查看SecurityComponent,它允許您在beforeFilter中用幾行代碼設置基本HTTP身份驗證。應該比這個黑客更強大。


我同意雖然AuthComponent非常容易set up。您只需複製並粘貼UserController和登錄表單的片段,運行表創建腳本,嘗試登錄,從SQL日誌中獲取編碼密碼,將其放入數據庫並將Auth添加到控制器中的組件列表中。花費不到3分鐘,給客戶留下更好的印象(如果有人關心;))。

+0

你們可能是對的,我可能過度抵制使用Auth組件lol。無論如何,這個SecurityComponent對我來說也很有意思,我想我會試試看。如果結果過於複雜或功能欠佳,我想我會停止抱怨並嘗試Auth組件。 = d – 2009-10-23 13:23:45