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

ResourcePermissionBaseEntry クラス

コード アクセス セキュリティアクセス許可セット最小単位定義します

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

<SerializableAttribute> _
Public Class ResourcePermissionBaseEntry
Dim instance As ResourcePermissionBaseEntry
[SerializableAttribute] 
public class ResourcePermissionBaseEntry
[SerializableAttribute] 
public ref class ResourcePermissionBaseEntry
/** @attribute SerializableAttribute() */ 
public class ResourcePermissionBaseEntry
SerializableAttribute 
public class ResourcePermissionBaseEntry
使用例使用例

ResourcePermissionBase クラスから継承する例を次に示します4 種類コンストラクタ実装されています。この例では、MailslotPermissionEntry というクラス実装提供されています。次に、PermissionAccessType プロパティMailslotPermissionEntry の型にプライベートに設定されます。TagNames プロパティは "Name" と "Machine" にプライベートに設定されます。

Imports System
Imports System.Security.Permissions
Imports System.Collections

<Serializable()> Public Class MailslotPermission
    Inherits ResourcePermissionBase

    Private innerCollection As ArrayList


    Public Sub New()
        SetNames()
    End Sub 'New


    Public Sub New(ByVal
 state As PermissionState)
        MyBase.New(state)
        SetNames()
    End Sub 'New


    Public Sub New(ByVal
 permissionAccess As MailslotPermissionAccess, ByVal
 name As String, ByVal machineName1 As String)
        SetNames()
        Me.AddPermissionAccess(New MailslotPermissionEntry(permissionAccess,
 name, machineName1))
    End Sub 'New


    Public Sub New(ByVal
 permissionAccessEntries() As MailslotPermissionEntry)
        SetNames()
        If permissionAccessEntries Is Nothing
 Then
            Throw New ArgumentNullException("permissionAccessEntries")
        End If
        Dim index As Integer

        While index < permissionAccessEntries.Length
            Me.AddPermissionAccess(permissionAccessEntries(index))
        End While
    End Sub 'New 

    Public ReadOnly Property
 PermissionEntries() As ArrayList
        Get
            If Me.innerCollection Is
 Nothing Then
                Me.innerCollection = New ArrayList()
            End If
            Me.innerCollection.InsertRange(0, MyBase.GetPermissionEntries())

            Return Me.innerCollection
        End Get
    End Property


    Friend Overloads Sub
 AddPermissionAccess(ByVal entry As MailslotPermissionEntry)
        MyBase.AddPermissionAccess(entry.GetBaseEntry())
    End Sub 'AddPermissionAccess


    Friend Shadows Sub Clear()
        MyBase.Clear()
    End Sub 'Clear


    Friend Overloads Sub
 RemovePermissionAccess(ByVal entry As MailslotPermissionEntry)
        MyBase.RemovePermissionAccess(entry.GetBaseEntry())
    End Sub 'RemovePermissionAccess


    Private Sub SetNames()
        Me.PermissionAccessType = GetType(MailslotPermissionAccess)
        Me.TagNames = New String()
 {"Name", "Machine"}
    End Sub 'SetNames
End Class 'MailslotPermission

<Flags()> Public Enum MailslotPermissionAccess
    None = 0
    Send = 2
    Receive = 4 Or Send
End Enum 'MailslotPermissionAccess

<Serializable()> Public Class MailslotPermissionEntry
    Private nameVar As String
    Private machineNameVar As String
    Private permissionAccessVar As MailslotPermissionAccess


    Public Sub New(ByVal
 permissionAccess As MailslotPermissionAccess, ByVal
 name As String, ByVal machineName1 As String)
        Me.permissionAccessVar = permissionAccess
        Me.nameVar = name
        Me.machineNameVar = machineName1
    End Sub 'New


    Friend Sub New(ByVal
 baseEntry As ResourcePermissionBaseEntry)
        Me.permissionAccessVar = CType(baseEntry.PermissionAccess,
 MailslotPermissionAccess)
        Me.nameVar = baseEntry.PermissionAccessPath(0)
        Me.machineNameVar = baseEntry.PermissionAccessPath(1)
    End Sub 'New


    Public ReadOnly Property
 Name() As String
        Get
            Return Me.nameVar
        End Get
    End Property


    Public ReadOnly Property
 MachineName() As String
        Get
            Return Me.machineNameVar
        End Get
    End Property


    Public ReadOnly Property
 PermissionAccess() As MailslotPermissionAccess
        Get
            Return Me.permissionAccessVar
        End Get
    End Property


    Friend Function GetBaseEntry() As
 ResourcePermissionBaseEntry
        Dim baseEntry As New
 ResourcePermissionBaseEntry(CInt(Me.PermissionAccess), New
 String() {Me.Name, Me.MachineName})
        Return baseEntry
    End Function 'GetBaseEntry


End Class 'MailslotPermissionEntry
using System;        
using System.Security.Permissions;  
using System.Collections;

[Serializable()]
public class MailslotPermission: ResourcePermissionBase
{
 
    private ArrayList innerCollection;

    public MailslotPermission() 
    {
        SetNames();
    }                                                                

    public MailslotPermission(PermissionState state):base(state)
    {
        SetNames();
    }  

    public MailslotPermission(MailslotPermissionAccess permissionAccess,
 string name, string machineName)
    {
        SetNames();
        this.AddPermissionAccess(new MailslotPermissionEntry(permissionAccess,
 name, machineName));              
    }

    public MailslotPermission(MailslotPermissionEntry[] permissionAccessEntries)
 
    {
        SetNames();
        if (permissionAccessEntries == null)
            throw new ArgumentNullException("permissionAccessEntries");
      
        for (int index = 0; index < permissionAccessEntries.Length;
 ++index)
            this.AddPermissionAccess(permissionAccessEntries[index]);
                          
    }

    public ArrayList PermissionEntries 
    {
        get 
        {
            if (this.innerCollection == null)
                     
                this.innerCollection = new
 ArrayList();
            this.innerCollection.InsertRange(0,base.GetPermissionEntries());
 

            return this.innerCollection;  
                                                             
        }
    }

    internal void AddPermissionAccess(MailslotPermissionEntry
 entry) 
    {
        base.AddPermissionAccess(entry.GetBaseEntry());
    }

    internal new void Clear() 
    {
        base.Clear();
    }

    internal void RemovePermissionAccess(MailslotPermissionEntry
 entry) 
    {
        base.RemovePermissionAccess(entry.GetBaseEntry());
    }

    private void SetNames() 
    {
        this.PermissionAccessType = typeof(MailslotPermissionAccess);
        this.TagNames = new string[]{"Name"
,"Machine"};
    }                                
}

[Flags]         
public enum MailslotPermissionAccess 
{
    None = 0,
    Send = 1 << 1,
    Receive = 1 << 2 | Send,
} 

[Serializable()]     
public class MailslotPermissionEntry 
{
    private string name;
    private string machineName;
    private MailslotPermissionAccess permissionAccess;

    public MailslotPermissionEntry(MailslotPermissionAccess permissionAccess,
 string name, string machineName) 
    {
        this.permissionAccess = permissionAccess;
        this.name = name;
        this.machineName = machineName;
    }  

    internal MailslotPermissionEntry(ResourcePermissionBaseEntry baseEntry) 
    {
        this.permissionAccess = (MailslotPermissionAccess)baseEntry.PermissionAccess;
        this.name = baseEntry.PermissionAccessPath[0]; 
        this.machineName = baseEntry.PermissionAccessPath[1];
 
    }

    public string Name 
    {
        get 
        {                
            return this.name;             
   
        }                        
    }

    public string MachineName 
    {
        get 
        {                
            return this.machineName;      
          
        }                        
    }

    public MailslotPermissionAccess PermissionAccess 
    {
        get 
        {
            return this.permissionAccess;
        }                        
    }      

    internal ResourcePermissionBaseEntry GetBaseEntry() 
    {
        ResourcePermissionBaseEntry baseEntry = new ResourcePermissionBaseEntry((int)this.PermissionAccess,
 new string[] {this.Name,this.MachineName});
            
        return baseEntry;
    }

}
#using <System.dll>

using namespace System;
using namespace System::Security::Permissions;
using namespace System::Collections;

[Flags]

public enum class MailslotPermissionAccess
{
   None = 0,
   Send = 1 << 1,
   Receive = 1 << 2 | MailslotPermissionAccess::Send
};


[Serializable]
public ref class MailslotPermissionEntry
{
private:
   String^ name;
   String^ machineName;
   MailslotPermissionAccess permissionAccess;

internal:
   MailslotPermissionEntry( ResourcePermissionBaseEntry^ baseEntry )
   {
      this->permissionAccess = (MailslotPermissionAccess)baseEntry->PermissionAccess;
      this->name = baseEntry->PermissionAccessPath[ 0 ]->ToString();
      this->machineName = baseEntry->PermissionAccessPath[
 1 ]->ToString();
   }

   ResourcePermissionBaseEntry^ GetBaseEntry()
   {
      array<String^>^newStrings = {this->Name,this->MachineName};
      ResourcePermissionBaseEntry^ baseEntry = gcnew ResourcePermissionBaseEntry(
 (int)(this->PermissionAccess),newStrings
 );
      return baseEntry;
   }

public:
   MailslotPermissionEntry( MailslotPermissionAccess permissionAccess, String^ name,
 String^ machineName )
   {
      this->permissionAccess = permissionAccess;
      this->name = name;
      this->machineName = machineName;
   }

   property String^ Name 
   {
      String^ get()
      {
         return this->name;
      }
   }

   property String^ MachineName 
   {
      String^ get()
      {
         return this->machineName;
      }
   }

   property MailslotPermissionAccess PermissionAccess 
   {
      MailslotPermissionAccess get()
      {
         return this->permissionAccess;
      }
   }
};


[Serializable]
public ref class MailslotPermission: public
 ResourcePermissionBase
{
private:
   ArrayList^ innerCollection;
   void SetNames()
   {
      this->PermissionAccessType = MailslotPermissionAccess::typeid;
      array<String^>^newStrings = {"Name","Machine"};
      this->TagNames = newStrings;
   }


internal:
   void AddPermissionAccess( MailslotPermissionEntry^ entry )
   {
      ResourcePermissionBase::AddPermissionAccess( entry->GetBaseEntry() );
   }

   void Clear()
   {
      ResourcePermissionBase::Clear();
   }

   void RemovePermissionAccess( MailslotPermissionEntry^ entry
 )
   {
      ResourcePermissionBase::RemovePermissionAccess( entry->GetBaseEntry() );
   }


public:
   MailslotPermission()
   {
      SetNames();
   }

   MailslotPermission( PermissionState state )
      : ResourcePermissionBase( state )
   {
      SetNames();
   }

   MailslotPermission( MailslotPermissionAccess permissionAccess, String^ name, String^
 machineName )
   {
      SetNames();
      this->AddPermissionAccess( gcnew MailslotPermissionEntry(
 permissionAccess,name,machineName ) );
   }

   MailslotPermission( array<MailslotPermissionEntry^>^permissionAccessEntries
 )
   {
      SetNames();
      if ( permissionAccessEntries == nullptr )
            throw gcnew ArgumentNullException( "permissionAccessEntries"
 );

      for ( int index = 0; index < permissionAccessEntries->Length;
 ++index )
         this->AddPermissionAccess( permissionAccessEntries[
 index ] );
   }

   property ArrayList^ PermissionEntries 
   {
      ArrayList^ get()
      {
         if ( this->innerCollection == nullptr
 )
                  this->innerCollection = gcnew ArrayList;

         this->innerCollection->InsertRange( 0, safe_cast<ICollection^>(ResourcePermissionBase::GetPermissionEntries())
 );
         return this->innerCollection;
      }
   }
};
import System.*;
import System.Security.Permissions.*;
import System.Collections.*;

/** @attribute Serializable()
 */
public class MailSlotPermission extends ResourcePermissionBase
{   

    private ArrayList innerCollection;

    public MailSlotPermission()
    {
        SetNames();
    } //MailSlotPermission

    public MailSlotPermission(PermissionState state)
    {
      super(state);
      SetNames();
    } //MailSlotPermission

    public MailSlotPermission(MailSlotPermissionAccess permissionAccess,
 
        String name, String machineName)
    {
        SetNames();
        this.AddPermissionAccess(new MailSlotPermissionEntry(permissionAccess
,
            name, machineName));
    } //MailSlotPermission

    public MailSlotPermission(MailSlotPermissionEntry permissionAccessEntries[])
    {
        SetNames();
        if (permissionAccessEntries == null)
 {
            throw new ArgumentNullException("permissionAccessEntries");
        }

        for (int index = 0; index < permissionAccessEntries.get_Length();
 
            ++index) {
            this.AddPermissionAccess((MailSlotPermissionEntry)
                permissionAccessEntries.get_Item(index));
        }
    } //MailSlotPermission 

    /** @property 
     */
    public ArrayList get_PermissionEntries()
    {
        if (this.innerCollection == null)
 {
            this.innerCollection = new ArrayList();
        }
        this.innerCollection.InsertRange(0, super.GetPermissionEntries());
        return this.innerCollection;
    }

    void AddPermissionAccess(MailSlotPermissionEntry entry)
    {
        super.AddPermissionAccess(entry.GetBaseEntry());
    } //AddPermissionAccess

    public void Clear()
    {
        super.Clear();
    } //Clear

    void RemovePermissionAccess(MailSlotPermissionEntry entry)
    {
        super.RemovePermissionAccess(entry.GetBaseEntry());
    } //RemovePermissionAccess

    private void SetNames()
    {
        this.set_PermissionAccessType(MailSlotPermissionAccess.class.ToType());
        this.set_TagNames(new String[] { "Name",
 "Machine" });
    } //SetNames
} //MailSlotPermission

public class MailSlotPermissionAccess
{
    public static int None
 = 0;
    public static int Send
 = 1 << 1;
    public static int Receive
 = 1 << 2 | Send;
} //MailSlotPermissionAccess

/** @attribute Serializable()
 */
public class MailSlotPermissionEntry
{
    private String name;
    private String machineName;
    private MailSlotPermissionAccess permissionAccess;

    public MailSlotPermissionEntry(MailSlotPermissionAccess permissionAccess,
 
        String name, String machineName)
    {
        this.permissionAccess = permissionAccess;
        this.name = name;
        this.machineName = machineName;
    } //MailSlotPermissionEntry

    MailSlotPermissionEntry(ResourcePermissionBaseEntry baseEntry)
    {
        this.permissionAccess =(MailSlotPermissionAccess)(Object)((
            Int32)baseEntry.get_PermissionAccess());
        this.name = baseEntry.get_PermissionAccessPath()[0];
        this.machineName = baseEntry.get_PermissionAccessPath()[1];
    } //MailSlotPermissionEntry

    /** @property 
     */
    public String get_Name()
    {
        return this.name;
    }//get_Name

    /** @property
     */
    public String get_MachineName()
    {
        return this.machineName;
    }//get_MachineName

    /** @property
     */
    public MailSlotPermissionAccess get_PermissionAccess()
    {
        return this.permissionAccess;
    }//get_PermissionAccess

    ResourcePermissionBaseEntry GetBaseEntry()
    {
        ResourcePermissionBaseEntry baseEntry = new ResourcePermissionBaseEntry(
            Convert.ToInt32((Int32)((Object)(this.get_PermissionAccess()))),
 
            new String[] { this.get_Name(),
 this.get_MachineName() });
        return baseEntry;
    } //GetBaseEntry
} //MailSlotPermissionEntry
継承階層継承階層
System.Object
  System.Security.Permissions.ResourcePermissionBaseEntry
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ResourcePermissionBaseEntry メンバ
System.Security.Permissions 名前空間

ResourcePermissionBaseEntry コンストラクタ ()


ResourcePermissionBaseEntry コンストラクタ

ResourcePermissionBaseEntry クラス新しインスタンス初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
ResourcePermissionBaseEntry () ResourcePermissionBaseEntry クラス新しインスタンス初期化します。
ResourcePermissionBaseEntry (Int32, String[]) アクセス許可アクセス レベルおよびアクセス許可アクセス パス指定してResourcePermissionBaseEntry クラス新しインスタンス初期化します。
参照参照

関連項目

ResourcePermissionBaseEntry クラス
ResourcePermissionBaseEntry メンバ
System.Security.Permissions 名前空間

ResourcePermissionBaseEntry コンストラクタ (Int32, String[])

アクセス許可アクセス レベルおよびアクセス許可アクセス パス指定して、ResourcePermissionBaseEntry クラス新しインスタンス初期化します。

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

Public Sub New ( _
    permissionAccess As Integer, _
    permissionAccessPath As String() _
)
Dim permissionAccess As Integer
Dim permissionAccessPath As String()

Dim instance As New ResourcePermissionBaseEntry(permissionAccess,
 permissionAccessPath)
public ResourcePermissionBaseEntry (
    int permissionAccess,
    string[] permissionAccessPath
)
public:
ResourcePermissionBaseEntry (
    int permissionAccess, 
    array<String^>^ permissionAccessPath
)
public ResourcePermissionBaseEntry (
    int permissionAccess, 
    String[] permissionAccessPath
)
public function ResourcePermissionBaseEntry
 (
    permissionAccess : int, 
    permissionAccessPath : String[]
)

パラメータ

permissionAccess

アクセス許可アクセス レベル列挙値の整数表現。PermissionAccess プロパティは、この値に設定されます。

permissionAccessPath

保護しているリソース識別する文字列配列。PermissionAccessPath プロパティは、この値に設定されます。

例外例外
例外種類条件

ArgumentNullException

指定されpermissionAccessPathnull 参照 (Visual Basic では Nothing) です。

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

ResourcePermissionBaseEntry プロパティ


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

参照参照

関連項目

ResourcePermissionBaseEntry クラス
System.Security.Permissions 名前空間

ResourcePermissionBaseEntry メソッド


ResourcePermissionBaseEntry メンバ

コード アクセス セキュリティアクセス許可セット最小単位定義します

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


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド ResourcePermissionBaseEntry オーバーロードされます。 ResourcePermissionBaseEntry クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

ResourcePermissionBaseEntry クラス
System.Security.Permissions 名前空間


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

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

辞書ショートカット

すべての辞書の索引

「ResourcePermissionBaseEntry」の関連用語

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

   

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



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

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

©2025 GRAS Group, Inc.RSS