HostProtectionAttribute
Allows the use of declarative security actions to determine host protection requirements. This class cannot be inherited.
                namespace System.Security.Permissions
{
    [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Delegate, AllowMultiple = true, Inherited = false)]
    public sealed class HostProtectionAttribute : CodeAccessSecurityAttribute
    {
        public bool ExternalProcessMgmt { get; set; }
        public bool ExternalThreading { get; set; }
        public bool MayLeakOnAbort { get; set; }
        public HostProtectionResource Resources { get; set; }
        public bool SecurityInfrastructure { get; set; }
        public bool SelfAffectingProcessMgmt { get; set; }
        public bool SelfAffectingThreading { get; set; }
        public bool  { get; set; }
        public bool Synchronization { get; set; }
        public bool UI { get; set; }
        public HostProtectionAttribute()
            : base((SecurityAction)0)
        {
        }
        public HostProtectionAttribute(SecurityAction action)
            : base((SecurityAction)0)
        {
        }
        public override IPermission CreatePermission()
        {
            return null;
        }
    }
}