2011-03-09 50 views
0

我已經開始構建一個具有不同用戶類型(包括管理員和客戶)的Web應用程序,並且我希望每個帳戶類型都擁有自己的用戶數據庫表(會話系統等),但頁面中的登錄名相同。如何在登錄時無形識別用戶的帳戶類型?

管理員沒有註冊 - 他們被髮布了一個帳戶,而客戶在專門創建他們的帳戶的頁面上註冊,所以在這個時候和將來,每個用戶帳戶類型都會有自己的標誌up頁面。

然而,所有用戶帳戶類型(即管理員和客戶)都應該能夠在登錄表單中從同一頁面登錄 - 沒有任何差異 - 即沒有下拉選擇要登錄的用戶帳戶類型。

我的目標是有:

  1. 所有用戶帳戶類型(3+)登錄到經相同形式的Web應用程序,
  2. 在用戶名的格式無需任何可見的用戶帳戶類型標識符如,
  3. 儘可能安全的'不可見'用戶帳戶類型標識符。

一個解決方案,我想的是:散列每個用戶帳戶類型不同的密碼,但也有一些不變的,可以在標誌讀入,以確定用戶帳戶類型的哈希,即再分日誌在過程中正確的數據庫爲該用戶,但這將需要在哈希輸出中的某種常量......我卡住了。我在正確的軌道上嗎?

有沒有人知道一個腳本/如何/或文章,涵蓋這樣的過程? 這必須在很多當前的網絡應用程序中使用。

感謝

+1

爲什麼你想爲不同的賬戶類型有不同的表格?你可以用一個帶有標誌的表格來表示它是什麼類型的帳戶。 – Gabe 2011-03-09 07:49:30

回答

0

當我們不得不實現多種賬戶類型(在大系統我要強調)我們總是在一般的解決(用戶)表,以補充附加表(管理員,網站用戶,供應商等)

用戶表將鏈接到管理員,Web用戶等,任何'通用'功能(即登錄,日誌,記錄鎖)將鏈接回通用用戶表。

然後從用戶記錄中可以推斷出它是什麼類型的帳戶並決定他們可以/不可以做什麼。

我應該強調,這只是因爲這些表的結構如此不同以至於它們不能全部存儲在同一個表中。例如,如果只有1列不同,則不需要執行所有操作。