Key Security Concepts
The Microsoft .NET Framework offers security transparency, code access security and role-based security to help address security concerns about mobile code and to provide support that enables components to determine what users are authorized to do. These security mechanisms use a simple, consistent model so that developers familiar with code access security can easily use role-based security, and vice versa. Both code access security and role-based security are implemented using a common infrastructure supplied by the common language runtime.
Starting with the .NET Framework version 4, security transparency is the default enforcement mechanism. Security transparency separates code that runs as part of the application from code that runs as part of the infrastructure. For more information, see Security-Transparent Code.
Because they use the same model and infrastructure, code access security and role-based security share several underlying concepts, which are described in this section. Make sure that you are familiar with these concepts before reading the documentation for .NET Framework code access security and role-based security.