2012-05-01 41 views
0

我們正在開發一個簡單的Web應用程序,該應用程序將在我們的Intranet上提供。訪問應用程序將通過「用戶」表格進行控制:如果您的網絡登錄存在於表格中,則可以使用該應用程序。正確的數據庫訪問身份驗證

該應用本身將使用SQL數據庫。在我們目前的開發設置中,我們都是開發數據庫的管理員,所以我們擁有完全的訪問權限。然而,當它被部署到生產環境時,我們有幾個選項可用於對數據庫進行身份驗證。

爲每個適當的用戶授予他們自己的數據憑據是有意義的,還是應該用戶共享數據庫上的單個應用程序級用戶帳戶?

+0

您不能將用戶添加到不同的**角色**並授予角色基礎上的訪問權限? –

+1

您是否需要跟蹤每個用戶對數據庫執行的操作,或者您不在乎? – Icarus

回答

1

爲每個應用程序用戶創建單獨的用戶帳戶使我的經驗複雜化。如果沒有必須設計的安全規範,我會爲應用程序創建單一登錄,創建數據庫角色,授予角色權限,並將登錄添加到角色。

如果您通過將用戶名作爲輸入參數傳遞給存儲過程來使用此方法,則仍然可以審覈用戶操作。

0

每個用戶的訪問憑證將導致除最小用戶羣之外的所有用戶的後勤噩夢。它也使網絡環境中的事情變得複雜化。

我見過(並且使用過)最常見的方法是爲每個應用程序使用專用用戶。所有訪問都通過該用戶名/密碼。

您的應用程序將在任何情況下執行授權,以便您可以審覈執行各種操作的用戶名(如果需要)。