HostSecurityPolicyResolver HostSecurityPolicyResolver HostSecurityPolicyResolver HostSecurityPolicyResolver Class


Provides a way to customize ASP.NET behavior at run time that overrides the ASP.NET code access security policy.

public ref class HostSecurityPolicyResolver
public class HostSecurityPolicyResolver
type HostSecurityPolicyResolver = class
Public Class HostSecurityPolicyResolver


In complex Web hosting environments such as SharePoint and Web farms, you might have to extend the ASP.NET code access security policy. By extending the HostSecurityPolicyResolver type, you can implement custom security policy behavior that overrides the ASP.NET code access security policy.

Configuring a HostSecurityPolicyResolver Class

In the configuration files, you can configure a custom HostSecurityPolicyResolver instance by adding the HostSecurityPolicyResolverType attribute to the element. The HostSecurityPolicyResolverType attribute can be set to the name of the custom HostSecurityPolicyResolver type that will be loaded by ASP.NET. The attribute value contains the fully qualified name of the derived type. By default, .NET Framework 4 does not set this attribute.

The following syntax shows how to configure the attribute:

  Level = "[Full|High|Medium|Low|Minimal]"  
  permissionSetName = "name of the permission set"  
  hostSecurityPolicyResolverType = "security policy resolution type"  

The PermissionSetName attribute in the trust element can be set to a string value that indicates which named permission set in a partial trust configuration file should be used. By default, ASP.NET 4 sets this attribute to "ASP.Net".

The HostSecurityPolicyResolverType attribute in the trust element indicates the custom HostSecurityPolicyResolver object that will be loaded by ASP.NET. If the attribute is set to an empty string, the application uses the ASP.NET default logic for determining the permissions for the assembly. The HostSecurityPolicyResolver type attribute cannot be set to a null value.


The assembly that contains a derived HostSecurityPolicyResolver type must run with full trust, because the custom type provides information that ASP.NET can use to elevate assemblies to full trust. In general, you should deploy a custom policy resolver type in the global assembly cache, where it will run with full trust.

When you implement this class, you must override the ResolvePolicy method. Depending on the Evidence instance that is passed as a parameter, the method returns an enumeration value that indicates the security policy to apply to the assembly. The set of available security policies is determined by the HostSecurityPolicyResults enumeration.


HostSecurityPolicyResolver() HostSecurityPolicyResolver() HostSecurityPolicyResolver() HostSecurityPolicyResolver()

Initializes a new instance of the HostSecurityPolicyResolver class.


Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ResolvePolicy(Evidence) ResolvePolicy(Evidence) ResolvePolicy(Evidence) ResolvePolicy(Evidence)

Gets a value that indicates the security policy that should be applied to an assembly.

ToString() ToString() ToString() ToString()

Returns a string that represents the current object.

(Inherited from Object)


for full trust for the inheriting type. This class cannot be inherited by partially trusted code.

Applies to

See also