AllowPartiallyTrustedCallersAttributeとは? わかりやすく解説

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

AllowPartiallyTrustedCallersAttribute クラス

厳密な名前付きアセンブリを、部分的に信頼されているコードから呼び出すことができるようにします。この宣言ない場合、この種のアセンブリ使用できるのは、完全に信頼されている呼び出し元だけです。このクラス継承できません。

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

<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple:=False, Inherited:=False)>
 _
Public NotInheritable Class
 AllowPartiallyTrustedCallersAttribute
    Inherits Attribute
Dim instance As AllowPartiallyTrustedCallersAttribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=false,
 Inherited=false)] 
public sealed class AllowPartiallyTrustedCallersAttribute
 : Attribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Assembly, AllowMultiple=false,
 Inherited=false)] 
public ref class AllowPartiallyTrustedCallersAttribute
 sealed : public Attribute
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=false,
 Inherited=false) */ 
public final class AllowPartiallyTrustedCallersAttribute
 extends Attribute
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=false,
 Inherited=false) 
public final class AllowPartiallyTrustedCallersAttribute
 extends Attribute
解説解説

AllowPartiallyTrustedCallersAttribute は、厳密な名前付きアセンブリによってアセンブリ レベル適用され場合にだけ有効です。アセンブリ レベル属性適用する方法詳細については、「属性適用」を参照してください

既定では、部分的に信頼されコードによる使用許可するこの属性が、アセンブリ レベル明示的に適用されていない厳密な名前付きアセンブリは、セキュリティ ポリシーによって完全信頼与えられている他のアセンブリからだけ呼び出すことができます。この制限は、アセンブリ内でパブリックアクセス可能なすべてのクラスすべてのパブリック メソッド保護されているメソッドFullTrust の LinkDemand を使用することによって、強制的に適用されます。部分的に信頼されているコードから呼び出されることを想定しているアセンブリでは、AllowPartiallyTrustedCallersAttribute使用することによって、そのこと宣言できます。この属性は、アセンブリ レベル宣言します。たとえば、C# の場合は、[assembly:AllowPartiallyTrustedCallers]宣言しVisual Basic の場合は、<assembly:AllowPartiallyTrustedCallers>宣言します

注意に関するメモ注意

アセンブリ レベルのこの属性存在する場合FullTrustLinkDemand セキュリティ チェック実行するという既定動作回避され、完全または部分的に信頼されているすべてのアセンブリは、このアセンブリ呼び出すことができます

この属性存在する場合指定されているクラス レベルまたはモジュール レベル宣言セキュリティ属性含め、他のすべてのセキュリティ チェックそのまま機能します。この属性によって、完全信頼呼び出し元のみ暗黙的に許可するということはなくなります

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

詳細については、「部分信頼コードからのライブラリ使用」を参照してください

使用例使用例

AllowPartiallyTrustedCallersAttribute クラス使用する例を次に示します

' The following HTML code can be used to call the user control in this
 sample.
'
'<HTML>
'    <BODY>
'        <OBJECT id="usercontrol" classid="usercontrol.dll#UserControl.UserControl1"
 width="800"
'        height="300" style="font-size:12;">
'        </OBJECT>
'        <p>
'    </BODY>
'</HTML>
' To run this test control you must create a strong name key, snkey.snk,
 and 
' a code group that gives full trust to assemblies signed with snkey.snk.
' The user control displays an OpenFileDialog box, then displays a text
 box containing the name of 
' the file selected and a list box that displays the contents of the
 file.  The selected file must 
' contain text in order for the control to display the data properly.
' Caution  This sample demonstrates the use of the Assert method.  Calling
 Assert removes the 
' requirement that all code in the call chain must be granted permission
 to access the specified 
' resource, it can open up security vulnerabilities if used incorrectly
 or inappropriately. Therefore, 
' it should be used with great caution.  Assert should always be followed
 with a RevertAssert 
' command to restore the security settings.

Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Drawing
Imports System.Data
Imports System.Windows.Forms
Imports System.IO
Imports System.Security
Imports System.Security.Permissions
Imports System.Reflection
Imports System.Runtime.CompilerServices
Imports Microsoft.VisualBasic


' This strong name key is used to create a code group that gives permissions
 to this assembly.

<Assembly: AssemblyKeyFile("snKey.snk")> 

<Assembly: AssemblyVersion("1.0.0.0")> 
' The AllowPartiallyTrustedCallersAttribute requires the assembly to
 be signed with a strong name key.
' This attribute is necessary since the control is called by either
 an intranet or Internet
' Web page that should be running under restricted permissions.

<Assembly: AllowPartiallyTrustedCallers()> 

' The userControl1 displays an OpenFileDialog box, then displays a text
 box containing the name of 
' the file selected and a list box that displays the contents of the
 file.  The selected file must 
' contain text in order for the control to display the data properly.

'Demand the zone requirement for the calling application.
<ZoneIdentityPermissionAttribute(SecurityAction.Demand, Zone:=SecurityZone.Intranet)>
 _
Public Class UserControl1
    Inherits System.Windows.Forms.UserControl
    Private WithEvents textBox1 As
 System.Windows.Forms.TextBox
    Private listBox1 As System.Windows.Forms.ListBox
    ' Required designer variable.
    Private components As System.ComponentModel.Container
 = Nothing


    Public Sub New()
        ' This call is required by the Windows.Forms Form Designer.
        InitializeComponent()

        ' The OpenFileDialog box should not require any special permissions.
        Dim fileDialog As New
 OpenFileDialog
        If fileDialog.ShowDialog() = DialogResult.OK Then
            ' Reading the name of the selected file from the OpenFileDialog
 box
            ' and reading the file requires FileIOPermission.  The user
 control should 
            ' have this permission granted through its code group; the
 Web page that calls the 
            ' control should not have this permission.  The Assert command
 prevents a stack walk 
            ' that would fail because the caller does not have the required
 FileIOPermission.  
            ' The use of Assert can open up security vulnerabilities
 if used incorrectly or 
            ' inappropriately. Therefore, it should be used with great
 caution.
            ' The Assert command should be followed by a RevertAssert
 as soon as the file operation 
            ' is completed.
            Dim fileIOPermission As New
 FileIOPermission(PermissionState.Unrestricted)
            fileIOPermission.Assert()
            textBox1.Text = fileDialog.FileName
            ' Display the contents of the file in the text box.
            Dim fsIn As New
 FileStream(textBox1.Text, FileMode.Open, FileAccess.Read, FileShare.Read)
            Dim sr As New
 StreamReader(fsIn)

            ' Process every line in the file
            Dim Line As String
            Line = sr.ReadLine()
            While Not (Line Is
 Nothing)
                listBox1.Items.Add(Line)
                Line = sr.ReadLine()
            End While
            ' It is very important to call RevertAssert to restore the
 stack walk for
            ' file operations.
            fileIOPermission.RevertAssert()
        End If
    End Sub 'New


    ' Clean up any resources being used.
    Protected Overloads Sub
 Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is
 Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub 'Dispose


    ' Required method for Designer support - do not modify 
    ' the contents of this method with the code editor.
    Private Sub InitializeComponent()
        Me.textBox1 = New System.Windows.Forms.TextBox
        Me.listBox1 = New System.Windows.Forms.ListBox
        Me.SuspendLayout()
        ' 
        ' textBox1
        ' 
        Me.textBox1.Location = New System.Drawing.Point(208,
 112)
        Me.textBox1.Name = "textBox1"
        Me.textBox1.Size = New System.Drawing.Size(320,
 20)
        Me.textBox1.TabIndex = 0
        Me.textBox1.Text = "textBox1"
        ' 
        ' listBox1
        ' 
        Me.listBox1.Location = New System.Drawing.Point(200,
 184)
        Me.listBox1.Name = "listBox1"
        Me.listBox1.Size = New System.Drawing.Size(336,
 108)
        Me.listBox1.TabIndex = 1
        ' 
        ' UserControl1
        ' 
        Me.Controls.Add(listBox1)
        Me.Controls.Add(textBox1)
        Me.Name = "UserControl1"
        Me.Size = New System.Drawing.Size(592,
 400)
        Me.ResumeLayout(False)
    End Sub 'InitializeComponent

    Private Sub UserControl1_Load(ByVal
 sender As Object, ByVal
 e As System.EventArgs) Handles MyBase.Load
    End Sub 'UserControl1_Load

    Private Sub textBox1_TextChanged(ByVal
 sender As Object, ByVal
 e As System.EventArgs) Handles textBox1.TextChanged
    End Sub 'textBox1_TextChanged
End Class 'UserControl1 
// The following HTML code can be used to call the user control in this
 sample.
//
//<HTML>
//    <BODY>
//        <OBJECT id="usercontrol" classid="usercontrol.dll#UserControl.UserControl1"
 width="800"
//        height="300" style="font-size:12;">
//        </OBJECT>
//        <p>
//    </BODY>
//</HTML>

// To run this test control you must create a strong name key, snkey.snk,
 and 
// a code group that gives full trust to assemblies signed with snkey.snk.

// The user control displays an OpenFileDialog box, then displays a
 text box containing the name of 
// the file selected and a list box that displays the contents of the
 file.  The selected file must 
// contain text in order for the control to display the data properly.

// Caution  This sample demonstrates the use of the Assert method. 
 Calling Assert removes the 
// requirement that all code in the call chain must be granted permission
 to access the specified 
// resource, it can open up security vulnerabilities if used incorrectly
 or inappropriately. Therefore, 
// it should be used with great caution.  Assert should always be followed
 with a RevertAssert 
// command to restore the security settings.


using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.IO;
using System.Security;
using System.Security.Permissions;
using System.Reflection;
using System.Runtime.CompilerServices;

// This strong name key is used to create a code group that gives permissions
 to this assembly.
[assembly: AssemblyKeyFile("snKey.snk")]
[assembly: AssemblyVersion("1.0.0.0")]

// The AllowPartiallyTrustedCallersAttribute requires the assembly to
 be signed with a strong name key.
// This attribute is necessary since the control is called by either
 an intranet or Internet
// Web page that should be running under restricted permissions.
[assembly:AllowPartiallyTrustedCallers]
namespace UserControl
{
    // The userControl1 displays an OpenFileDialog box, then displays
 a text box containing the name of 
    // the file selected and a list box that displays the contents of the
 file.  The selected file must 
    // contain text in order for the control to display the data properly.
    public class UserControl1 : System.Windows.Forms.UserControl
    {
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.ListBox listBox1;
        // Required designer variable.
        private System.ComponentModel.Container components = null;

              // Demand the zone requirement for the calling application.
              [ZoneIdentityPermission(SecurityAction.Demand, Zone = SecurityZone.Intranet)]
        public UserControl1()
        {
            // This call is required by the Windows.Forms Form Designer.
            InitializeComponent();

            // The OpenFileDialog box should not require any special
 permissions.
            OpenFileDialog fileDialog = new OpenFileDialog();
            if(fileDialog.ShowDialog() == DialogResult.OK)
            {
                // Reading the name of the selected file from the OpenFileDialog
 box
                // and reading the file requires FileIOPermission. 
 The user control should 
                // have this permission granted through its code group;
 the Web page that calls the 
                // control should not have this permission.  The Assert
 command prevents a stack walk 
                // that would fail because the caller does not have
 the required FileIOPermission.  
                // The use of Assert can open up security vulnerabilities
 if used incorrectly or 
                // inappropriately. Therefore, it should be used with
 great caution.
                // The Assert command should be followed by a RevertAssert
 as soon as the file operation 
                // is completed.
                new FileIOPermission(PermissionState.Unrestricted).Assert();
                textBox1.Text = fileDialog.FileName;
                // Display the contents of the file in the text box.
                FileStream fsIn = new FileStream(textBox1.Text,
 FileMode.Open, FileAccess.Read, 
                    FileShare.Read);
                StreamReader sr = new StreamReader(fsIn);
            
                // Process every line in the file
                for (String Line = sr.ReadLine(); Line != null;
 Line = sr.ReadLine()) 
                {
                    listBox1.Items.Add(Line);
                }
                // It is very important to call RevertAssert to restore
 the stack walk for
                // file operations.
                FileIOPermission.RevertAssert();
            }

        }

        // Clean up any resources being used.
        protected override void Dispose( bool
 disposing )
        {
            if( disposing )
            {
                if( components != null )
                    components.Dispose();
            }
            base.Dispose( disposing );
        }

        #region Component Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify 
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.listBox1 = new System.Windows.Forms.ListBox();
            this.SuspendLayout();
            // 
            // textBox1
            // 
            this.textBox1.Location = new System.Drawing.Point(208,
 112);
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(320,
 20);
            this.textBox1.TabIndex = 0;
            this.textBox1.Text = "textBox1";
            this.textBox1.TextChanged += new
 System.EventHandler(this.textBox1_TextChanged);
            // 
            // listBox1
            // 
            this.listBox1.Location = new System.Drawing.Point(200,
 184);
            this.listBox1.Name = "listBox1";
            this.listBox1.Size = new System.Drawing.Size(336,
 108);
            this.listBox1.TabIndex = 1;
            // 
            // UserControl1
            // 
            this.Controls.Add(this.listBox1);
            this.Controls.Add(this.textBox1);
            this.Name = "UserControl1";
            this.Size = new System.Drawing.Size(592,
 400);
            this.Load += new System.EventHandler(this.UserControl1_Load);
            this.ResumeLayout(false);

        }
        #endregion

        private void UserControl1_Load(object
 sender, System.EventArgs e)
        {
        
        }

        private void textBox1_TextChanged(object
 sender, System.EventArgs e)
        {
        
        }


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

AllowPartiallyTrustedCallersAttribute コンストラクタ

AllowPartiallyTrustedCallersAttribute クラス新しインスタンス初期化します。

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

Dim instance As New AllowPartiallyTrustedCallersAttribute
public AllowPartiallyTrustedCallersAttribute ()
public:
AllowPartiallyTrustedCallersAttribute ()
public AllowPartiallyTrustedCallersAttribute ()
public function AllowPartiallyTrustedCallersAttribute
 ()
解説解説
使用例使用例

このコンストラクタ使用例については、AllowPartiallyTrustedCallersAttribute クラストピック取り上げているコード例参照してください

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
AllowPartiallyTrustedCallersAttribute クラス
AllowPartiallyTrustedCallersAttribute メンバ
System.Security 名前空間

AllowPartiallyTrustedCallersAttribute プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ TypeId  派生クラス実装されている場合は、この Attribute一意識別子取得します。 ( Attribute から継承されます。)
参照参照

関連項目

AllowPartiallyTrustedCallersAttribute クラス
System.Security 名前空間

AllowPartiallyTrustedCallersAttribute メソッド


パブリック メソッドパブリック メソッド

  名前 説明
パブリック メソッド Equals  オーバーロードされます。 ( Attribute から継承されます。)
パブリック メソッド GetCustomAttribute  オーバーロードされますアセンブリモジュール、型のメンバ、またはメソッド パラメータ適用され指定した型のカスタム属性取得します。 ( Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされますアセンブリモジュール、型のメンバ、またはメソッド パラメータ適用されカスタム属性配列取得します。 ( Attribute から継承されます。)
パブリック メソッド GetHashCode  このインスタンスハッシュ コード返します。 ( Attribute から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 ( Object から継承されます。)
パブリック メソッド IsDefaultAttribute  派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラス既定値かどうか示します。 ( Attribute から継承されます。)
パブリック メソッド IsDefined  オーバーロードされます指定した型のカスタム属性が、アセンブリモジュール、型のメンバ、またはメソッド パラメータ適用されているかどうか判断します。 ( Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンス等しかどうかを示す値を返します。 ( Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 ( Object から継承されます。)
参照参照

関連項目

AllowPartiallyTrustedCallersAttribute クラス
System.Security 名前空間

AllowPartiallyTrustedCallersAttribute メンバ

厳密な名前付きアセンブリを、部分的に信頼されているコードから呼び出すことができるようにします。この宣言ない場合、この種のアセンブリ使用できるのは、完全に信頼されている呼び出し元だけです。このクラス継承できません。

AllowPartiallyTrustedCallersAttribute データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド AllowPartiallyTrustedCallersAttribute AllowPartiallyTrustedCallersAttribute クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ TypeId  派生クラス実装されている場合は、この Attribute一意識別子取得します。(Attribute から継承されます。)
パブリック メソッドパブリック メソッド
  名前 説明
パブリック メソッド Equals  オーバーロードされます。 ( Attribute から継承されます。)
パブリック メソッド GetCustomAttribute  オーバーロードされますアセンブリモジュール、型のメンバ、またはメソッド パラメータ適用され指定した型のカスタム属性取得します。 (Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされますアセンブリモジュール、型のメンバ、またはメソッド パラメータ適用されカスタム属性配列取得します。 (Attribute から継承されます。)
パブリック メソッド GetHashCode  このインスタンスハッシュ コード返します。 (Attribute から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 (Object から継承されます。)
パブリック メソッド IsDefaultAttribute  派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラス既定値かどうか示します。 (Attribute から継承されます。)
パブリック メソッド IsDefined  オーバーロードされます指定した型のカスタム属性が、アセンブリモジュール、型のメンバ、またはメソッド パラメータ適用されているかどうか判断します。 (Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンス等しかどうかを示す値を返します。 (Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 (Object から継承されます。)
参照参照

関連項目

AllowPartiallyTrustedCallersAttribute クラス
System.Security 名前空間


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

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

辞書ショートカット

すべての辞書の索引

「AllowPartiallyTrustedCallersAttribute」の関連用語

AllowPartiallyTrustedCallersAttributeのお隣キーワード
検索ランキング

   

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



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

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

©2025 GRAS Group, Inc.RSS