---1
   string cmdtxt1 = "Server=.;Database=Northwind;Uid=sa;Pwd=iq50628";---2
   string cmdtxt1 = "Persist Security Info=false;Integrated Security=SSPI;Server=(local);DataBase=Northwind";
------
1为常用的比较熟悉,2看起来有点儿陌生,请高手讲一下两者之间的差异,并重点解释一下2。

解决方案 »

  1.   

    2是Windows验证,也就是说登录了本地机器后就能访问。因为asp.net都是后台访问数据库,因此一定是服务器访问数据库,所以有了本地身份验证的方法。
      一般说来,1用SQL Server内置的安全性检测,2用Windows的,因此2的强度取决于Windows,应该比1高些。
      

  2.   

    用2登录是,需要启用windows的asp.net用户,并付给该用户访问数据库权限,如果在win2003下,还需要iis_wpg用户
      

  3.   

    Persist Security Info :是否支持安全信息(是否保存密码) 
    Integrated Security:用于指定采用的集成安全机制。 
    Initial catalog:用于指定要连接的数据库名称。 
    -------------------------------- 
    关于SSPI SSPI是Security Support Provider Interface(Microsoft安全支持提供器接口)的英文缩写。SSPI是定义得较全面的公用API,用来获得验证、信息完整性、信息隐私等集成安全服务,以及用于所有分布式应用程序协议的安全方面的服务。应用程序协议设计者能够利用该接口获得不同的安全性服务而不必修改协议本身。 SSPI是传输层应用程序和网络安全服务提供器之间的Win32接口,其主要特性是使应用程序拥有了一个公用的API来使用不同的安全包,包括Windows NTLM验证、SSL/PCT公用密钥密码技术提供器以及Windows 2000中的Kerberos安全验证提供器。 应用程序开发者有权选择直接调用SSPI函数来集成Windows NT安全性,或者使用基于DCOM、经验证的RPC或者Winsock 2.0等更高级的应用程序接口。Microsoft开发了新的基于接口规格的安全包来支持SSPI。Microsoft建议所有的基于Win32的应用程序开发者在进行安全分布式应用程序的开发时使用SSPI的集成安全特性。