A. 如何讓您的ASP.NET資料庫連接字元串是安全的
一、Data 的DataSource屬性,對應connectionString中的Data Source,「Data Source」可以由下列字元串代替:「server」,「address」,「addr」和「network address」。Data Source=.\SQLExpress也可以寫成這樣Data Source=(local)\SQLExpress。
二、Integrated 的IntegratedSecurity屬性,對應connectionString中的Integrated Security,「Integrated Security」可以寫成「trusted_connection」,為true時,使用當前的 Windows 帳戶憑據進行身份驗證,為false時,需要在連接中指定用戶 ID 和密碼。
三、的AttachDBFilename屬性,對應connectionString中的AttachDBFilename,「AttachDBFilename」可以寫成「extended properties」,「initial file name」。AttachDbFileName屬性指定連接打開的時候動態附加到伺服器上的資料庫文件的位置。這個屬性可以接受資料庫的完整路徑和相對路徑(例如使用|DataDirectory|語法),在運行時這個路徑會被應用程序的App_Data目錄所代替。
四、User 的UserInstance屬性,對應connectionString中的User Instance ,該值指示是否將連接從默認的 SQL Server Express 實例重定向到在調用方帳戶之下運行並且在運行時啟動的實例。UserInstance=true,在這種情況下,SQLServerExpress為了把資料庫附加到新的實例,建立一個新的進程,在打開連接的用戶身份下運行。在ASP.NET應用程序中,這個用戶是本地的ASPNET帳號或默認的NetworkService,這依賴於操作系統。為了安全地附加非系統管理員帳號(例如ASP.NET帳號)提供的資料庫文件,建立一個獨立的SQLServer用戶實例是必要的。
B. 如何在資料庫中修改後台密碼
資料庫中操作。
用sql2005的查詢分析器連接到你的資料庫
找到資料庫中的aspnet_Users
表查到用戶名和UserId在aspnet_Membership
表中找到對應ID把
PasswordFormat
改成"0"(零),Password
隨便輸入
即密碼。1.找到aspnet_Users表:打開表
---
返回所有行
2.在表內查看後台的用戶名和UserId
3.記錄用戶名和UserId後打開aspnet_Membership表:打開表
---
返回所有行
4.找到對應ID把
PasswordFormat
改成"0"(零),Password
隨便輸入
即密碼。
C. asp.net與資料庫連接出錯的問題
VS只自帶了資料庫引擎,沒有帶管理器,要自己到微軟網站下載Sql Server Management Studio Express.然後按下面的步驟做。
1.配置SQLServer外圍應用伺服器,開啟SQL2005遠程連接功能:
操作方式如下,點擊「配置工具」->「SQLServer外圍應用配置器」,然後在打開的窗口中選擇「服務和連接的外圍應用配置器」->然後選擇Database Engine節點下的 「遠程連接」,選擇「本地連接和遠程連接」,同時選擇「同時使用TCP/IP和named pipes」,確定後然後需要重新啟動資料庫服務就可以了。
2.把登陸設置改為SQLServer 和 Windows 身份驗證模式,具體設置如下:
打開SQLServer Management Studio管理器,點擊伺服器上面右鍵然後查看屬性,在安全性選項裡面對服務身份驗證選擇「SQLServer 和 Windows 身份驗證模式」。
3.修改SQLServer sa的密碼,體設置如下:
在SQLServer Management Studio管理器中,展開伺服器上的「安全性」->登陸名->在sa帳號上點右鍵屬性,這樣在「常規」的選擇頁中更改sa登陸帳號的密碼。注意SQLServer2005中,不允許密碼設置簡單,否則會通不過。然後在選擇頁的「狀態」的登錄修改為啟用。
4.資料庫連接字元串:
資料庫連接字元串有很多種,如:
Data Server=.\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sapassSql
Data Server=伺服器名\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=localhost\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=伺服器名;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
具體的選擇是和SQLServer2005的版本有關系,如果是SQLServer 2005 Express版本,則必須要有「\SQLEXPRESS」,因此如果字元串是定義為一個變數的時候應該寫成Server=. \\SQLEXPRESS。
5.在.net2.0 Framework中注冊SQLServer資料庫:
找到.net2.0 Framework的安裝路徑,一般安裝在 「C:\Windows\Microsoft.NET\Framework\v2.0.50727」目錄下,然後在DOS中在指定目錄下運行「ASPNET_REGSQL」指令,就會出現ASP.NETSQLServer安裝向導,點擊「下一步」,然後選擇「為應用程序服務配置SQLServer」,然後直接點擊下一步,就會完成SQLServer注冊界面。我們就會看到NorthWind資料庫下面多了幾張表。
6.設置web.config文件:
在應用程序中的web.config文件添加如下資料庫連接的配置:
程序代碼:
<connectionStrings>
<add name="ConnectionSqlServer" connectionString="Data Source=.\SQL2005;Initial Catalog=Test2008;User ID=sa;PWD=sasasasa" providerName="System.Data.SqlClient"/>
</connectionStrings> 這樣我們便在Visual Studio 2005中可以輕松的調用SQLServer的數據連接了。
現在我們來對上面所做的步驟來測試數據的連接,我們打開Visual Studio 2005,在視圖的「伺服器資源管理器」來添加SQLServer 2005的連接,通過輸入伺服器名稱和對應的SQLServer身份驗證的sa用戶名密碼後,選取對應的資料庫,然後點擊「測試連接」,就會成功的連接到資料庫了。
如果sa無法登錄,檢查sa的狀態屬性中,是否啟用了登錄