11.07.2015 Views

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 14: Building Secure Data Access 397Deployment ConsiderationsA securely designed <strong>and</strong> developed data access component can still be vulnerable toattack if it is not deployed in a secure manner. A common deployment practice is forthe data access code <strong>and</strong> database to reside on separate servers. The servers are oftenseparated by an internal firewall, which introduces additional deploymentconsiderations. Developers <strong>and</strong> administrators, be aware of the following issues:● Firewall restrictions● Connection string management● Login account configuration● Logon auditing● Data privacy <strong>and</strong> integrity on the networkFirewall RestrictionsIf you connect to SQL Server through a firewall, configure the firewall, client, <strong>and</strong>server. You configure the client by using the SQL Server Client Network Utility <strong>and</strong>you configure the database server by using the Server Network Utility. By default,SQL Server listens on TCP port 1433, although you can change this. You must openthe chosen port at the firewall.Depending on the SQL Server authentication mode you choose <strong>and</strong> yourapplication’s use of distributed transactions, you may need to open several additionalports at the firewall:● If your application uses Windows authentication to connect to SQL Server, thenecessary ports to support Kerberos or NTLM authentication must be open.For networks that do not use Active Directory, TCP port 139 is usually required forWindows authentication. For more information about port requirements, seeTechNet articles, “TCP <strong>and</strong> UDP Port Assignments,” at http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/tcpip/part4/tcpappc.asp, <strong>and</strong> “<strong>Security</strong>Considerations for Administrative Authority,” at http://www.microsoft.com/technet/security/bestprac/bpent/sec2/seconaa.asp●If your application uses distributed transactions, for example automated COM+transactions, you might also need to configure your firewall to allow DTC trafficto flow between separate DTC instances, <strong>and</strong> between the DTC <strong>and</strong> resourcemanagers such as SQL Server.For full configuration details, see the “Ports” section in Chapter 18, “Securing YourDatabase Server.”

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!