2014-11-02 148 views
-4

我執行一個查詢來查看用戶名和密碼是否匹配。之後,我將用戶名存儲在會話變量中。該值是之後重定向到管理頁面的用戶名。登錄系統的PHP會話安全嗎?

每當我去管理頁面,它尋找該會話變量。如果它不在那裏,它會將我重定向到登錄頁面。

這是一種安全的使用方法嗎?

+6

我真的會感謝充分,如果我有一個簡單的答案,把我放在右槽比剛否決我的崗位 – yasir 2014-11-02 17:52:38

+1

取決於如何你使用它們,並談論完全安全的想法,沒有什麼是完全安全的/安全的... – 2014-11-02 17:54:59

+0

$ _session ['user'] =「用戶名」,這是什麼我檢查,如果它存在它讓我在管理頁面,如果它不是重定向我登錄可以有人偷這個變種,並使用它來訪問管理面板 – yasir 2014-11-02 18:00:30

回答

0

一般的想法是適當的(imho,對於初學者)。

但使用布爾值更安全,如loggedin = yes/no。這隱藏了用戶名,實際上會話變量中的信息可能被盜用。

順便說一句:你不能通過會話實現完全的安全性,你需要以正確的方式實現和封裝以獲得更多的安全性(沒有什麼是完全安全的)。更多的知識來自更多的實踐。保持。

+0

非常感謝您的答案,我需要聽到我會搜索更多的級別p安全 – yasir 2014-11-02 18:39:03

0

這根本不安全,因爲如果你不散列ID,任何人都可以僞造一個會話作爲另一個用戶。

這裏的登錄系統的一個很好的例子:

How secure is my PHP login system?