So the notion of security needs to include making sure that you're working with trusted, proven e-providers. User access security is, ideally, based on the principle of 'something you have and something you know'. Procedural security is enabled through the granting of rights to functions and data. Good database and workflow design, encompassing security considerations, can minimize the impact on application usability. HTTP is a seriously heavyweight protocol, and is ideal for security purposes.
Firewalls can then restrict by protocol, and only one port is used.
Next, we have embedded problems. Buggy software has led to security breaches, so pro-actively monitor identified problems and apply the necessary patches. For example, a previous version of a popular development tool allowed users, under certain circumstances, to view the source code and returned query data, including passwords. Finally, here's a useful checklist when it comes to deployment. Add password control to every directory so that no directory is browsable.