July 28, 2014
Specifies that code or an assembly performs security-critical operations.
Assembly: mscorlib (in mscorlib.dll)
[AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Constructor|AttributeTargets.Delegate|AttributeTargets.Enum|AttributeTargets.Field|AttributeTargets.Interface|AttributeTargets.Method|AttributeTargets.Struct, AllowMultiple = false, Inherited = false)] public sealed class SecurityCriticalAttribute : Attribute
Thetype exposes the following members.
|Equals||Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.)|
|Finalize||Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)|
|GetHashCode||Returns the hash code for this instance. (Inherited from Attribute.)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|Match||When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.)|
|MemberwiseClone||Creates a shallow copy of the current Object. (Inherited from Object.)|
|ToString||Returns a string that represents the current object. (Inherited from Object.)|
Types and members that have the cannot be used by Windows Phone application code. Security-critical types and members can be used only by trusted code in the .NET Framework for Windows Phone class library.
Security-critical operations are actions that affect code access security, such as elevation of user rights, calling unsafe managed code, and so forth. The attribute must be applied to code for the code to perform security-critical operations. Operations that are not security-critical are described as either transparent or safe-critical. Transparent code cannot call security-critical code. However, transparent code can call types and members that are marked with the SecuritySafeCriticalAttribute attribute.
For assemblies that are installed with Windows Phone, the presence of the at the assembly level identifies the entire assembly as security-critical. The is ignored when it is applied in user assemblies, that is, in assemblies that are not installed with the Windows Phone library assemblies and that are not signed with a specific strong-name key.