Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Enumeración SecurityAction

 

Especifica las acciones de seguridad que se pueden realizar mediante la seguridad declarativa.

Espacio de nombres:   System.Security.Permissions
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public enum SecurityAction

Nombre de miembroDescripción
Assert

El código de llamada puede tener acceso al recurso identificado por el objeto de permiso actual, incluso si los autores de la llamada situados en una posición más alta de la pila no tienen permiso para tener acceso al recurso (vea Uso del método Assert).

Demand

Todos los autores de llamada de la pila necesitan que se les conceda el permiso especificado por el objeto de permiso actual.

Deny

Obsoleto. La posibilidad de acceder al recurso especificado por el objeto de permiso actual se deniega a los llamadores, incluso si a estos se les ha concedido acceso al recurso (consulte Utilizar el método Deny).

InheritanceDemand

A la clase derivada que hereda la clase o invalida un método se le debe haber concedido el permiso especificado.

LinkDemand

Es necesario que el llamador inmediato haya recibido el permiso especificado. No lo use en .NET Framework 4. Para la confianza completa, use SecurityCriticalAttribute; para la confianza parcial, use Demand.

PermitOnly

Solo se puede acceder a los recursos especificados por este objeto de permiso, aunque al código se le haya concedido permiso de acceso a otros recursos.

RequestMinimum

Obsoleto. Solicitud de los permisos mínimos necesarios para que se ejecute el código. Esta acción solo se puede usar en el ámbito del ensamblado.

RequestOptional

Obsoleto. Solicitud de permisos adicionales que son opcionales (no es necesaria la ejecución). Esta solicitud rechaza implícitamente todos los demás permisos no solicitados específicamente. Esta acción solo se puede usar en el ámbito del ensamblado.

RequestRefuse

Obsoleto. Solicitud de que al código de llamada no se le concedan permisos que se puedan usar indebidamente. Esta acción solo se puede usar en el ámbito del ensamblado.

The following table describes the time that each security action takes place and the targets that it supports.

System_CAPS_importantImportante

In the net_v40_long, runtime support has been removed for enforcing the F:System.Security.Permissions.SecurityAction.Deny, F:System.Security.Permissions.SecurityAction.RequestMinimum, F:System.Security.Permissions.SecurityAction.RequestOptional, and F:System.Security.Permissions.SecurityAction.RequestRefuse permission requests. These requests should not be used in code that is based on net_v40_short or later. For more information about this and other changes, see Security Changes in the .NET Framework Version 4.0.

You should not useF:System.Security.Permissions.SecurityAction.LinkDemand in the net_v40_short. Instead, use the T:System.Security.SecurityCriticalAttribute to restrict usage to fully trusted applications, or use F:System.Security.Permissions.SecurityAction.Demand to restrict partially trusted callers.

Declaration of security action

Time of action

Targets supported

LinkDemand (do not use in the .NET Framework 4)

Just-in-time compilation

Class, method

InheritanceDemand

Load time

Class, method

Demand

Run time

Class, method

Assert

Run time

Class, method

Deny (obsolete in the .NET Framework 4)

Run time

Class, method

PermitOnly

Run time

Class, method

RequestMinimum (obsolete in the .NET Framework 4)

Grant time

Assembly

RequestOptional (obsolete in the .NET Framework 4)

Grant time

Assembly

RequestRefuse (obsolete in the .NET Framework 4)

Grant time

Assembly

For additional information about attribute targets, see T:System.Attribute.

This example shows how to notify the CLR that code in called methods has only T:System.Security.Permissions.IsolatedStoragePermission, and also demonstrates how to write and read from isolated storage.

using System;
using System.Security.Permissions;
using System.IO.IsolatedStorage;
using System.IO;

// Notify the CLR to only grant IsolatedStorageFilePermission to called methods. 
// This restricts the called methods to working only with storage files that are isolated 
// by user and assembly.
[IsolatedStorageFilePermission(SecurityAction.PermitOnly, UsageAllowed = IsolatedStorageContainment.AssemblyIsolationByUser)]
public sealed class App
{
    static void Main()
    {
        WriteIsolatedStorage();

    }
    private static void WriteIsolatedStorage()
    {
        // Attempt to create a storage file that is isolated by user and assembly.
        // IsolatedStorageFilePermission granted to the attribute at the top of this file 
        // allows CLR to load this assembly and execution of this statement.
        using (Stream s = new IsolatedStorageFileStream("AssemblyData", FileMode.Create, IsolatedStorageFile.GetUserStoreForAssembly()))
        {

            // Write some data out to the isolated file.
            using (StreamWriter sw = new StreamWriter(s))
            {
                sw.Write("This is some test data.");
            }
        }

        // Attempt to open the file that was previously created.
        using (Stream s = new IsolatedStorageFileStream("AssemblyData", FileMode.Open, IsolatedStorageFile.GetUserStoreForAssembly()))
        {
            // Read the data from the file and display it.
            using (StreamReader sr = new StreamReader(s))
            {
                Console.WriteLine(sr.ReadLine());
            }
        }
    }
}

// This code produces the following output.
//
//  Some test data.

.NET Framework
Disponible desde 1.1
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Volver al principio
Mostrar: