public sealed class SecurityPermissionAttribute : CodeAccessSecurityAttribute { // Public Constructors public SecurityPermissionAttribute(SecurityAction action); // Public Instance Properties public bool Assertion{set; get; } public bool ControlAppDomain{set; get; } public bool ControlDomainPolicy{set; get; } public bool ControlEvidence{set; get; } public bool ControlPolicy{set; get; } public bool ControlPrincipal{set; get; } public bool ControlThread{set; get; } public bool Execution{set; get; } public SecurityPermissionFlag Flags{set; get; } public bool Infrastructure{set; get; } public bool RemotingConfiguration{set; get; } public bool SerializationFormatter{set; get; } public bool SkipVerification{set; get; } public bool UnmanagedCode{set; get; } // Public Instance Methods public override IPermission CreatePermission( ); // overrides SecurityAttribute }
This permission attribute provides declarative security support for the SecurityPermission code-access permission. To configure the set of security operations represented by a SecurityPermissionAttribute, assign values from the SecurityPermissionFlag enumeration to the Flags property. Alternately, SecurityPermissionAttribute provides properties that map to the individual values defined in the SecurityPermissionFlag enumeration. Setting these properties to true allows the configuration of a SecurityPermissionAttribute to represent any set of security operations. Setting Unrestricted to true creates a SecurityPermissionAttribute that represents access to all security operations and is equivalent to the SecurityPermissionFlag.AllFlags value.