[タイトル]
ワークスペースコントロール機能について
[概要]
この文書では、Citrix Presentation Server 4.0およびCitrix Presentation Server 4.5に実装されているワークスペースコントロール機能の設計と機能の詳細について説明します。
対象:
アプリケーション開発者、Citrixサーバーの管理者、ヘルプデスク担当者
この文書の構成:
ワークスペースコントロールの概要
ワークスペースコントロールの動作
制限事項
[ワークスペースコントロールの概要]
ワークスペースコントロールは、Citrix Presentation Serverのユーザーにより良い操作環境を提供します。この機能を使用すると、エンドユーザーがさまざまなクライアントデバイスからすべての(切断状態またはアクティブ状態の)セッションに、ログオン時に自動的に再接続したり、[再接続]ボタンや[すべて切断]ボタンを使って手動で再接続したりできるようになります。
この機能を使用すると、ユーザーは、切断したアプリケーションまたは切断したアプリケーションとアクティブなアプリケーションの両方に簡単に再接続したり、それらのアプリケーションとの接続を切断したりできるようになります。
ユーザーが認証されたあと、クライアントは、そのユーザーに対して[ログオン時に再接続する]チェックボックスが有効になっているかどうかをチェックします。有効になっている場合は、クライアントがサーバーファームと通信して、そのユーザーの切断状態およびアクティブ状態のセッションで実行されているアプリケーションの一覧を取得し、それらのアプリケーションの再起動を試みます。それにより、ユーザーがこれらのセッションに再接続できるようになります。また、アクティブなセッションをすべて切断してそれらに再接続することもできます。
注:この再接続機能はProgram NeighborhoodエージェントおよびWeb Interfaceでサポートされていますが、Program Neighborhood Classicではサポートされていません。
再接続は、ユーザーがProgram NeighborhoodエージェントとWeb Interfaceにログオンしたときに自動的に行われるように設定することができます。また、ユーザー側でProgram Neighborhoodエージェントの[セッションの再接続]およびWeb Interfaceの[再接続]ボタンを使って再接続することもできます。
[セッションの再接続]、[再接続](以後は[再接続]と表記します)の一般的な用途には、次の3つがあります。
• ログオン時にセッションに再接続されなかった場合でも、[再接続]ボタンをクリックすると手動でセッションに再接続できます。
• セッション内で1つまたは2つのアプリケーションを切断した後に、[再接続]ボタンをクリックしてそれらのアプリケーションに再接続できます。
• あるセッションを使用しているときに(そのセッションを切断せずに)別のクライアントデバイスに移動した場合、そのクライアントデバイスに現在のセッションが引き継がれ、[再接続]ボタンをクリックして簡単に再接続できます。
Program NeighborhoodエージェントとWeb Interfaceのユーザーインターフェイスでは、次のボタンやオプションを使用できます。
• ログオフ:現在のクライアントコンピュータ上のアクティブなユーザーセッションからログオフし、Program NeighborhoodエージェントやWeb Interfaceのログオン画面に戻ります。
• 切断:現在のクライアントコンピュータ上のアクティブなユーザーセッションを切断し、Program NeighborhoodエージェントやWeb Interfaceのログオン画面に戻ります。
• 再接続:すべての切断状態またはアクティブ状態のユーザーセッションに再接続します。
• 閉じる:セッションを開いたままProgram Neighborhoodエージェントを終了します。このボタンはWeb Interfaceにはありません。Web Interfaceでは、ブラウザの[X]ボタンによって[閉じる]機能が提供されます。
管理設定:
管理者はProgram NeighborhoodエージェントおよびWeb Interface管理コンソールでWebサーバーのデフォルト動作を設定できます。
以下は、Access管理コンソールの[ワークスペースコントロールの管理]画面です。

管理者やユーザーが柔軟に動作を設定できるように、管理者は、ユーザーに対して特定の設定のカスタマイズを許可できます。[ワークスペースコントロールを有効にする]チェックボックスをオンにして、各項目で[ユーザーによるカスタマイズを許可する]チェックボックスをオンに設定します。
ログオン時に自動的に再接続
ユーザーのログオン後に[再接続]ボタンを有効化
ログオフ(Web Interfaceのみ)
ユーザー設定:
管理者からカスタマイズを許可されている場合は、ユーザー側でProgram NeighborhoodエージェントおよびWeb Interfaceの次の再接続設定をカスタマイズすることができます。
以下は、Program Neighborhoodエージェントの例です。

以下は、Web Interfaceでのユーザー設定画面です。ユーザーはプルダウンメニューからオプションを選択してワークスペースコントロールをカスタマイズします。

これらの設定は、ユーザーが設定したデバイスに適用されます。別のデバイスに移動した場合、ユーザーはこれらの設定を同じ値または別の値を使って指定し直す必要があります。
サポートされているクライアント:
ワークスペースコントロール機能は、Win32クライアント、WinCEクライアント、Linuxクライアント、およびJavaクライアントでサポートされています。Javaクライアントに対するこの機能は、Web Interfaceを介して提供されます。
複数サーバーファームのサポート:
Web Interfaceは複数サーバーファームをサポートしているので、この機能は複数のサーバーファームにまたがってサポートされます。
匿名ユーザー:
ユーザーがWeb Interfaceへ匿名ユーザーとしてログオンした場合は、次のようになります。
• 匿名ユーザーの接続はすべてログオフ時や切断時にリセットされるため、[再接続]ボタンは無効になります。
• また、切断状態の匿名ユーザーセッションは存在しないため、[切断]も無効になります。
• [ログオフ]は有効になりますが、匿名セッションからのログオフは、XML ServiceによってWebサーバーのアカウント情報が信頼されている場合にのみ行われます。
ユーザーがProgram Neighborhoodエージェントで匿名ユーザーとしてログオンした場合は、次のようになります。
• 匿名ユーザーの接続はすべてログオフ時や切断時にリセットされるため、[再接続]機能は無効になります。
• また、切断状態の匿名ユーザーセッションは存在しないため、[切断]も無効になります。
• [ログオフ]は有効になり、クライアント側で匿名ユーザーセッションからログオフできます。
認証済みのユーザーがWeb Interfaceで匿名ユーザー用の公開アプリケーションを実行している場合は、[再接続]ボタン、[ログオフ]ボタン、[切断]ボタンがすべて有効になります。ただし、この場合は次のようになります。
• 匿名セッションからのログオフは、XML ServiceによってWebサーバーのアカウント情報が信頼されている場合にのみ行われます。
• 切断時には匿名セッションがリセットされます。
• 匿名ユーザー用の公開アプリケーションへの再接続はサポートされません。匿名ユーザー用でない公開アプリケーションにのみクライアントが再接続されます。
Program Neighborhoodエージェントで接続している認証済みのユーザーが匿名ユーザー用の公開アプリケーションを実行している場合は、[再接続]ボタン、[ログオフ]ボタン、[切断]ボタンがすべて有効になります。ただし、この場合は次のようになります。
• ユーザー側でProgram Neighborhoodエージェントを使って匿名セッションからログオフできます。
• 切断時には匿名セッションがリセットされます。
• 匿名ユーザー用の公開アプリケーションへの再接続はサポートされません。クライアントは匿名ユーザー用でない公開アプリケーションへのみ再接続されます。
[ワークスペースコントロールの動作]
コンポーネント:
ワークスペースコントロール機能では、Citrix Presentation Serverの次のコンポーネントが使用されます。
• Web Interface/Advanced Access Control
• Program Neighborhoodエージェント
• XML/Web Interfaceプロトコル
• Citrix XML Service
• IMA
• 管理コンソール
機能:
最初にWebサーバーから送信された<RequestReconnectUserSessions>、<RequestLogoffUserSessions>、<RequestDisconnectUserSessions>の各XML要求がXML Serviceで解析され、その後にMFRPC経由でIMAサービスに対して適切な関数が呼び出されます。ユーザーが指定ユーザー認証を使用している場合はユーザーのアカウント情報が、スマートカード認証やパススルー認証を使用している場合は信頼性モードが、MFRPCによってチェックされます。ユーザーにアクセスが許可されると、MFRPCによってMFServerサブシステムが呼び出され、MFServerサブシステムはワークスペースコントロール関連のすべての機能を処理します。
次の図は、アクティブ状態または切断状態のセッションにユーザーが再接続しようとしたときの処理の流れを示します。

アクティブなセッションへの再接続:
MFServerサブシステムは<RequestReconnectSessionData>要求を次の手順に従って処理します。
1. 切断セッションへの再接続が要求されているかどうかを確認します。要求されていない場合は、「手順2.」に進みます。
要求されている場合は、IMAサーバーが以下の検索条件を使ってダイナミックストアのDisc_Sessionsテーブルに切断セッションの一覧を照会します。
2. アクティブなセッションへの再接続が要求されているかどうかを確認します。要求されていない場合は、クライアントへの応答を用意します。要求されている場合は、手順3.に進みます。
3. サーバーが以下の検索条件を使ってダイナミックストアのConn_Sessionsテーブルにアクティブなセッションの一覧を照会し、各セッション(サーバーファーム内の別のサーバー上のセッションを含む)に対してWinStationDisconnect()を実行します。これらのセッションおよび「手順1.」で照会されたセッションの一覧が返されます。
IMAのセッションテーブルの検索では、以下の検索条件が使用されます。
1. そのユーザーが保持するすべてのセッションを取得します。
2. 指定したServerTypeとClientType(ICA、RDPなど)に一致しないセッションは無視します。
3. パススルーモードで動作しているセッションは無視します。
4. LaunchedBrowserNameが設定されていないセッションは無視します。
5. アクティブなセッションの検索では、同じ<ClientName>を持つセッションは無視します。これにより、そのユーザーの現在のクライアントデバイスで実行されているアクティブセッションの切断や再接続を防ぎます。
以上の5つの検索条件に従って、クライアントから再接続可能なセッションだけが検索されます。この一覧がクライアントに返されます。
アクティブなセッションの切断:
Citrix Presentation Serverを実行しているサーバー(以下「サーバーA」とします)が切断要求を受け取ると、前述の手順に従ってセッションが検索され、切断に関する条件を満たすアクティブなユーザーセッションの一覧がサーバーAに返されます。ほかのサーバー(以下「サーバーB」とします)上のアクティブなセッションを切断する場合、サーバーAはサーバーに、そのセッションに対してWinStationDisconnect()を実行するように要求するIMAイベントを送信し、その結果を受け取ります。
セッション共有のサポート:
セッション共有機能を使って同じセッションで複数のアプリケーションを実行している場合は、IMAセッションテーブルのレコード内の<HostID>フィールドと<SessionID>フィールドの値からセッションを特定します。サーバーからは、このセッションの1つのアプリケーションの名前だけがクライアントに返されます。これにより、クライアント側でセッション内のすべてのアプリケーションを再起動したり、セッションに実際に含まれているアプリケーションを調べたりする手間を省くことができます。AppNameには、そのセッションで最初に起動したアプリケーションのInitialBrowserNameが返されます。
MFRPCサブシステム:
このサブシステムがIMAサービスとXML Service間のインターフェイスになります。ワークスペースコントロールでは以下のメソッドが使用されます。
ReconnectUserSessions
DisconnectUserSessions
LogoffUserSessions
MF Serverサブシステム:
このサブシステムは、ワークスペースコントロールの再接続要求、ログオフ要求、切断要求を処理します。また、アプリケーション解決要求に対するアプリケーションアドレスの解決処理も、このシステムが行います。
ReconnectUserSessions
DisconnectUserSessions
LogoffUserSessions
ResolveSession
[制限事項]
以下にワークスペースコントロール機能の制限事項を示します。
パススルーモード:
Program NeighborhoodエージェントやWeb Interfaceをパススルーセッション内で使用している場合は、ワークスペースコントロールの再接続機能を使用できません。この機能を使用するためには、Program NeighborhoodエージェントまたはWeb Interfaceをクライアントデバイスから実行する必要があります。
たとえば、この機能は以下のような環境で使用できます。
1. クライアント上でProgram NeighborhoodエージェントおよびWeb Interfaceクライアントを実行しており、Program NeighborhoodエージェントとWeb Interfaceによってワークスペースコントロール機能が提供されている場合
2. Program Neighborhoodを使用できるクライアントコンピュータでローカルにInternet Explorerを実行し、Internet ExplorerからWeb Interfaceに接続してワークスペースコントロール機能を使用する場合
3. WYSE WintermでローカルにInternet Explorerを実行し、Internet ExplorerからWeb Interfaceに接続してワークスペースコントロール機能を使用する場合
ただし、Citrix Presentation Server上でProgram NeighborhoodエージェントやInternet Explorerがパススルーモードで動作している場合は、ワークスペースコントロール機能が無効になります。つまり、パススルーモードで公開されているProgram NeighborhoodエージェントまたはInternet Explorerからユーザーセッションに再接続することはできません。
サーバーへの直接接続:
ユーザーはProgram Neighborhoodからカスタムコネクションを使ってサーバーに直接接続することができます。この場合、IMAセッションテーブルではそのセッションのアプリケーション名(AppName)が空になります。このセッションには有効なアプリケーション名が付けられていないため、Program NeighborhoodエージェントやWeb Interfaceクライアントからこのセッションに再接続することはできません。
この機能はProgram NeighborhoodエージェントとWeb Interfaceクライアントでのみ提供されるため、サーバーへのカスタムコネクションはサポートしていません。つまり、アプリケーション名のないセッションは、切断、ログオフ、再接続することができません。
WinCEデバイス:
Web InterfaceがサポートするWinCEデバイスには、ICAクライアントの複数インスタンスがサポートされていないものがあります。または、サポートされている場合でも、ICAクライアントをインスタンス間で切り替えることができません。これは、ユーザーが複数のクライアントを切り替えて使用する場合にのみ問題になります。また、WinCEプラットフォームでは設定ページにアクセスすることができません。したがって、ユーザー側でWinCEからこの機能を無効にすることができません。1つの解決方法として、すべてのWinCEクライアント用の専用のWeb Interfaceサイトを構築し、そのWeb Interfaceサイトではこの機能を無効にするという方法があります。しかしこのようなケースはまれであり、ユーザーは、機能が限定されたデバイスから、そのクライアントデバイスでサポートされている何らかの機能を使用して再接続を行う必要があります。
再接続関連の動作:
アクティブなセッションの切断後の再接続について、次のような動作が生じる場合があります。(アクティブなセッションに再接続するには、切断後に再接続します)。
1. 管理者がCitrix Presentation Server上での切断セッションを許可していない場合、それらのセッションは終了します。
2. シームレスなセッション共有機能が無効になっている場合、ユーザーは同じサーバー上の同じ公開アプリケーションの複数のインスタンスを実行できます。再接続時にはWinlogonのダイアログボックスにこれらの切断セッションの一覧が表示され、再接続するセッションを選択できます。
[関連情報]
この資料は米国のCitrix Knowledge Baseで提供している情報をもとに作成したものです。
Document ID: CTX116633