<Type Name="SecurityPermissionAttribute" FullName="System.Security.Permissions.SecurityPermissionAttribute" FullNameSP="System_Security_Permissions_SecurityPermissionAttribute" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public sealed serializable SecurityPermissionAttribute extends System.Security.Permissions.CodeAccessSecurityAttribute" />
  <TypeSignature Language="C#" Value="public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute" />
  <MemberOfLibrary>BCL</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
  <Base>
    <BaseTypeName>System.Security.Permissions.CodeAccessSecurityAttribute</BaseTypeName>
  </Base>
  <Interfaces />
  <Attributes>
    <Attribute>
      <AttributeName>System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Struct | System.AttributeTargets.Constructor | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)</AttributeName>
    </Attribute>
    <Attribute>
      <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <summary>
      <para>Used to apply a security action and a set of
      security permissions to program code.</para>
    </summary>
    <remarks>
      <block subset="none" type="note">
        <para>The security permissions are defined in the <see cref="T:System.Security.Permissions.SecurityPermissionFlag" /> enumeration and are specified using
      the <see cref="P:System.Security.Permissions.SecurityPermissionAttribute.Flags" /> property. </para>
        <para> The security information declared by a
      security attribute is stored in the metadata of the attribute target, and is accessed by
      the system at run-time. Security attributes are used for
      declarative security only. For imperative security, use the corresponding
      permission class, <see cref="T:System.Security.Permissions.SecurityPermission" />.</para>
        <para>The allowable <see cref="T:System.Security.Permissions.SecurityPermissionAttribute" /> targets are
   determined by the <see cref="T:System.Security.Permissions.SecurityAction" /> passed to the constructor.</para>
      </block>
    </remarks>
    <example>
      <para> In the following example, the attribute target is
      an assembly. The attribute declares that the
      ability to assert permissions
      on behalf of callers is the minimum permission required for the assembly to execute.</para>
      <para>
        <c>[assembly:SecurityPermissionAttribute(SecurityAction.RequestMinimum, Assertion=true)]
   </c>
      </para>
    </example>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(valuetype System.Security.Permissions.SecurityAction action)" />
      <MemberSignature Language="C#" Value="public SecurityPermissionAttribute (System.Security.Permissions.SecurityAction action);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="action" Type="System.Security.Permissions.SecurityAction" />
      </Parameters>
      <Docs>
        <param name="action"> A <see cref="T:System.Security.Permissions.SecurityAction" /> value.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.Security.Permissions.SecurityPermissionAttribute" /> class
 with the specified <see cref="T:System.Security.Permissions.SecurityAction" /> value.</para>
        </summary>
        <remarks>To be added.</remarks>
        <exception cref="T:System.ArgumentException">
          <paramref name="action" /> is not a valid <see cref="T:System.Security.Permissions.SecurityAction" /> value. </exception>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Assertion">
      <MemberSignature Language="C#" Value="public bool Assertion { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="BindingRedirects">
      <MemberSignature Language="C#" Value="public bool BindingRedirects { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="ControlAppDomain">
      <MemberSignature Language="C#" Value="public bool ControlAppDomain { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ControlDomainPolicy">
      <MemberSignature Language="C#" Value="public bool ControlDomainPolicy { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ControlEvidence">
      <MemberSignature Language="C#" Value="public bool ControlEvidence { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ControlPolicy">
      <MemberSignature Language="C#" Value="public bool ControlPolicy { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ControlPrincipal">
      <MemberSignature Language="C#" Value="public bool ControlPrincipal { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ControlThread">
      <MemberSignature Language="C#" Value="public bool ControlThread { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="CreatePermission">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual class System.Security.IPermission CreatePermission()" />
      <MemberSignature Language="C#" Value="public override System.Security.IPermission CreatePermission ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Security.IPermission</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Returns a new <see cref="T:System.Security.Permissions.SecurityPermission" /> object
   that contains the security information of the current instance.</para>
        </summary>
        <returns>
          <para>A new <see cref="T:System.Security.Permissions.SecurityPermission" /> object
   with the security information of the current instance.</para>
        </returns>
        <remarks>
          <block subset="none" type="note">
            <para>Applications typically do not call this method; it is intended for use by the
         system.</para>
            <para>The security information declared by a security attribute is stored in the
         metadata of the attribute target, and is accessed by the system at run-time. The
         system uses the object returned by this method to convert the security
         information of the current instance into the form stored in metadata.</para>
            <para>This method overrides <see cref="M:System.Security.Permissions.SecurityAttribute.CreatePermission" />.</para>
          </block>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Execution">
      <MemberSignature Language="C#" Value="public bool Execution { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Flags">
      <MemberSignature Language="ILASM" Value=".property valuetype System.Security.Permissions.SecurityPermissionFlag Flags { public hidebysig specialname instance valuetype System.Security.Permissions.SecurityPermissionFlag get_Flags() public hidebysig specialname instance void set_Flags(valuetype System.Security.Permissions.SecurityPermissionFlag value) }" />
      <MemberSignature Language="C#" Value="public System.Security.Permissions.SecurityPermissionFlag Flags { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Security.Permissions.SecurityPermissionFlag</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets values that define the
 permissions declared by the current instance.</para>
        </summary>
        <value>
          <para> One or more <see cref="T:System.Security.Permissions.SecurityPermissionFlag" /> values.
 To specify multiple values in a set operation,
 use the bitwise OR operator.</para>
        </value>
        <remarks>To be added.</remarks>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Infrastructure">
      <MemberSignature Language="C#" Value="public bool Infrastructure { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="RemotingConfiguration">
      <MemberSignature Language="C#" Value="public bool RemotingConfiguration { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SerializationFormatter">
      <MemberSignature Language="C#" Value="public bool SerializationFormatter { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SkipVerification">
      <MemberSignature Language="C#" Value="public bool SkipVerification { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnmanagedCode">
      <MemberSignature Language="C#" Value="public bool UnmanagedCode { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
</Type>
