2011-06-02 53 views
0

這裏是目前的情況:我有一個登錄頁面,用戶輸入他的用戶名和密碼。然後,我使用「硬編碼」用戶(在腳本中)連接到數據庫,該用戶打開與服務器的連接並執行查詢以檢查用戶提交的此數據是否有效,如果是,則「識別」他已登錄這是我在大多數應用程序中看到和使用的場景。用什麼用戶我應該做postgres和php查詢

現在,因爲我已經有一個數據庫與許多用戶(postgres數據庫角色,而不是表「用戶」 - 我必須強調這不會誤導你)我想知道是否是一個很好的做法,做一個pg_connect與用戶放入登錄頁面的用戶名和密碼。

我的進一步問題是,我將如何保持他們登錄?會話變量與用戶名和哈希密碼?這是如何從安全角度影響的?

我會感謝您的答案,並感謝任何好的閱讀材料!

回答

2

我不認爲這是明智的。從技術上講,你會有你的根或管理員用戶可以刪除或ALTER表的權利?您不希望用戶訪問數據庫內部。

爲什麼你沒有一個單獨的表(目前是)?如果您需要您的用戶具有真正的數據庫訪問權限(用於其他系統或應用程序),那麼您仍應創建適當的用戶表。

您可以隨時編寫腳本,將數據從內部數據庫用戶表中同步到應用程序用戶表中。

+0

謝謝您的回答,但我有一些後續問題:是否可以在連接到數據庫並查詢「用戶」數據庫以檢查憑據的腳本中擁有一個「硬編碼」用戶? – Nikola 2011-06-02 13:28:01

+0

是的,這是正確的。該「硬編碼」用戶應該只具有對INSERT,SELECT,DELETE和UPDATE記錄的權限。 – 2011-06-02 13:29:47

+0

好的,thx爲您提供幫助。我把答案標記爲正確。 – Nikola 2011-06-02 13:32:18

相關問題