SuppressUnmanagedCodeSecurityAttribute クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > SuppressUnmanagedCodeSecurityAttribute クラスの意味・解説 

SuppressUnmanagedCodeSecurityAttribute クラス

スタック ウォーク使用せずマネージ コードアンマネージ コード呼び出すことができるようにします。このクラス継承できません。

名前空間: System.Security
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Method
 Or AttributeTargets.Interface Or AttributeTargets.Delegate,
 AllowMultiple:=True, Inherited:=False)> _
Public NotInheritable Class
 SuppressUnmanagedCodeSecurityAttribute
    Inherits Attribute
Dim instance As SuppressUnmanagedCodeSecurityAttribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method|AttributeTargets.Interface|AttributeTargets.Delegate,
 AllowMultiple=true, Inherited=false)] 
public sealed class SuppressUnmanagedCodeSecurityAttribute
 : Attribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Class|AttributeTargets::Method|AttributeTargets::Interface|AttributeTargets::Delegate,
 AllowMultiple=true, Inherited=false)] 
public ref class SuppressUnmanagedCodeSecurityAttribute
 sealed : public Attribute
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method|AttributeTargets.Interface|AttributeTargets.Delegate,
 AllowMultiple=true, Inherited=false) */ 
public final class SuppressUnmanagedCodeSecurityAttribute
 extends Attribute
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method|AttributeTargets.Interface|AttributeTargets.Delegate,
 AllowMultiple=true, Inherited=false) 
public final class SuppressUnmanagedCodeSecurityAttribute
 extends Attribute
解説解説
注意に関するメモ注意

この属性は特に注意して使用してください使用方法を誤ると、セキュリティの脆弱性発生につながるおそれがあります

この属性は、ランタイム セキュリティ チェック効率低下させずに、ネイティブ コード読み込む必要のあるメソッド適用できますアンマネージ コード呼び出すときに実行されスタック ウォーク実行時省かれ大幅に効率向上しますクラス内でこの属性使用すると、格納されているすべてのメソッド適用されます。

一般的にマネージ コードアンマネージ コード呼び出す (PInvoke または COM 相互運用機能使用してネイティブ コード呼び出す) 場合は、アンマネージ コード呼び出すために必要なアクセス許可すべての呼び出し元に対して与えられるようにするために、UnmanagedCode アクセス許可要求されます。この明示的な属性適用することによって、開発者実行時要求が行われないようにすることができます開発者は、アンマネージ コードへの移行が他の手段によって十分に保護されていることを確認する必要がありますUnmanagedCode アクセス許可要求は、リンク時にまだ発生します。たとえば、関数 A が関数 B を呼び出し関数 B が SuppressUnmanagedCodeSecurityAttributeマークされている場合は、関数 A にアンマネージ コードアクセス許可与えられているかどうかジャスト イン タイム コンパイル時にチェックされますが、その後実行時にはチェックされません。

この属性は、PInvoke メソッド (または PInvoke メソッド格納しているクラス)、または相互運用呼び出し使用するインターフェイスの定義に適用する場合にだけ有効です。その他のすべてのコンテキストでは無視されます。

この属性は、アンマネージ コード通じてシステム リソースアクセスできるようにするクラス実装するときに役立ちますアンマネージ コードへのアクセス許可がないコードは、この属性を持つクラス呼び出してアンマネージ コードアクセスできますこのようにアンマネージ コードアクセスする場合、この属性を持つクラスライタによってクラスセキュリティ設定されるようにプログラムされている場合限り、安全が確保されます。それ以外場合は、この属性は危険であり、この属性使用するコード不正に使用される可能性あります

この属性宣言セキュリティ属性ではありませんが、標準属性です。SecurityAttribute ではなく Attribute から派生します。

継承階層継承階層
System.Object
   System.Attribute
    System.Security.SuppressUnmanagedCodeSecurityAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からSuppressUnmanagedCodeSecurityAttribute クラスを検索した結果を表示しています。
Weblioに収録されているすべての辞書からSuppressUnmanagedCodeSecurityAttribute クラスを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からSuppressUnmanagedCodeSecurityAttribute クラス を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SuppressUnmanagedCodeSecurityAttribute クラス」の関連用語

SuppressUnmanagedCodeSecurityAttribute クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SuppressUnmanagedCodeSecurityAttribute クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS