Specifies whether the runtime creates Publisher evidence for code access security (CAS).
Code Access Security (CAS) has been deprecated across all versions of .NET Framework and .NET. Recent versions of .NET do not honor CAS annotations and produce errors if CAS-related APIs are used. Developers should seek alternative means of accomplishing security tasks.
Attributes and Elements
The following sections describe attributes, child elements, and parent elements.
Specifies whether the runtime creates Publisher evidence.
||Does not create Publisher evidence.|
||Creates Publisher evidence. This is the default.|
||The root element in every configuration file used by the common language runtime and .NET Framework applications.|
||Contains information about runtime initialization options.|
In the .NET Framework 4 and later, this element has no effect on assembly load times.
The common language runtime (CLR) tries to verify the Authenticode signature at load time to create Publisher evidence for the assembly. However, by default, most applications do not need Publisher evidence. Standard CAS policy does not rely on the PublisherMembershipCondition. You should avoid the unnecessary startup cost associated with verifying the publisher signature unless your application executes on a computer with custom CAS policy, or is intending to satisfy demands for PublisherIdentityPermission in a partial-trust environment. (Demands for identity permissions always succeed in a full-trust environment.)
We recommend that services use the
<generatePublisherEvidence> element to improve startup performance. Using this element can also help avoid delays that can cause a time-out and the cancellation of the service startup.
This element can be used only in the application configuration file.
The following example shows how to use the
<generatePublisherEvidence> element to disable checking for CAS publisher policy for an application.
<configuration> <runtime> <generatePublisherEvidence enabled="false"/> </runtime> </configuration>