ReflectionPermission Класс

Определение

Внимание

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

Управляет доступом к недоступным типам и членам через System.Reflection API. Управляет некоторыми функциями System.Reflection.Emit API.

public ref class ReflectionPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
[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 ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Наследование
ReflectionPermission
Атрибуты
Реализации

Комментарии

Предостережение

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

Без ReflectionPermissionэтого код может использовать отражение для доступа только к общедоступным членам объектов. Код с ReflectionPermission соответствующими ReflectionPermissionFlag флагами может получить доступ к protected объектам и private элементам.

Предостережение

Так как ReflectionPermission можно предоставить доступ к недоступным типам и членам, рекомендуется не предоставлять ReflectionPermission интернет-код, за исключением флага ReflectionPermissionFlag.RestrictedMemberAccess . RestrictedMemberAccess разрешает доступ к недоступным членам с ограничением, что набор предоставления недоступных членов должен быть равным или подмножествам, набором кода, который обращается к недоступным членам.

Для некоторых функций отражения, таких как выдача символов отладки, требуются ReflectionPermission флаг ReflectionPermissionFlag.ReflectionEmit .

Дополнительную информацию см. в перечислении ReflectionPermissionFlag.

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

Имя Описание
ReflectionPermission(PermissionState)
Устаревшие..

Инициализирует новый экземпляр ReflectionPermission класса с полным или неограниченным разрешением, как указано.

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

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

Свойства

Имя Описание
Flags
Устаревшие..

Возвращает или задает тип отражения, разрешенного для текущего разрешения.

Методы

Имя Описание
Assert()
Устаревшие..

Объявляет, что вызывающий код может получить доступ к ресурсу, защищенному запросом разрешений, с помощью кода, вызывающего этот метод, даже если вызывающие элементы в стеке не были предоставлены разрешения на доступ к ресурсу. Использование Assert() может создавать проблемы безопасности.

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

Создает и возвращает идентичную копию текущего разрешения.

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

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

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

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

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

Определяет, равен ли указанный CodeAccessPermission объект текущему CodeAccessPermissionобъекту.

(Унаследовано от CodeAccessPermission)
FromXml(SecurityElement)
Устаревшие..

Восстанавливает разрешение с заданным состоянием из кодировки XML.

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

Получает хэш-код для объекта, который подходит для CodeAccessPermission использования в хэш-алгоритмах и структурах данных, таких как хэш-таблица.

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

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

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

Создает и возвращает разрешение, которое является пересечением текущего разрешения и указанного разрешения.

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

Определяет, является ли текущее разрешение подмножеством указанного разрешения.

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

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

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

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

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

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

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

Создает и возвращает строковое представление текущего объекта разрешений.

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

Создает xml-кодировку разрешения и текущего состояния.

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

Создает разрешение, которое является объединением текущего разрешения и указанного разрешения.

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

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