我有一個使用成員身份功能的ASP.NET應用程序。我連接到一個包含aspnet_membership模式的SQL Server數據庫。我現在在應用程序的連接字符串中使用「sa」和sa密碼,我知道這是一個可怕的事情。我的問題是,什麼是連接字符串的最佳選擇?我應該在sql數據庫名稱「MyAppUser」(或其他)中創建一個用戶並將aspnet_membership_fullcontrol模式分配給該用戶嗎?這樣,應用程序就可以連接並獲得完整的控制權限,然後根據我寫入應用程序的邏輯限制個人用戶的訪問權限。將ASP.NET應用程序連接到SQL Server時的最佳實踐建議
這是一個很好的方法嗎? (訪問僅限於應用程序使用的特定數據庫,而不限於其他任何數據庫)。
如果不是,有什麼更好的方法來得到,同時利用ASPNET成員我的連接字符串使用用戶「sa」了嗎?
感謝您的任何建議,你可以給。
感謝您的答覆。我正在使用SQL Server身份驗證,而不是Windows。所以我創建了一個登錄名,並賦予了我需要的所有權限以使其工作。不幸的是,它似乎需要dbo權限才能運行我編寫的存儲過程。我想改變這一點,我會繼續調查。這絕對是一種改進,因爲我至少只能訪問它所需的數據庫,這就是進步。感謝您的回答。 – rogdawg 2010-10-04 15:53:50
您還需要設置存儲過程本身的權限 - 右鍵單擊SP並轉至屬性,然後單擊權限。 – 2010-10-05 11:49:05
alternativly創建模式和分配您的用戶到這一點,那麼創建SP的該模式下 - 有這樣一個讀 - http://vyaskn.tripod.com/sql_server_security_best_practices.htm,這http://msdn.microsoft.com /en-us/library/ms190387.aspx,只是有一般的SQL Server安全谷歌 - 有很多,但它是相當直截了當到底(雖然2008年不會使其更復雜) – 2010-10-05 11:53:52