SecurityPermission Constructors

Definition

Initializes a new instance of the SecurityPermission class.

Overloads

SecurityPermission(PermissionState)

Initializes a new instance of the SecurityPermission class with either restricted or unrestricted permission as specified.

SecurityPermission(SecurityPermissionFlag)

Initializes a new instance of the SecurityPermission class with the specified initial set state of the flags.

SecurityPermission(PermissionState)

Source:
SecurityPermission.cs
Source:
SecurityPermission.cs
Source:
SecurityPermission.cs
Source:
SecurityPermission.cs

Initializes a new instance of the SecurityPermission class with either restricted or unrestricted permission as specified.

public SecurityPermission (System.Security.Permissions.PermissionState state);

Parameters

state
PermissionState

One of the PermissionState values.

Exceptions

The state parameter is not a valid value of PermissionState.

Remarks

Creates either fully restricted (None) or Unrestricted access to all security permissions.

Applies to

.NET 9 (package-provided) والإصدارات الأخرى
منتج الإصدارات
.NET 8 (package-provided), 9 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

SecurityPermission(SecurityPermissionFlag)

Source:
SecurityPermission.cs
Source:
SecurityPermission.cs
Source:
SecurityPermission.cs
Source:
SecurityPermission.cs

Initializes a new instance of the SecurityPermission class with the specified initial set state of the flags.

public SecurityPermission (System.Security.Permissions.SecurityPermissionFlag flag);

Parameters

flag
SecurityPermissionFlag

The initial state of the permission, represented by a bitwise OR combination of any permission bits defined by SecurityPermissionFlag.

Exceptions

The flag parameter is not a valid value of SecurityPermissionFlag.

Examples

The following code example shows the use of the SecurityPermission constructor to create instances of the SecurityPermission class that are used to demand security permissions. For the complete code example, see the SecurityPermissionAttribute(SecurityAction) constructor.

public static void DemandSecurityPermissions()
{
    Console.WriteLine("\nExecuting DemandSecurityPermissions.\n");
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.Assertion);
        Console.WriteLine("Demanding SecurityPermissionFlag.Assertion");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.Assertion succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.Assertion failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlAppDomain);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlAppDomain");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlAppDomain succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlAppDomain failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlDomainPolicy);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlDomainPolicy");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlDomainPolicy succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlDomainPolicy failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlEvidence);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlEvidence");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlEvidence succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlEvidence failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlPolicy);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlPolicy");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlPolicy succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlPolicy failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlPrincipal);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlPrincipal");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlPrincipal succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlPrincipal failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.ControlThread);
        Console.WriteLine("Demanding SecurityPermissionFlag.ControlThread");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlThread succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.ControlThread failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.Execution);
        Console.WriteLine("Demanding SecurityPermissionFlag.Execution");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.Execution succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.Execution failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.Infrastructure);
        Console.WriteLine("Demanding SecurityPermissionFlag.Infrastructure");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.Infrastructure succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.Infrastructure failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.RemotingConfiguration);
        Console.WriteLine("Demanding SecurityPermissionFlag.RemotingConfiguration");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.RemotingConfiguration succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.RemotingConfiguration failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.SerializationFormatter);
        Console.WriteLine("Demanding SecurityPermissionFlag.SerializationFormatter");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.SerializationFormatter succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.SerializationFormatter failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.SkipVerification);
        Console.WriteLine("Demanding SecurityPermissionFlag.SkipVerification");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.SkipVerification succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.SkipVerification failed: " + e.Message);
    }
    try
    {
        SecurityPermission sp =
            new SecurityPermission(SecurityPermissionFlag.UnmanagedCode);
        Console.WriteLine("Demanding SecurityPermissionFlag.UnmanagedCode");
        sp.Demand();
        Console.WriteLine("Demand for SecurityPermissionFlag.UnmanagedCode succeeded.");
    }
    catch (Exception e)
    {
        Console.WriteLine("Demand for SecurityPermissionFlag.UnmanagedCode failed: " + e.Message);
    }
}

Applies to

.NET 9 (package-provided) والإصدارات الأخرى
منتج الإصدارات
.NET 8 (package-provided), 9 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9