东莞列举网 > 商务服务 > 网站/软件服务 > 数据库安全连接 租用20g服务器价格
东莞
[切换城市]

数据库安全连接 租用20g服务器价格

更新时间:2018-03-14 11:12:11 浏览次数:58次
区域: 东莞 > 莞城
类别:IDC服务
地址:广东省东莞市莞城街道汇峰路1号汇峰中心B区501单元
  数据库安全连接

  无论是SQL Server数据库或Oracle数据库,都有自己的安全连接机制。但往往由于Web系统的脆弱,导致数据库安全岌岌可危。

  以SQL Server为例,该数据库安装有两个关于安全模式的选项。它们之间的差别在于由哪一个软件执行认证过程。认证是确认将要连接SQL Server的用户身份的过程。一旦执行了认证,SQL Server能验证用户是否具有许可来连接一个被请求的资源,例如一个数据库。如果用户具有连接数据库的许可,那么SQL Server将允许连接请求成功,否则,连接失败。这个验证用户许可的过程还被称为授权。

  Windows Authentication(也称为Windows集成验证)使用进行连接请求过程的Windows用户身份来执行对数据库连接的授权。在这种情况下,连接字符串不必提供显式的用户名和密码。AS***以一个名为ASPNET的本地用户来运行(或者在IIS 6.0中使用用户名Network Service),所以当使用Windows Authentication时,SQL将会检查这个用户是否拥有使用数据库的许可。

  此时,所有的AS***应用程序都用这个相同的用户运行,所以该数据库安全模式对这些应用程序一视同仁。虽然可以在单独的AS***进程中运行每一个应用程序(单独的用户运行每个程序),或者可以模拟进行连接请求的浏览器客户的Windows用户身份,但是这些内容都超出了本书所要讲述的范围。不过,客户模拟的情况在Web应用程序中是WindowsAuthentication常见的使用方式。

  SQL Authentication针对在SQL Server内配置的用户检查显式提供的用户名和密码(无需涉及操作系统)。在这种情况下,在AS***进程中运行的每个应用程序都能以单独的证书连接数据库,这样把应用程序合理地隔离开了(应用程序A如果没有B的用户名和密码不能连接至B的数据库)。这是用于Web应用程序部署的常见认证模式,特别是在共享宿主的情况下。这种方式的一个缺点是需要应用程序保留用于连接的用户账户的密码,并且如果该密码被恶意用户获取,那么将危及数据库安全。但是,在本书后面将会看到,AS***提供了一个安全的方式,将SQL Authentication密码以加密的格式保存在We***nfig文件中,这样降低了密码被获取的风险。

  Mixed Mode是SQL Server的混合验证模式,既允许Windows Authentication认证方式,也允许SQL Authentication认证方式。

  在安装SQL Server或单指令多数据流扩展组件(Streaming SIMD Extensions,SSE)时,要选择一种认证模式。在SQL Server中,有向导会在安全步骤中帮助选择,而在SSE中,默认选择是Windows Authentication。如果要安装SQL Authentication,必须显式地配置。本文使用的是Windows Authentication。

  如果已经安装了SQL Server或SSE,能通过打开RegEdit来查看所指定的认证模式(当然需要先备份),找到HKey_Local_Machine/Software/Microsoft/Microsoft SQL Server并搜索LoginMode。值为1的注册子键表示Windows Authentication,而值2表示Mixed Authentication模式。

  上述几种数据库安全连接模式如果要结合Web开发技术,则可以进一步加固应用程序与数据库之间的通信连接。

  对于开发人员,需要考虑数据使用者(DataSource控件)如何满足需求。首先,从VWD和VWD Web Server获取的数据,主要是在设计和测试的时候使用;其次,在部署之后应当从IIS访问数据,这两个数据使用者有不同的用户名。VWD和VWD Web Server使用登录进Windows的人员的名称,而IIS程序使用名称AS***。

  如果SQL Server使用Windows认证,那么SqlDataSource控件需要在连接字符串中包含如下代码:Integrated Security=true(或Trusted_connection=true)。这个参数将指示SQL Server根据请求者的Windows登录账户对数据请求进行认证。如果是安装SSE的用户,其证书将授予访问SSE的权限。使用VWD和VWD Web Server可以顺利通过验证,因为VWD Web Server的用户被认为是登录进Windows的开发人员,具有SSE上的账户。但是,即使是应用程序在VWD之外工作正常,当站点迁移至IIS后,也有可能不正常。

  IIS是在名为AS***的用户账户下运行的(或是在IIS7/Windows 2008 Server中的Network Service)。因此,运行IIS的机器的管理员必须添加AS***用户并授予其许可。这个过程超出了本书讲解的范围,但是在很多IIS管理员手册中都有详细的描述。总而言之,如果SQL Server使用的是Windows认证,能使用VWD和VWD Web Server进行本书的练习。只有在授予了访问数据库的AS***进程账户许可之后,页面才能在IIS上运行。

  如果SQL Server使用的是SQL认证,此认证过程将由SQL进行,这个过程不依靠Windows用户列表。SQL认证中连接字符串中包含了两个参数:user=username,password=password。现在可以从VWD、VWD Web Server或IIS中使用页面,这个认证过程不需要在Windows中创建用户账户,可以使用SQL Server中的账户,默认账户是sa。在部署之前,应当在SQL Server中创建另外一个账户,该账户只拥有执行.aspx页面的权限。如果不创建sa以外的替换账户(和用来保护sa的密码),那么将会使站点处于易于利用的数据库安全漏洞之中。任何都知道使用空密码的userID='sa'来登录。

  对以上两种认证模式来说,当使用如前所述的连接字符串时,用户将以初始账户登录进SQL Server。这个账户是sa,表示系统管理员,它具有对所有对象的所有权限。在的SQL Server版本中,不能以密码为NULL的sa来安装服务。

  在SSE中,必须以参数SAPWD="MyStrongPassword"安装。这里的强密码保证密码至少不为NULL。密码使用不少于七位的字符并确保使用字母、数字和符号的混和形式。在大多数情况下,需要为每个数据库和应用程序指定一个账户,以避免让一个应用程序拥有可以访问其他应用程序数据的权限。

  盛网科技http://www.33o***/,服务器租用/托管,高性能,高配置,高防护,高独享7x24小时售后服务,定制属于你的专属服务器。Q Q:724015997企业Q:4000900901电话:4000900901
东莞网站/软件服务相关信息
2023-09-15
注册时间:2017年04月11日
UID:380135
---------- 认证信息 ----------

查看用户主页