1、外文翻译(附英文原文)Dreamweaver MX 中的数据库Macromedia Dreamweaver MX 是一个令人兴奋的版本,它在建立动态网的应用方面带来了一个很大的推进。越来越多的人拥有了他们需要的工具去快速且简单的把他们的网站连接到数据库,他们可以做从收取 e-mail 到使用完全的网络商店数据服务的所有事情。在强大功能同时也带来的一点责任,无论是你自己、你的客户还有你网站的用户都有。你有责任去建立一个安全的应用端,我们的目的是为了保护你收集的数据和商店免于被非法盗用。建立一个安全连接并不是一个很困难的任务,但是他要让你切实注意你所做的一切。你将要采取一些保护数据措施才能使你的站
2、点在发展和推广期间走的更远。他们不仅包括Dreamweaver MX 还包括你使用的数据程序。带索引序列存取(ISAM)数据库包括了一些流行的基于文件的数据库里例如 Microsoft Access, FileMaker, 以及 FoxPro。他们都是典型的独立体且能通过一个驱动程序访问,他们不需要服务端请求去运行。这些程序是本地建立的然后通过 DSN 上传到网络服务器,一总硬件代码连接方式,或者象 ASP 里面的 Server.MapPath 一样的方法。 ISAM 是廉价并且易于使用。但是如果你不用一些简单的方法保护他们的话也是很容易被突破的。首先,注意你存储数据的文件。如果可能的话,把数
3、据库的文件夹放在你网站根目录的上层。例如,如果到你的服务器上的网站的物理路径是 c:websitesmywebsite,mywebsite 文件夹和下层的内容就都是从浏览器可看到的内容。这意味着如果你把你的数据库文件放到c:websitesmywebsitedatabase,那么某些知道或者猜到你的文件名的人就能简单的通过 去下载到你的数据文件。因为服务器没有关联程序去运行 mdb 文件,它就默许了用户下载这个文件。其次,你能通过一些简单的操作解决Windows NT 和 Windows 2000 服务器上的一些 bug 来避免用户下载数据库文件。在ACCESS 里加密或者将扩展名有.mdb
4、改成.asp。然后用.asp 文件名来使用数据连接。由于数据库是加密的且用了.asp 的扩展名, ASP 服务器将在用户试图下载这个文件时用 ASP 程序去调用,然后出现调用失败而给用户一个错误窗口。最后,给你的 Microsoft Access 分配一个用户名和密码,例如,用缺省的用户名 Admin,用一个唯一的密码。无论什么时候当数据库文件被访问时,程序假设访问者是用 Admin 用户登陆且密码为空。如果某些人可以发现且下载你的数据库文件,他将会被终止打开和检验你的数据。安全数据serversDatabase 服务器象 Microsoft SQL Server 和 Oracle 在你把你的
5、数据应用到网络时有3 件事需要考虑:物理安全问题,虚拟安全问题和互联网安全问题。你数据库的物理安全问题有若干方面。他们延伸范围从保护你的电脑本身到你的网络设置。对这些问题的控制取决于你是否运行你自己的数据中心或购买一个主机的解决方案。不考虑你的情形,你应该确信你建立的工程能达到的必要的安全级或者其他的安排。你的数据库物理安全问题包括几个方面。首先是当在建立你的数据中心时选择你计算机上的数据区有几点需要牢记:与一般的办公室区域分开。最理想的是你能在封闭的房间里完全的拒绝外人的访问。你的机器应该放置在高于地面的地方,当然你可以买昂贵的专业机架,不过一套摆设理想的普通架子也可以达到同样的效果。还有你
6、应该让你的机器不贴地面以防止水进入机器造成短路。房间应该通风良好。CPU 和硬盘应该需要良好的散热设施来协助降温。拥挤着靠墙放置,或者是没有足够的空调设备的地方都是不适合的。安装电力保证系统。添加断电保护,好的电力系统也可以决定你的电器设备免于损坏以及数据的稳定保存。牢记专业的设施需要一条 30 安培的电路和捻锁容器,这样你能保证提供足够的电力给服务器。对于数据中心昂贵的设施来说防火是很重要的。常用的防火系统是用水的。因为水对电子设备不适宜,所以数据中心常常利用泡沫灭火器来扑灭电子设备的火灾而不是把计算机淋湿。如果你不能负担这种完整的系统,你至少要作好备份的工作。在你的服务器所在地,确保你不会
7、把计算机登陆在那里就擅自离开或者让一些企业管理人员运行和打开你的数据。许多安全程序都是建立于诚实的人之间的。不要在这些必要的事情上打折扣,尤其是在你的工作间可能会有客户或者雇员出入时他们是没必要访问你的数据信息的。虽然你要增加网络安全需要做很多步骤,但是中间有 2 个主题就是必须要在这里讨论的。这不是网络拓扑的问题,我无法详细的告诉你怎么成功使用这些工具,但是可以给你一点正确方向的简要描叙。 (当然也有很多可以帮助到你的详细资料)这 2 个你可能找到的有用的网络工具就代理服务器和防火墙。你应该知道通过防火墙和代理服务器可以执行一些简单的任务,而且他们也不是同一个事情。用代理服务器的主要目的是从
8、私人网络找到一条通路到公共网络并且提供缓冲能力给许多顾客机器通过 internet 的访问。防火墙提供了分离并且保护私人网络的具体办法,包括公共网络,DMZs(非军方区域)和私人网络的远程访问。那就是说,一个代理服务器能对你的在线 SQL 服务器提供一些有效的保护。使用代理服务器象 Microsoft 的代理服务器,代理服务器提供了一个在私人和公共网络之间的传送级别。例如,你可以在你的办公室建立一个私人的网络包括了所有客户端机器的静态 IP(就是说在 192.168.0.1 到 192.168.0.255 之间的所有 IP) 。这个网络在这种 IP 配置下就是一个私人网络。这些网络里的计算机都
9、是安全的因为不用考虑和其他 internet 的 IP 冲突。当一个私人网络想要访问公共网络象 internet 的时候,有了代理服务器就不需要把客户端机器让外界访问到。代理服务器(通常通过一个软件来管理网络连接)从私人网络得到请求然后发送到 internet,就象一个代理一样。当请求被返回时,代理使用 2 个网络截面,一个是私人 IP地址,一个是用公共网络 IP 地址。这个地址也可以让私人网络的一些部分可以让公共网络通过代理界面访问到。在使用 SQL 服务器的情况时,访问 SQL 本身的服务也通过代理服务器。所有到 SQL 服务器的访问在缺省设置下都通过 1433 端口。所以如果你只把 14
10、33 端口开放,就能合理的操作数据而不会把你的整个计算机都放到 internet 上去。Microsoft 就提供了这样的方法。你能够设置你的 SQL 服务器置身于代理服务器的保护下,以下是步骤:1,安装代理服务器,让它同时运行于私人和公共网络。2,安装代理客户端软件在你的拥有唯一内部网络 IP 的 SQL 服务器上。3,在 SQL 服务器上建立一个叫 wspcfg.ini 的文件(它代表“Winsock PC 构造 ”) 。这是一个文本文件,内容有以下的字:sqlservrServerBindTCPPorts = 1433Persistent = 1KillOldSession = 14.在
11、主要的 SQL 服务器目录下面保存这个文件。5。在代理服务器运行时,重启你的 SQL 服务器。这个设置文件在 SQL 每次启动的时候运行。本地代理服务器检测到客户端并且开放1433 端口给 SQL。所有的来自公共网络 IP 的 1433 端口请求都直接传送到了 SQL 服务器。SQL 服务器并没有暴露本身的其他文件。安装防火墙是去防止网络受到来自于 internet 的威胁,你应该考虑安装一个复杂的防火墙解决方案。一些是基于软件还有一些是基于硬件,基于硬件的意思是有专门的硬件去运行这个软件的解决方案。你也能安排一个解决方案,包括硬件,软件,监控和每个月的维护费用。防火墙为你的网络的地址和端口如
12、何被internet 访问提供更细微的控制级别。一个防火墙把你的网络主要划分为 3 个区域:internet不可访问的私人区域,internet 可访问的公共区域,介于以上 2 者之间的信用区域(DMZ) 。DMZ 区域里的计算机容易到达私人或公共区域但是除非被指令否则不允许在他们之间传输信息。防火墙系统就是这么命名的因为他们很象也叫防火墙的砖块建筑。防火墙是商业建筑里用来延缓火势使其局限于可更易控制区域的建筑。防火墙决定了一场火灾要花多久时间能传播到临近的区域。例如,2 小时防火墙的设计就是用来抵挡火势 2 小时,在这时间内可以采取措施灭火。网络防火墙多数也是同样的目的。它们被设计为延缓攻击
13、并警告人们有问题,允许人们在网络被威胁前有时间加以处理。没有什么方案是完美的,即使最好的防火墙也需要仔细的计划,观测和维护才能保护好你的数据。你经常需要衡量什么是你需要的和什么是你必须要避开的危险。虽然如此,防火墙确实是我们必要的保护存储数据的核心机会之一。SQL 服务器容易被若干服务器攻击或者被人获取安全帐号和口令。每次对一台网络服务器或者电子商务应用程序的攻击都可能使 SQL 服务器被损害。保护你的数据取决于你保护你的整个网络被侵入的能力。把你的网络作为你的一个成员你将能更好的保护他。防火墙在这个方向上作出了重大的进步。下文将讲叙虚拟安全的问题,即你数据库固有的安全性而不是你的应用。SQL
14、 服务器提供的功能有允许和拒绝对数据,表或其他组件的访问。虚拟安全就是用于登陆相关的。SQL允许两种登陆鉴定模式:Windows NT 和混合模式。Windows NT 模式里,SQL 服务器假设每个连接到 SQL 服务器的域名帐号都已经被操作系统所确认。混合模式则允许连接使用Windows 帐号或者 SQL 服务器帐号。提供给 SQL 存取用的登陆帐号要建立一个确认的方式。我更倾向于使用 SQL 服务器的方法(或者混合模式)因为更象是在主机环境。你第一个要做的事是建立一个系统的超级用户帐号(SA)用于 SQL 服务器的。象 Access,SQL服务器用超级帐号就没有关联口令。SA 帐号有完全
15、操作整个数据库的权利。如果你不设口令,那么每一个使用这个的管理员都可以连接到你的数据库并用超级用户登陆。用这来警告你好象比较愚蠢,但是最近的研究表示有惊人数量的连接到 internet 的 SQL 服务器没有SA 口令。在一个新的 SQL 服务器的安装时第一件要做的事情就是设置一个只有你知道的SA 口令。登陆的内容是一个很大的课题。你可以设置允许很大范围的人登陆你的数据库,你可以让别人能建立表,做备份,管理某些数据库,或者仅仅是几个主题的访问。他们能看到的仅仅只是你允许他们看的东西,也可以什么都看不到。在这一点,你的任务就是建立一个与你用来登陆和管理的 SA 相独立的登陆帐号。这个登陆将被用于
16、连接到你的网站去获取数据,还可以控制你的用户的操作。由企业管理员查找和开发这个安全文件夹。在这个文件夹里,你应该看到一个叫 Logins 的部分。这个部分包括了整个服务器的登陆帐号。一个详细的登陆帐号可以给予很多数据库,有服务器的安全级别,而不是一个单独的数据库。1,右击登陆,选择新注册。2,在新注册对话框里选择一个名字来登陆。3。选择SQL 服务器,输入登陆的口令。4,选择你工作的数据库作为缺省数据库。这个数据库是当连接到访问服务器时用的缺省数据库。如果没有其他数据库被列入,你就可以连接到这个数据库。你可能在网络服务器建立 DSN 时看到过这个过程。如果数据库的登陆通过了,你也可以选择一个其
17、他连接去登陆。5,你可以将这个帐号分配到服务器工作台里去,但是现在请点击 Access 数据库工作台。这个工作台列表将显示所有服务器的数据库上允许的连接。6,点击你正在建立的登陆数据库对话框。如果你选择了一个缺省的数据库,但是不要使用 Access 数据库工作台,你就会得到一个信息告诉你不能连接到这个数据库的用户。7,点击 OK。一旦你校验了口令,这个帐号就建立好了。你能在企业管理员内容里点击登陆选项可以看到所有的连接,然后选择一个你将来可能要改动的帐号去管理。这对你要达到的目的就足够了。你可以让这个帐号有权利管理你的部分数据库,象仓储程序。当你在Dreamweaver 里连接到这个数据库时,
18、你就能正常的建立一些记录和命令。这些帐号也可以被成组的进行管理称之为任务组,他可以帮助你定义那些用户用来分配任务的连接。你可以给你的用户个别的登陆权限,你也能够允许很多用户访问数据库。但是一个更简单的办法就是定义一个你能添加帐号的任务。这个任务就是简单的普通用户组。你可以有一个操作者备份任务组允许成员备份数据库,或者一个数据阅读者允许数据被成员阅读,但是不是插入,更新或者删除。任务组可以建立在服务器安全管理文件夹之上,这已经脱离了我们要讨论的主题。然而他们并不难使用,稍微研究就可以维持很久。主要的,你右击特定数据库上的任务组,选择新建数据库任务组去建立一个新的。命名然后点击许可。你将得到所有在
19、这个数据库里能给出给你选择的访问者能访问的项目,即许可的访问。一旦完成,用添加按钮去把这些添加好。所有那些成员帐号现在都得到了许可。对比物理和虚拟安全,内在的安全参考决定了你应用程序代码要采取的步骤。这包括了你连接到数据库的方法以及你用于连接的帐号。这里是一些你要记住的你的数据存取使用的过程。用存储程序保存所有数据访问。这允许你直接拒绝访问你的数据用户表。你可以建立你的数据组成,观点,储存程序串。你用一个帐号可以实现指定的请求。确信这个帐号可以执行存取而不是其他功能。这个帐号不能直接查询表或者添加和更新任何存取程序外部的数据。即使你的网络崩溃了,数据仍然可以被提取,黑客将不能实行任何数据操作。
20、要做到这点,打开一个你建立的存取程序点击在窗口右上方的允许按钮。你将得到一个所有得到允许访问你工作的数据库的用户帐号的列表。选择,插入,更新和删除条将出现,但是这些存取程序不能操作所有那里没有相应的对话框。优秀的数据库保护程序的第一步是保护你的数据。它能被强有力的保护还是完全失效取决于你怎么在 Dreamweaver MX 建立你的请求。Dreamweaver MX 证明是一个网络数据驱动的重要部分。不管是用户指令还是扩充内容,你都想知道谁在线从而方便你能控制系统和监控他们的操作。有代表性的就是建立一个有用户名和口令的帐号验证系统,可以独立于数据库进行检测。你怎么搜集用户信息然后传送到数据库需
21、要注意 Dreamweaver。这个缺省的帐号只是简单的搜集用户名和口令用来实现 SQL 请求。这也容易理解因为可以允许你的程序设计有很大的弹性,但是它对程序代码不安全。你的请求怎么写,匿名用户怎么登陆,都是一个成功的帐号系统要支持的。有的人建议 Macromedia 应该使这些操作有更安全的方法,但那不必要,它会产生一些无用的东西。你可以用动态的方式自己改正这个问题,允许你自己控制你的数据进程。当一个服务器记录进程正在初始化时,你可以询问缺省的和运行状态的用户信息。这就使服务器可以进行 SQL 状态的测试,一旦哪里有数据不支持可以发现。这里有 2 个要点要记住。首先,不要在有效数据区支持缺省
22、量。它对真实数据检测是方便的,可以让用户不能简单的只是填写一些空白信息。第二,仔细思考你现在使用的运行量。例如,为了解决匿名用户问题,你可以用简单的 HTML 代码。不要用 Request(“username“),要用HTMLEncode(Request(“username“)。这个 HTML 的代码可以使匿名用户用 HTML 的方式(象., “ = “ they dont need a server application to run them. They are often created locally and then uploaded to a web server when a
23、connection is made through a Data Source Name (DSN), a hard-coded connection path (DSNless connection), or a server-specific method like Server.MapPath in ASP. ISAM databases are inexpensive and easy to use. They are also easy to compromise if you dont follow a few simple steps to protect them.First
24、, take care where you store the database file. If at all possible, store the database file in a folder that is above the root of your website on the server. For instance, if the physical path to your website on the web server is c:websitesmywebsite, then the root folder mywebsite and all the folders
25、 underneath it are accessible from a browser. This means that if you store your database file in the folder c:websitesmywebsitedatabase, someone who knew or guessed the name of your file could download it from your site by simply browsing to Because the server would have no associated program with
26、which to run an MDB file, it would allow the user to download the file.Second, you can avoid the possibility of a user downloading your database by performing a simple operation that takes advantage of a bug in Windows NT and Windows 2000 Server. Encrypt the database in Access and rename its extensi
27、on from .mdb to .asp. Then, use the .asp filename in a DSN-less connection. Because the database is encrypted and named with the .asp extension, the ASP server will try to process it as ASP-and will fail and throw an ASP tag error if a user tries to download the file.Finally, assign your database a
28、username and password. Microsoft Access, for instance, comes with the default username, Admin. Until a password is assigned for the Admin user, none is required. So whenever the database file is accessed, the program assumes that it is to log in the Admin user with a blank password. If someone is ab
29、le to find and download your database file, there will be nothing stopping that person from opening it and examining your data.Securing database serversDatabase servers are full-featured data store applications like Microsoft SQL Server and Oracle. (I wont get into middle-ground applications like My
30、SQL but some of the same concepts apply.) There are three things you need to take into consideration when securing applications that run on databases that are accessible to the Internet: physical security, virtual security, and internal security.There are several aspects to the physical security of
31、your database. They range from how your computers themselves are protected to how your network is set up. How much control you have over these issues varies depending on whether you run your own data center or purchase a hosted solution. Regardless of your situation, you should make sure that the en
32、vironment you construct or the solution you purchase meets the security level necessary for your project, or else make other arrangements.The physical security of your database involves several facets. First is the location of the computers that host your data. There are several points to remember w
33、hen choosing where to set up your data center: The area should be separated from general office traffic. Ideally, you will be able to lock the room or area to keep out nosey visitors. The machines should be raised off the floor. You can, of course, purchase expensive raised flooring, but a good set
34、of shelves can accomplish the same thing. Either way, you want the computers a few inches off the floor so that minor water intrusion does not short them out. The area should be well ventilated and cooled. CPUs and hard drives need good circulation to help keep them cool. Placing exhaust ports up ag
35、ainst the wall, or using an area that does not have sufficient air conditioning, is asking for trouble. Allow room for power protection. In addition to power-loss protection, good power protection units also condition the power coming in to remove spikes that can damage electronic equipment and take
36、 your data offline. Remember that most professional units require a 30-Amp circuit and twist-lock receptacles, so make sure you are able to provide that power to the server area. Fire is an important hazard to consider and can be an expensive one to plan for in a data center environment. Typical fir
37、e suppression systems use water. Because water is bad for electronics, data centers often utilize a foam system that puts out fires without soaking the computers. If you cannot afford this kind of system, make sure you do a good job maintaining backups. In addition to the location of your servers, m
38、ake sure that you do not invite prying eyes by leaving the computers logged in or leaving the Enterprise Manager running with a table of sensitive data open. Many security procedures are geared toward keeping honest people honest. Dont discount the need to take these simple security steps when your
39、office is subject to visitors or employees who have no need to access database information.Securing the networkAlthough there are a number of steps that you can take to augment the security of your network, there are two general topics that bear discussion here. This is not a network topology articl
40、e and I cant provide near the level of detail that you will need to implement these tools successfully, but a brief description may send you in the right direction. (There are numerous resources available to help you with the details, too.) The two network tools that you might find useful are proxie
41、s and firewalls .You should know that although a firewall and proxy may perform similar tasks, they are by no means the same thing. The main purpose of a proxy server is to serve as a gateway from a private network to a public network and to offer some caching capability to a number of client machin
42、es accessing the Internet through it. A firewall provides a detailed method of separating and protecting private networks, public networks, DMZs (demilitarized zones), and remote access to private networks. That said, a proxy server can offer some limited protection to your online SQL Server.Using p
43、roxy serversLike Microsofts Proxy Server, proxy servers provide a level of translation between a private and public network. For instance, you might construct a private network at your office by assigning non-routable IP addresses to all client machines (say, anything between 192.168.0.1 and 192.168
44、.0.255). This network is private because that IP range, as well as a couple of others, has been deemed as non-routable by the people who deem such things. Those addresses are safe to be used by any network of computers without fear of conflicting with other hosts on the Internet and without fear tha
45、t those addresses can be accessed from the Internet.When a private network wants to access a public network, like the Internet, without making the client computers visible to the outside world, a proxy server can be used. The proxy server (usually through a piece of software on the client that manag
46、es the connection) takes requests from the private network computers and delivers them to the Internet in their place, acting as a proxy. When the responses come back, the proxy server receives them and dispatches them to the correct client computer. In this way, all of your client computers can acc
47、ess the Internet over your T1 connection without being exposed themselves. The proxy does this by using two network interfaces: one with a private network IP address and one with a public network IP address.This address translation service can also be used to expose certain parts of a private networ
48、k to the Internet through the proxy interface. In the case of SQL Server, access to the SQL service itself can be exposed through Proxy Server. All requests to SQL Server come through port 1433 by default. So if you can expose just port 1433 of a SQL Server, then legitimate activity can proceed with
49、out exposing the computer itself to the Internet. Microsoft provides a way to do just that. You can set your SQL Server up behind Proxy Server by following these steps:1. Install Proxy Server and get it up and running on the private and public networks. 2. Install the Proxy Client software on your SQL server, which has only a private network IP address. 3. Create a file called wspcfg.ini (which stands for “Winsock PC configuration“) on the SQL server. This is just a text file with th
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。