ターミナル サービス セッション ブローカーの拡張

ターミナル サービス セッション ブローカー (TS セッション ブローカー) は、接続を開始するユーザーが既にセッションを開いているかどうかを判断します。 その場合、TS セッション ブローカーは、既存のセッションを使用して、受信接続をリモート デスクトップ セッション ホスト (RD セッション ホスト) サーバーにルーティングします。 そうでない場合、TS セッション ブローカーは、受信接続を最も少ないセッションで RD セッション ホスト サーバーにルーティングします。

TS セッション ブローカーは、 IWTSSBPlugin COM インターフェイスを使用して拡張できます。 このインターフェイスを使用すると、RD セッション ホスト サーバーへの接続、および任意の種類のリモート デスクトップ プロトコル (RDP) 接続を管理できます。たとえば、Windows Server 2008 Hyper-V 仮想マシン ホスト上で Windows Vista Enterprise 一元化デスクトップ (VECD) を実行しているゲスト仮想マシンへの接続などです。

IWTSSBPlugin インターフェイスには、いくつかの利点があります。

  • クライアントまたは RD セッション ホスト サーバーにエージェントをインストールする必要はありません。
  • このプラグインは、リモート デスクトップ ゲートウェイ (RD ゲートウェイ) などの他のリモート デスクトップ サービスの役割サービスとシームレスにやり取りでき、セッションとコンピューターの状態に関する TS セッション ブローカーからの情報に依存します。
  • このプラグインを使用して、RDP 5.2 以降をサポートするクライアントまたはサーバー デバイスとの接続を管理できます。
  • プラグインを使用して、Windows Vista Enterprise 一元化デスクトップ ソリューションを有効にすることができます。

このインターフェイスのメソッドを実装する場合は、次の点に注意してください。

  • TS セッション ブローカーは、複数のスレッドからこの COM オブジェクトのメソッドを呼び出す場合があります。

  • 呼び出されたメソッドのいずれかがすぐに正常に返されない場合、TS Session Broker はプラグインの呼び出しをこれ以上行わず、ネイティブの負荷分散ロジックに戻します。 プラグインの呼び出しを再開するには、ターミナル サービス セッション ブローカー サービスを再起動する必要があります。

  • Regsvr32.exeを使用して、プラグインをシステム全体の COM オブジェクトとして登録する必要があります。 ターミナル サービス セッション ブローカー サービスは "NetworkService" アカウントで実行されるため、"NetworkService" アカウントに、Dcomcnfg.exeを使用して必要な起動、アクティブ化、およびアクセス許可を付与する必要があります。 ターミナル サービス セッション ブローカー サービスは、次のレジストリ サブキーのプラグインを表す COM オブジェクトの CLSID を検索します。

    Hkey_local_machine\システム\CurrentControlSet\サービス\Tssdis\パラメーター\ExtensibilityPluginCLSID

Dcomcnfg.exeの詳細については、「 DCOMCNFG を使用した COM セキュリティの有効化」を参照してください。

IWTSSBPlugin