ConnectionOptions.Impersonation プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ConnectionOptions.Impersonation プロパティの意味・解説 

ConnectionOptions.Impersonation プロパティ

この接続操作使用する COM 偽装レベル取得または設定します

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

Dim instance As ConnectionOptions
Dim value As ImpersonationLevel

value = instance.Impersonation

instance.Impersonation = value
public ImpersonationLevel Impersonation { get;
 set; }
public:
property ImpersonationLevel Impersonation {
    ImpersonationLevel get ();
    void set (ImpersonationLevel value);
}
/** @property */
public ImpersonationLevel get_Impersonation ()

/** @property */
public void set_Impersonation (ImpersonationLevel
 value)
public function get Impersonation
 () : ImpersonationLevel

public function set Impersonation
 (value : ImpersonationLevel)

プロパティ
WMI への接続使用される偽装レベルを示す ImpersonationLevel 列挙値を返します

解説解説

プロバイダ信頼されアプリケーションまたはサービス場合は、ImpersonationLevel.Impersonate の設定効果的です。これによってプロバイダは、要求され操作に対してクライアント ID およびアクセス許可チェックを行う必要がなくなります。ただしプロバイダ何らかの理由信頼性欠け場合に、クライアント偽装許可すると、セキュリティ脆弱になる可能性あります。この対策として、このプロパティに ImpersonationLevel.Identify などの低い値をクライアントによって設定されるようにすることをお勧めます。この場合は、十分なアクセス許可がないため、またはアクセス許可チェックが完全に行われないため、プロバイダ要求され操作実行するときに失敗する可能性があることに注意してください

プロパティ

この接続操作使用する COM 偽装レベル既定値ImpersonationLevel.Impersonate です。この値は、この接続要求され操作実行するときに WMI プロバイダクライアント偽装できること示します

.NET Frameworkセキュリティ
使用例使用例

リモート コンピュータ接続してリモート コンピュータ上のオペレーティング システムに関する情報表示する例を次に示します目的接続オプション使用してリモート コンピュータ接続するために、ConnectionOptions が作成されます。

Imports System
Imports System.Management
Public Class RemoteConnect

    Public Overloads Shared
 Function Main( _
    ByVal args() As String)
 As Integer

        ' Build an options object for the remote connection
        ' if you plan to connect to the remote
        ' computer with a different user name
        ' and password than the one you are currently using
        Dim options As ConnectionOptions
        options = New ConnectionOptions
        options.Impersonation = 3
        ' System.Management.ImpersonationLevel.Impersonate = 3

        ' Make a connection to a remote computer.
        ' Replace the "FullComputerName" section of the
        ' string "\\FullComputerName\root\cimv2" with
        ' the full computer name or IP address of the
        ' remote computer.
        Dim scope As ManagementScope
        scope = New ManagementScope( _
            "\\FullComputerName\root\cimv2", options)
        scope.Connect()

        ' Query system for Operating System information
        Dim query As ObjectQuery
        query = New ObjectQuery( _
            "SELECT * FROM Win32_OperatingSystem")
        Dim searcher As ManagementObjectSearcher
        searcher = _
            New ManagementObjectSearcher(scope, query)

        Dim queryCollection As ManagementObjectCollection
        queryCollection = searcher.Get()

        Dim m As ManagementObject
        For Each m In queryCollection
            ' Display the remote computer information
            Console.WriteLine("Computer Name : {0}",
 _
                m("csname"))
            Console.WriteLine("Windows Directory : {0}",
 _
                m("WindowsDirectory"))
            Console.WriteLine("Operating System: {0}",
 _
                m("Caption"))
            Console.WriteLine("Version: {0}", m("Version"))
            Console.WriteLine("Manufacturer : {0}",
 _
                m("Manufacturer"))
        Next

        Return 0
    End Function
End Class
using System;
using System.Management;
public class RemoteConnect 
{
    public static void Main()
 
    {
        // Build an options object for the remote connection
        // if you plan to connect to the remote
        // computer with a different user name
        // and password than the one you are currently using.
        // This example uses the default values.  
        ConnectionOptions options = 
            new ConnectionOptions();
        options.Impersonation = 
            System.Management.ImpersonationLevel.Impersonate;
                 
        // Make a connection to a remote computer.
        // Replace the "FullComputerName" section of the
        // string "\\\\FullComputerName\\root\\cimv2" with
        // the full computer name or IP address of the
        // remote computer.
        ManagementScope scope = 
            new ManagementScope(
            "\\\\FullComputerName\\root\\cimv2", options);
        scope.Connect();

        //Query system for Operating System information
        ObjectQuery query = new ObjectQuery(
            "SELECT * FROM Win32_OperatingSystem");
        ManagementObjectSearcher searcher = 
            new ManagementObjectSearcher(scope,query);

        ManagementObjectCollection queryCollection = searcher.Get();
        foreach ( ManagementObject m in queryCollection)
        {
            // Display the remote computer information
            Console.WriteLine("Computer Name : {0}", 
                m["csname"]);
            Console.WriteLine("Windows Directory : {0}", 
                m["WindowsDirectory"]);
            Console.WriteLine("Operating System: {0}",  
                m["Caption"]);
            Console.WriteLine("Version: {0}", m["Version"]);
            Console.WriteLine("Manufacturer : {0}", 
                m["Manufacturer"]);
        }
    }
}
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



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

辞書ショートカット

すべての辞書の索引

ConnectionOptions.Impersonation プロパティのお隣キーワード
検索ランキング

   

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



ConnectionOptions.Impersonation プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2024 GRAS Group, Inc.RSS