This chapter has presented some of the human error issues you need to consider for your
Now that you’ve spent time looking at these human error issues, it’s time to create a hit list of your own. One of the best ways to produce more secure applications is to use a checklist to ensure you have all of the bases covered. Of course, this isn’t the only step you need to take, but many developers leave this step out of their plans for any of a variety of reasons. Good security begins with a standardized and measured approach to maintaining application quality.
Chapter 4 shows how to use various rule-based security approaches to maintain a secure environment for .NET applications. It pursues a detailed description of some of the relevant .NET Framework namespaces and
Defining the Differences in .NET Role-Based Security
Detecting Permissions with the Permission View Tool
Working with the .NET Framework Configuration Tool
Developing Applications that Use Declarative Security
Developing Applications that Use Imperative Security
Creating a Secure Registry Environment
Creating a Secure Desktop Application Installation
Developing Managed Components and Controls
Testing Your Desktop Application
The vast majority of the non-code security problems that you’ll encounter are
| Note |
Social engineering
is an extension of psychology where the cracker exploits a common human attribute such as
|
This chapter won’t show you how to control users—that’s
You’ll also learn a few code access techniques in this chapter. These techniques relate to the use of code access to offset some of the problems that role-based security can’t address adequately. If you can’t keep the user from creating a security breach, perhaps the code can at least make the security breach less severe or even prevent it from occurring in the first place. Code access security is an essential tool in the war on security problems. You really do need to combine both security techniques, along with good coding practice, to achieve a secure system. (Make sure you read about the problems developers have in Chapter 3 before you judge the user too harshly based on this introduction—developers can play a big part in security problems too.)