WMI を使用して RDP アクセス許可にユーザーを追加する方法

この記事では、リモート デスクトップ プロトコル (RDP) アクセス許可にユーザーまたはグループを追加する 3 つの方法について説明します。

適用対象: Windows Server 2012 R2
元の KB 番号: 290720

概要

3 つの方法のうちの 2 つは、Windows 管理インストルメンテーション (WMI) を使用します。 1 つの方法はグラフィカル ユーザー インターフェイス (GUI) を使用し、他の 2 つの方法ではスクリプトと WMI コマンド ライン ユーティリティ wmic を使用して WMI を使用します。

詳細

RDP アクセス許可にユーザーまたはグループを追加するには、次のいずれかの方法を使用します。

GUI の使用

  1. リモート デスクトップ サービス構成を開きます。
  2. Connections フォルダーで、RDP-Tcp を右クリックします。
  3. [プロパティ] をクリックします。
  4. [ アクセス許可 ] タブで、[ 追加] を選択し、目的のユーザーとグループを追加します。

注:

GUI を使用して、RDP を使用してコンソール セッションにサインインするためのアクセス許可を構成することはできません。 コンソール セッション (セッション 0) のアクセス許可を変更するには、以下の WMI メソッドを使用し、ターミナル名に RDP-Tcp の代わりに Console を指定する必要があります。

スクリプトでの WMI の使用

Microsoft は、例示のみを目的としてプログラミング例を提供しており、明示または黙示にかかわらず、いかなる責任も負わないものとします。 これには、特定の目的に対する商品性または適合性に関する黙示的な保証が含まれますが、これに限定されません。 この記事は、説明されているプログラミング言語、手順を作成およびデバッグするために使用されているツールに読者が精通していることを前提にしています。 Microsoft のサポート エンジニアが、特定の手順の機能をわかりやすく説明します。 ただし、これらの例を変更して、追加の機能を提供したり、特定の要件を満たすプロシージャを構築したりすることはありません。 次のコード サンプルを使用してスクリプトを作成します。

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='RDP-Tcp'")
RDPobj.AddAccount "Domain\User", X

ここで 、"Domain\User", X:

  • Domain\User: アクセス許可を付与するドメインとアカウント (ユーザーまたはグループ) をターゲットにします。 ローカル アカウントの場合は、 Domain\UserUser のみに置き換えます。 User は、コマンドを実行しているコンピューター上のローカル アカウントです。
  • X: 付与するアクセスの種類:
    0 = WINSTATION_GUEST_ACCESS
    1 = WINSTATION_USER_ACCESS
    2 = WINSTATION_ALL_ACCESS

コンソール セッションのアクセス許可を変更するには、ターミナル名を RDP-Tcp ではなくコンソールに変更します。

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='Console'")RDPobj.AddAccount "Domain\User", X

アクセス許可を既定のアクセス許可に戻すには、関連するターミナル名を指定します。 次に、 メソッドを RestoreDefaults 呼び出します。

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='Console'")RDPobj.RestoreDefaults

WMI コマンド ライン ユーティリティの使用: WMIC

  1. コマンド プロンプトで、「wmic」と入力します。

    注:

    パスにない場合は、 を追加 %SystemRoot%\System32\Wbem\するか、そのディレクトリに変更して wmic を実行します。

  2. で、 wmic:root\cli> prompt次のコマンドを入力します。
    PATH WIN32_TSPermissionsSetting.TerminalName="RDP-TCP" 呼び出し AddAccount "Domain\user",X

    ここで 、"Domain\User", X:

    • Domain\User: アクセス許可を付与するドメインとアカウント (ユーザーまたはグループ) をターゲットにします。 ローカル アカウントの場合は、 Domain\UserUser のみに置き換えます。 User は、コマンドを実行しているコンピューター上のローカル アカウントです。
    • X: 付与するアクセスの種類:
      0 = WINSTATION_GUEST_ACCESS
      1 = WINSTATION_USER_ACCESS
      2 = WINSTATION_ALL_ACCESS

    コンソール セッションのアクセス許可を変更するには、ターミナル名を RDP-Tcp ではなくコンソールに変更します。

    PATH WIN32_TSPermissionsSetting.TerminalName="Console" call AddAccount "Domain\user",X
    

    アクセス許可を既定のアクセス許可に戻すには、関連するターミナル名を指定します。 次に、RestoreDefaults メソッドを呼び出します。

    PATH WIN32_TSPermissionsSetting.TerminalName="Console" call RestoreDefaults
    
  3. 次の情報は、wmic を実行してコマンドを入力した後に表示されるテキストの例です。

    C:\WINDOWS\system32\wbem>wmic
    wmic:root\cli>
    wmic:root\cli> PATH WIN32_TSPermissionsSetting.TerminalName="RDP-TCP" call AddAccount "Domain\User", 2
    
    Execute (\\<ComputerName>\\root\vimv2: WIN32_TSPermissionsSetting.TerminalName="RDP-TCP")->AddAccount() (Y/N/?)
    
    Method Execution Successful.
    Out Parameters:
    instance of _PARAMETERS
    {
    RetureValue=0;
    };
    
  4. 「quit」と入力して wmic プロンプトを終了し、コマンド プロンプトに戻ります。