采用集成的Windows驗證和使用Sql Server身份驗證進行數據庫的登錄


采用集成的Windows驗證和使用Sql Server身份驗證進行數據庫的登錄

 

1、集成的Windows身份驗證語法范例

1

<connectionStrings>
<add name="connString" connectionString="server=.;database=myschool;integrated security=true"/>
</connectionStrings>

 


說明:程序代碼中,設置了一個針對Sql Server數據庫的連接字符串。其中server表示運行Sql Server的計算機名,由於程序和數據庫系統是位於同一台計算機的,所以我們可以用.(或localhost)取代當前的計算機名。

database表示所使用的數據庫名(myschool)。由於我們希望采用集成的Windows驗證方式,所以設置 integrated security為SSPI即可。

2、Sql Server 2005中的Windows身份驗證模式如下:

1
string  constr =  "server=.;database=myschool;uid=sa;pwd=sa" ;

說明:程序代碼中,采用了使用已知的用戶名和密碼驗證進行數據庫的登錄。數據庫連接字符串是不區分大小寫的。uid為指定的數據庫用戶名,pwd為指定的用戶口令。

為了安全起見,一般不要在代碼中包括用戶名和口令,你可以采用前面的集成的Windows驗證方式或者對Web.Config文件中的連接字符串加密的方式提高程序的安全性。

 

 

window身份驗證跟sql server身份驗證的區別

windows身份驗證:

只要能登錄操作系統的用戶都可以登錄數據庫。windows身份驗證由windows驗證並分配有效的安全ID,同時也只能windows用戶登錄連接。

sqlserver身份驗證

需要在數據庫中設置用戶和密碼,才能登錄可以登錄的數據庫。必須提供SQL Server用戶ID和密碼

 

優缺點:

Windows身份驗證使用單一的用戶信息庫源,因此,不需要為數據庫訪問去分別配置用戶。

連接字符串不包含用戶ID和密碼,因此消除了把用戶ID和密碼暴露給未授權的用戶的危險。可以在Active Directory中管理用戶和他們的角色,而不必在SQLServer中顯式地配置他們的屬性。 

Windows身份驗證的缺點是,它要求客戶通過Windows的安全子系統支持的安全通道去連接SQL Server。如果應用種序需要通過不安全的網絡(例如Internet)連接SQL Server,Windows身份驗證將不工作。

此外,這種身份驗證方法也部分地把管理數據庫訪問控制的責任從DBA身上轉移到了系統管理員身上,這在確定的環境中也是一個問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM