Поделиться через


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 свойство в классе . Например, чтобы запросить возможность доступа к неуправляемый код, следуйте инструкции 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)

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

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