PolicyLevel Class

 

Represents the security policy levels for the common language runtime. This class cannot be inherited.

Namespace:   System.Security.Policy
Assembly:  mscorlib (in mscorlib.dll)

System.Object
  System.Security.Policy.PolicyLevel

<SerializableAttribute>
<ComVisibleAttribute(True)>
Public NotInheritable Class PolicyLevel

NameDescription
System_CAPS_pubpropertyFullTrustAssemblies

Obsolete.Gets a list of StrongNameMembershipCondition objects used to determine whether an assembly is a member of the group of assemblies used to evaluate security policy.

System_CAPS_pubpropertyLabel

Gets a descriptive label for the policy level.

System_CAPS_pubpropertyNamedPermissionSets

Gets a list of named permission sets defined for the policy level.

System_CAPS_pubpropertyRootCodeGroup

Gets or sets the root code group for the policy level.

System_CAPS_pubpropertyStoreLocation

Gets the path where the policy file is stored.

System_CAPS_pubpropertyType

Gets the type of the policy level.

NameDescription
System_CAPS_pubmethodAddFullTrustAssembly(StrongName)

Obsolete.Adds a StrongNameMembershipCondition corresponding to the specified StrongName to the list of StrongNameMembershipCondition objects used to determine whether an assembly is a member of the group of assemblies that should not be evaluated.

System_CAPS_pubmethodAddFullTrustAssembly(StrongNameMembershipCondition)

Obsolete.Adds the specified StrongNameMembershipCondition to the list of StrongNameMembershipCondition objects used to determine whether an assembly is a member of the group of assemblies that should not be evaluated.

System_CAPS_pubmethodAddNamedPermissionSet(NamedPermissionSet)

Adds a NamedPermissionSet to the current policy level.

System_CAPS_pubmethodChangeNamedPermissionSet(String, PermissionSet)

Replaces a NamedPermissionSet in the current policy level with the specified PermissionSet.

System_CAPS_pubmethodSystem_CAPS_staticCreateAppDomainLevel()

Obsolete.Creates a new policy level for use at the application domain policy level.

System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodFromXml(SecurityElement)

Reconstructs a security object with a given state from an XML encoding.

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetNamedPermissionSet(String)

Returns the NamedPermissionSet in the current policy level with the specified name.

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodRecover()

Replaces the configuration file for this PolicyLevel with the last backup (reflecting the state of policy prior to the last time it was saved) and returns it to the state of the last save.

System_CAPS_pubmethodRemoveFullTrustAssembly(StrongName)

Obsolete.Removes an assembly with the specified StrongName from the list of assemblies the policy level uses to evaluate policy.

System_CAPS_pubmethodRemoveFullTrustAssembly(StrongNameMembershipCondition)

Obsolete.Removes an assembly with the specified StrongNameMembershipCondition from the list of assemblies the policy level uses to evaluate policy.

System_CAPS_pubmethodRemoveNamedPermissionSet(NamedPermissionSet)

Removes the specified NamedPermissionSet from the current policy level.

System_CAPS_pubmethodRemoveNamedPermissionSet(String)

Removes the NamedPermissionSet with the specified name from the current policy level.

System_CAPS_pubmethodReset()

Returns the current policy level to the default state.

System_CAPS_pubmethodResolve(Evidence)

Resolves policy based on evidence for the policy level, and returns the resulting PolicyStatement.

System_CAPS_pubmethodResolveMatchingCodeGroups(Evidence)

Resolves policy at the policy level and returns the root of a code group tree that matches the evidence.

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

System_CAPS_pubmethodToXml()

Creates an XML encoding of the security object and its current state.

System_CAPS_importantImportant

Starting with the .NET Framework 4, the common language runtime (CLR) is moving away from providing security policy for computers. We recommend that you use Windows Software Restriction Policies (SRP) or AppLocker as a replacement for CLR security policy. The information in this topic applies to the .NET Framework version 3.5 and earlier; it does not apply to the .NET Framework 4 and later. For more information about this and other changes, see Security Changes in the .NET Framework.

The highest level of security policy is enterprise-wide. Successive lower levels of hierarchy represent further policy restrictions, but can never grant more permissions than allowed by higher levels. The following policy levels are implemented:

  1. Enterprise: Security policy for all managed code in an enterprise.

  2. Machine: Security policy for all managed code run on the computer.

  3. User: Security policy for all managed code run by the user.

  4. Application domain: Security policy for all managed code in an application.

A policy level consists of a set of code groups organized into a single rooted tree (see CodeGroup), a set of named permission sets that are referenced by the code groups to specify permissions to be granted to code belonging to the code group, and a list of fully-trusted assemblies.

Use SecurityManager.PolicyHierarchy to enumerate the policy levels.

.NET Framework
Available since 1.1

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: