FieldInfo.IsSecuritySafeCritical プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のフィールドが、現在の信頼レベルでセキュリティ セーフ クリティカルであるかどうかを示す値を取得します。
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
。
注釈
、IsSecuritySafeCritical、および プロパティはIsSecurityCritical、IsSecurityTransparent共通言語ランタイム (CLR) によって決定された、現在の信頼レベルでのフィールドの透過性レベルを報告します。 これらのプロパティの組み合わせを次の表に示します。
セキュリティ レベル | IsSecurityCritical | IsSecuritySafeCritical | IsSecurityTransparent |
---|---|---|---|
重大 | true |
false |
false |
セーフ クリティカル | true |
true |
false |
透明 | false |
false |
true |
これらのプロパティを使用する方が、アセンブリとその型とメンバーのセキュリティ注釈を調べたり、現在の信頼レベルを確認したり、ランタイムの規則を複製したりするよりもはるかに簡単です。
重要
部分信頼アセンブリの場合、このプロパティの値はアセンブリの現在の信頼レベルによって異なります。 アセンブリが部分的に信頼されたアプリケーション ドメイン (たとえば、セキュリティで保護されたアプリケーション ドメイン) に読み込まれる場合、ランタイムはアセンブリのセキュリティ注釈を無視します。 アセンブリとそのすべての型は透明として扱われます。 ランタイムは、アセンブリが完全に信頼されたアプリケーション ドメイン (デスクトップ アプリケーションの既定のアプリケーション ドメインなど) に読み込まれる場合にのみ、部分信頼アセンブリのセキュリティ注釈に注意を払います。 これに対し、信頼されたアセンブリ (グローバル アセンブリ キャッシュにインストールされている厳密な名前付きアセンブリ) は、アプリケーション ドメインの信頼レベルに関係なく常に完全信頼で読み込まれるため、現在の信頼レベルは常に完全に信頼されます。 および プロパティを使用して、アセンブリとアプリケーション ドメインの現在の信頼レベルをAssembly.IsFullyTrustedAppDomain.IsFullyTrusted確認できます。
リフレクションと透明度の詳細については、「 リフレクションのセキュリティに関する考慮事項」を参照してください。 透明性の詳細については、「 セキュリティの変更」を参照してください。
適用対象
こちらもご覧ください
.NET