MethodBase.IsSecuritySafeCritical Свойство

Определение

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

public:
 virtual property bool IsSecuritySafeCritical { bool get(); };
public virtual bool IsSecuritySafeCritical { get; }
member this.IsSecuritySafeCritical : bool
Public Overridable ReadOnly Property IsSecuritySafeCritical 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 свойства.

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

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

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