SecurityPermissionAttribute Класс

Определение

Внимание!

Code Access Security is not supported or honored by the runtime.

Внимание!

CAS support is not available with Silverlight applications.

Разрешает применять меры безопасности для SecurityPermission к коду с помощью декларативной безопасности. Этот класс не наследуется.

public ref class SecurityPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Obsolete("CAS support is not available with Silverlight applications.")]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Obsolete("CAS support is not available with Silverlight applications.")>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
Наследование
Атрибуты

Комментарии

Внимание!

Безопасность доступа к коду (CAS) не рекомендуется использовать во всех версиях платформа .NET Framework и .NET. В последних версиях .NET заметки CAS не учитываются и при использовании API, связанных с CAS, возникают ошибки. Разработчикам следует искать альтернативные средства для выполнения задач безопасности.

Область допустимого объявления зависит от используемого SecurityAction объекта .

Сведения о безопасности, объявленные атрибутом безопасности, хранятся в метаданных целевого объекта атрибута и доступны системе во время выполнения. Атрибуты безопасности используются только для декларативной безопасности. Для обеспечения императивной безопасности используйте соответствующий класс разрешений.

При использовании SecurityPermissionAttribute класса следуйте действиям по обеспечению безопасности с запрашиваемыми разрешениями. Каждое разрешение безопасности, которое можно запросить, как определено в перечислении SecurityPermissionFlag , имеет соответствующее SecurityPermissionAttribute свойство в классе . Например, чтобы запросить возможность доступа к неуправляемый код, выполните инструкцию demand с запрашиваемым параметром свойства, как показано ниже: SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true).

Примечание

Исключением из эквивалентности между перечислением SecurityPermissionFlag и SecurityPermissionAttribute свойствами является то, что AllFlags значение перечисления представлено свойством Unrestricted (наследуемым от SecurityAttribute класса ). Чтобы затребовать все разрешения безопасности, укажите Unrestricted=true.

Конструкторы

SecurityPermissionAttribute(SecurityAction)
Устаревшие..
Устаревшие..

Инициализирует новый экземпляр класса SecurityPermissionAttribute указанным значением SecurityAction.

Свойства

Action
Устаревшие..
Устаревшие..

Возвращает или задает действие по обеспечению безопасности.

(Унаследовано от SecurityAttribute)
Assertion
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на подтверждение того, что все вызывающие объекты этого кода имеют необходимое разрешение на выполнение операции.

BindingRedirects
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, имеет ли код разрешение на выполнение переадресации привязки в файле конфигурации приложения.

ControlAppDomain
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на управление AppDomain.

ControlDomainPolicy
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на изменение или управление политикой безопасности домена.

ControlEvidence
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на изменение или управление свидетельством.

ControlPolicy
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на просмотр и управление политикой безопасности.

ControlPrincipal
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на управление текущим участником.

ControlThread
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на обход управления потоками.

Execution
Устаревшие..
Устаревшие..

Получает или задает значение, указывающее, объявлено ли разрешение на выполнение кода.

Flags
Устаревшие..
Устаревшие..

Возвращает или задает все флаги разрешения, составляющие разрешения SecurityPermission.

Infrastructure
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, может ли код подключиться к инфраструктуре среды CLR (например, добавление Remoting Context Sinks, Envoy Sinks и Dynamic Sinks).

RemotingConfiguration
Устаревшие..
Устаревшие..

Получает или задает значение, указывающее, может ли код настраивать каналы и типы удаленного взаимодействия.

SerializationFormatter
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, может ли код использовать модуль форматирования сериализации для сериализации или десериализации объекта.

SkipVerification
Устаревшие..
Устаревшие..

Получает или задает значение, указывающее, объявлено ли разрешение на обход проверки кода.

TypeId
Устаревшие..
Устаревшие..

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)
UnmanagedCode
Устаревшие..
Устаревшие..

Возвращает или задает значение, указывающее, объявлено ли разрешение на вызов неуправляемого кода.

Unrestricted
Устаревшие..
Устаревшие..

Возвращает или задает значение, определяющее, объявлено ли полное (неограниченное) разрешение доступа к ресурсу, защищенному атрибутом.

(Унаследовано от SecurityAttribute)

Методы

CreatePermission()
Устаревшие..
Устаревшие..

Создает и возвращает новый объект SecurityPermission.

Equals(Object)
Устаревшие..
Устаревшие..

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()
Устаревшие..
Устаревшие..

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
GetType()
Устаревшие..
Устаревшие..

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()
Устаревшие..
Устаревшие..

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)
Устаревшие..
Устаревшие..

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.

(Унаследовано от Attribute)
MemberwiseClone()
Устаревшие..
Устаревшие..

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()
Устаревшие..
Устаревшие..

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
Устаревшие..
Устаревшие..

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Устаревшие..
Устаревшие..

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)
Устаревшие..
Устаревшие..

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Устаревшие..
Устаревшие..

Предоставляет доступ к открытым свойствам и методам объекта.

(Унаследовано от Attribute)

Применяется к

См. также раздел