SecurityPermissionAttribute Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Внимание
Code Access Security is not supported or honored by the runtime.
Позволяет применять действия 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.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
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
- Наследование
- Атрибуты
Комментарии
Предостережение
Безопасность доступа к коду (CAS) устарела во всех версиях платформ .NET Framework, и .NET. Последние версии .NET не учитывают заметки CAS и создают ошибки, если используются API, связанные с CAS. Разработчики должны искать альтернативные средства выполнения задач безопасности.
Область объявления, которую разрешено, зависит от используемого SecurityAction .
Сведения о безопасности, объявленные атрибутом безопасности, хранятся в метаданных целевого атрибута и получают доступ к системе во время выполнения. Атрибуты безопасности используются только для декларативной безопасности. Для обеспечения императивной безопасности используйте соответствующий класс разрешений.
При использовании SecurityPermissionAttribute класса следуйте действиям безопасности с запрошенными разрешениями. Каждое разрешение безопасности, которое можно запрашивать, как определено в SecurityPermissionFlag перечислении, имеет соответствующее свойство в SecurityPermissionAttribute классе. Например, чтобы требовать возможность доступа к неуправляемого кода, следуйте инструкции спроса с параметром свойства, который запрашивается, как показано ниже. 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, например добавлять приемники контекста удаленного взаимодействия, приемники Envoy и динамические приемники. |
| 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) |