SecurityManager.PolicyHierarchy Method ()


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Note: This API is now obsolete.

Provides an enumerator to access the security policy hierarchy by levels, such as computer policy and user policy.

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

<ObsoleteAttribute("This method is obsolete and will be removed in a future release of the .NET Framework. See for more information.")>
Public Shared Function PolicyHierarchy As IEnumerator

Return Value

Type: System.Collections.IEnumerator

An enumerator for PolicyLevel objects that compose the security policy hierarchy.

Exception Condition

This method uses code access security (CAS) policy, which is obsolete in the .NET Framework 4. To enable CAS policy for compatibility with earlier versions of the .NET Framework, use the <legacyCasPolicy> element.


The code that calls this method does not have SecurityPermissionFlag.ControlPolicy.

The returned enumerator provides successive PolicyLevel objects that represent the policy at the respective (machine, user, enterprise, application domain) level of the hierarchy. These objects are the live policy objects; altering these objects can have unpredictable results.

Minimum policy hierarchy consists of a machine level, an enterprise level, and a user level. However, the hierarchy can include additional levels.


for the ability to view and modify policy. Associated enumeration: SecurityPermissionFlag.ControlPolicy

.NET Framework
Available since 1.1
Return to top