ASP.NET 2.0数据教程之七十三:保护连接字符串及其它设置信息
“connectionStrings”);physical_directory 为web应用程序根节 点的完整物理路径;provider是用到的protected configuration provider的名 称(比如“DataProtectionConfigurationProvider”). 另外,如果你 将web应用程序在IIS里进行了注册了的话,你就可以用相当路径来代替绝对路径 :
aspnet_regiis.exe -pe section -app virtual_directory -prov provider 下面为使用aspnet_regiis.exe的例子,它用DPAPI provider, 机器级密匙,对<connectionStrings>节点进行加密:
类似的,该 aspnet_regiis.exe命令行工具也可以用来解密配置节点,不过我们要将-pef替换 成-pdf或-pd。当然,解密时不需要指定provider名 称.
注意: 由于我们使用的是DPAPI provider,它使用的密匙是又电脑指定的,所以你必须在存储web页面的同一台电 脑上运行aspnet_regiis.exe工具. 比如,你在本地电脑上运行这个命令行,然后 又将加了密的连接字符串上载到另一个服务器上,该服务器就无法对其进行解密 ,因为加密的密匙是在本地电脑上指定的.如果是使用RSA provider的话就不存在 这种局限性,因为RSA provider可以将密匙(RSA keys)传递给另一台电 脑. 理解Database Authentication Options 在任何应用程序向 Microsoft SQL Server数据库发出SELECT,INSERT,UPDATE,或DELETE请求之前,数 据库首先要确定请求者的身份.该过程可分为2种验证模式:authentication 和 SQL Server provides: .Windows Authentication:在Visual Studio 2005的ASP.NET Development Server里运行一个ASP.NET应用程序时,ASP.NET应用程序假定身份(identity)为当前登录用户。而如果运行在Microsoft Internet Information Server (IIS)上的话,ASP.NET应用程序假定身份(identity)为domainName\MachineName or domainName\NETWORK SERVICE,,虽然这些都可以用户定制. .SQL Authentication:验证的时候需要提供用户ID和password,使 用SQL authentication的话,可以由连接字符串来提供ID和password. 一 般使用Windows authentication模式,因为其更安全.在Windows authentication 模式下,连接字符串不需要用户名和密码,并且如果web服务器和数据库服务器分 属不同的电脑的话,(credentials)认证在网络间传输时并不以纯文本格式传输. 而如果是SQL authentication模式的话,将对连接字符串进行硬编码,且认证在 web服务器和数据库服务器之间以纯文本格式进行传输. 本教程使用的是 Windows authentication.我们可以通过连接字符串来查看到底使用的是哪种认证 。本教程的Web.config文件的连接字符串如下: Data Source=.\SQLEXPRESS; AttachDbFilename=|DataDirectory|\NORTHWND.MDF; Integrated Security=True; User Instance=True 术语 “Integrated Security=True”,以及缺少用户名和密码都表明我们 使用的是Windows authentication模式。不过在一些连接字符串里用术语 “Trusted Connection=Yes” 或 “Integrated Security=SSPI”来替换“Integrated Security=True”, 不过 它们都表明使用的是Windows authentication. 下面的代码显示使用的是 SQL authentication: Server=serverName; Database=Northwind; uid=userID; pwd=password 假想某个攻击者可以查看你的应用程序的 Web.config文件。如果你使用的是SQL aut |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |