MethodBase.IsSecurityCritical Свойство

Определение

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

public:
 virtual property bool IsSecurityCritical { bool get(); };
public virtual bool IsSecurityCritical { get; }
member this.IsSecurityCritical : bool
Public Overridable ReadOnly Property IsSecurityCritical As Boolean

Значение свойства

true Значение , если текущий метод или конструктор имеет критическое значение для безопасности или безопасности на текущем уровне доверия; false Значение , если это прозрачно.

Комментарии

Значение IsSecurityCritical, IsSecuritySafeCriticalи IsSecurityTransparent свойства сообщают уровень прозрачности метода или конструктора на текущем уровне доверия, как определено средой CLR. Сочетания этих свойств показаны в следующей таблице:

Уровень безопасности IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
Критически важно true false false
Безопасно-критический true true false
Transparent false false true

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

Important

Для сборок с частичным доверием значение этого свойства зависит от текущего уровня доверия сборки. Если сборка загружается в частично доверенный домен приложения (например, в домен изолированного приложения), среда выполнения игнорирует заметки о безопасности сборки. Сборка и все его типы рассматриваются как прозрачные. Среда выполнения обращает внимание на заметки безопасности сборки с частичным доверием, только если эта сборка загружается в полностью доверенный домен приложения (например, в домен приложения по умолчанию классического приложения). В отличие от этого, надежная сборка (т. е. сборка с строгим именем, установленная в глобальном кэше сборок), всегда загружается с полным доверием независимо от уровня доверия домена приложения, поэтому его текущий уровень доверия всегда полностью доверяется. Текущие уровни доверия сборок и доменов приложений можно определить с помощью Assembly.IsFullyTrusted и AppDomain.IsFullyTrusted свойства.

Дополнительные сведения о отражении и прозрачности см. в разделе "Вопросы безопасности" для отражения. Сведения о прозрачности см. в разделе "Изменения безопасности".

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

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