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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 6: .NET <strong>Security</strong> Overview 143Table 6.2 Permission Types Within the System.<strong>Security</strong>.Permissions Namespace (continued)PermissionOleDbPermissionDescriptionRequired to use the ADO.NET OLE DB data provider. (Full trust isalso required.)OraclePermissionPerformanceCounterPermissionPrincipalPermissionPrintingPermissionReflectionPermissionRegistryPermission<strong>Security</strong>PermissionServiceControllerPermissionSocketPermissionSqlClientPermissionUIPermission<strong>Web</strong>PermissionRequired to use the ADO.NET Oracle data provider. (Full trust isalso required.)Required to access system performance counters.Used to restrict access to classes <strong>and</strong> methods based on theidentity <strong>and</strong> role membership of the user.Required to access printers.Controls access to metadata. Code with the appropriateReflectionPermission can obtain information about the public,protected, <strong>and</strong> private members of a type.Controls read, write, <strong>and</strong> create access to registry keys (includingsubkeys). It can also be used to restrict all access to the registry.This is a meta-permission that controls the use of the securityinfrastructure itself.Can be used to restrict access to the Windows Service ControlManager <strong>and</strong> the ability to start, stop, <strong>and</strong> pause services.Can be used to restrict the ability to make or accept aconnection on a transport address.Can be used to restrict access to SQL Server data sources.Can be used to restrict access to the clipboard <strong>and</strong> to restrictthe use of windows to “safe” windows in an attempt to avoidattacks that mimic system dialog boxes that prompt for sensitiveinformation such as passwords.Can be used to control access to HTTP Internet resources.The <strong>Security</strong>Permission class warrants special attention because it represents therights of code to perform privileged operations, including asserting code accesspermissions, calling unmanaged code, using reflection, <strong>and</strong> controlling policy <strong>and</strong>evidence, among others. The precise right determined by the <strong>Security</strong>Permissionclass is determined by its Flags property, which must be set to one of the enumeratedvalues defined by the <strong>Security</strong>PermissionFlags enumerated type (for example,<strong>Security</strong>PermissionFlags.UnmanagedCode).

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

Saved successfully!

Ooh no, something went wrong!