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.

302 Part III: Building Secure <strong>Web</strong> <strong>Application</strong>sDisclosure of Configuration DataMany applications store sensitive data such as database connection strings in theCOM+ catalog using object constructor strings. These strings are retrieved <strong>and</strong>passed to an object by COM+ when the object is created. Sensitive configuration datashould be encrypted prior to storage in the catalog.RepudiationThe repudiation threat arises when a user denies performing an operation ortransaction, <strong>and</strong> you have insufficient evidence to counter the claim. Auditing shouldbe performed across all application tiers. Serviced components should log useractivity in the middle tier. Serviced components usually have access to the originalcaller’s identity because front-end <strong>Web</strong> applications usually enable impersonation inEnterprise Services scenarios.Design ConsiderationsBefore you start writing code, there are a number of important issues to consider atdesign time. The key considerations are:● Role-based authorization● Sensitive data protection● Audit requirements● <strong>Application</strong> activation type● Transactions● Code access securityRole-Based AuthorizationFor effective role-based authorization using COM+ roles, ensure that the originalcaller’s security context is used for the call to the serviced component. This allowsyou to perform granular role-based authorization based on the caller’s groupmembership. If an ASP.NET <strong>Web</strong> application calls your serviced components, thismeans that the <strong>Web</strong> application needs to impersonate its callers before calling yourcomponent.Sensitive Data ProtectionIf your serviced components h<strong>and</strong>le sensitive data, such as employee details,financial transactions, <strong>and</strong> health records, consider how to protect the data as itcrosses the network. If your application does not run in a secure Internet Data Center(IDC) environment, where IPSec provides transport level encryption, an alternativeoption is to use RPC encryption. For this you must use the Packet Privacyauthentication level. For more information, see the “Sensitive Data” section later inthis chapter.

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

Saved successfully!

Ooh no, something went wrong!