ProvideAssemblyEvidence Method

HostSecurityManager.ProvideAssemblyEvidence Method (Assembly, Evidence)


Provides the assembly evidence for an assembly being loaded.

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

public virtual Evidence ProvideAssemblyEvidence(
	Assembly loadedAssembly,
	Evidence inputEvidence


Type: System.Reflection.Assembly

The loaded assembly.

Type: System.Security.Policy.Evidence

Additional evidence to add to the assembly evidence.

Return Value

Type: System.Security.Policy.Evidence

The evidence to be used for the assembly.

This method can be overridden in a derived class.

This method is called whenever an assembly is loaded, either implicitly or explicitly. The passed in parameters are the assembly being loaded, and the computed evidence from the common language runtime. The host implementation can choose to extend or reduce the evidence. The return value is the evidence to be used for the assembly. The base implementation always returns the evidence object passed in as the inputEvidence parameter.


See the Notes to Inheritors for the HostSecurityManager class for critical implementation information.

The following example shows how to override the ProvideAssemblyEvidence method for a custom host security manager. This example is part of a larger example provided for the HostSecurityManager class.

public override Evidence ProvideAssemblyEvidence(Assembly loadedAssembly, Evidence evidence)
    Console.WriteLine("Provide assembly evidence for: " + (loadedAssembly == null ? "Unknown" : loadedAssembly.ToString()) + ".");
    if (evidence == null)
        return null;

    evidence.AddAssemblyEvidence(new CustomEvidenceType());
    return evidence;

.NET Framework
Available since 2.0
Return to top
© 2015 Microsoft