ReflectionPermission Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Внимание!
Code Access Security is not supported or honored by the runtime.
Управляет доступом к закрытым типам и членам через API System.Reflection. Управляет некоторыми функциями API System.Reflection.Emit.
public ref class ReflectionPermission sealed : 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}")]
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
type ReflectionPermission = class
inherit CodeAccessPermission
interface 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
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
- Наследование
- Атрибуты
- Реализации
Комментарии
Внимание!
Безопасность доступа к коду (CAS) является устаревшей во всех версиях платформа .NET Framework и .NET. В последних версиях .NET заметки CAS не учитываются и при использовании API, связанных с CAS, возникают ошибки. Разработчикам следует искать альтернативные способы выполнения задач безопасности.
Без ReflectionPermissionкода можно использовать отражение для доступа только к открытым членам объектов . Код с ReflectionPermission соответствующими ReflectionPermissionFlag флагами и может обращаться protected
к элементам и private
объектов .
Внимание!
Так как ReflectionPermission может предоставлять доступ к не открытым типам и членам, рекомендуется не предоставлять ReflectionPermission интернет-код, кроме как с флагом ReflectionPermissionFlag.RestrictedMemberAccess . RestrictedMemberAccess разрешает доступ к элементам, не являющиеся открытыми, с ограничением на то, что набор разрешений для не являющихся открытыми членами должен быть равен набору разрешений кода, который обращается к не открытым членам, или его подмножество.
Для некоторых функций испускаемых отражений, таких как выдача отладочных символов, требуется ReflectionPermissionReflectionPermissionFlag.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) |
Устаревшие..
Создает разрешение, представляющее собой объединение текущего и указанного разрешений. |