セッション
セッションアクティビティを維持することは、最高のユーザーエクスペリエンスを提供するために不可欠です。信頼性の低いネットワーク、変動の大きいネットワーク遅延、ワイヤレスデバイスの範囲制限による接続の喪失は、ユーザーの不満につながる可能性があります。デバイス間を素早く移動し、ログオンするたびに同じアプリケーションにアクセスすることは、医療従事者などの多くのモバイルワーカーにとって優先事項です。
この記事で説明する機能は、セッションの信頼性を最適化し、不便さ、ダウンタイム、生産性の損失を軽減します。これらの機能を使用することで、モバイルユーザーはデバイス間を素早く簡単に移動できます。
セッションからユーザーをログオフしたり、セッションを切断したり、セッションのプレローンチとリンガーを設定したりすることもできます。詳細については、「デリバリーグループの管理」を参照してください。
セッションの信頼性
セッションの信頼性により、ネットワーク接続が中断された場合でも、セッションはアクティブな状態を保ち、ユーザーの画面に表示され続けます。ユーザーは、ネットワーク接続が再開されるまで、使用しているアプリケーションを引き続き見ることができます。
この機能は、ワイヤレス接続を使用するモバイルユーザーにとって特に便利です。たとえば、ワイヤレス接続を使用しているユーザーが鉄道トンネルに入り、一時的に接続が失われたとします。通常、セッションは切断されてユーザーの画面から消え、ユーザーは切断されたセッションに再接続する必要があります。セッションの信頼性を使用すると、セッションはマシン上でアクティブなままになります。接続が失われたことを示すために、ユーザーのディスプレイはフリーズし、カーソルはトンネルの反対側で接続が再開されるまで回転する砂時計に変わります。ユーザーは中断中もディスプレイにアクセスし続け、ネットワーク接続が復元されたときにアプリケーションとの対話を再開できます。セッションの信頼性により、再認証のプロンプトなしでユーザーが再接続されます。
Citrix Workspace™アプリのユーザーは、Controllerの設定を上書きできません。
セッションの信頼性は、Transport Layer Security (TLS) とともに使用できます。TLSは、ユーザーデバイスとCitrix Gatewayの間で送信されるデータのみを暗号化します。
次のポリシー設定を使用して、セッションの信頼性を有効にして構成します。
- セッションの信頼性接続ポリシー設定は、セッションの信頼性を許可または禁止します。
- セッションの信頼性タイムアウトポリシー設定のデフォルトは180秒、つまり3分です。セッションの信頼性がセッションを開いたままにする時間を延長できますが、この機能はユーザーの利便性のために設計されています。そのため、ユーザーに再認証を促すことはありません。セッションを開いたままにする時間を延長すると、ユーザーが注意散漫になり、ユーザーデバイスから離れてしまう可能性が高まります。これらの行動は、セッションを不正なユーザーがアクセスできる状態にする可能性があります。
- 受信セッションの信頼性接続は、セッションの信頼性ポート番号ポリシー設定でポート番号を変更しない限り、ポート2598を使用します。
- ユーザーが再認証なしで中断されたセッションに再接続するのを防ぐには、自動クライアント再接続機能を使用します。自動クライアント再接続認証ポリシー設定を構成して、中断されたセッションに再接続する際にユーザーに再認証を促すことができます。
セッションの信頼性と自動クライアント再接続の両方を使用する場合、これら2つの機能は順次動作します。セッションの信頼性は、セッションの信頼性タイムアウトポリシー設定で指定した時間の経過後、ユーザーセッションを閉じるか、切断します。その後、自動クライアント再接続ポリシー設定が有効になり、切断されたセッションにユーザーを再接続しようとします。
自動クライアント再接続
自動クライアント再接続機能を使用すると、Citrix WorkspaceアプリはICA®セッションの意図しない切断を検出し、影響を受けるセッションにユーザーを自動的に再接続できます。この機能がサーバーで有効になっている場合、ユーザーは手動で再接続することなく作業を続行できます。
アプリケーションセッションの場合、Citrix Workspaceアプリは、正常に再接続されるか、ユーザーが再接続の試行をキャンセルするまで、セッションへの再接続を試行します。
デスクトップセッションの場合、Citrix Workspaceアプリは、正常に再接続されるか、ユーザーが再接続の試行をキャンセルしない限り、指定された期間、セッションへの再接続を試行します。デフォルトでは、この期間は5分です。この期間を変更するには、ユーザーデバイスで次のレジストリ設定を編集します (seconds は、セッションの再接続がそれ以上試行されなくなるまでの秒数です)。
HKLM\Software\Citrix\ICA Client\TransportReconnectRetryMaxTimeSeconds; DWORD;<seconds>
次のポリシー設定を使用して、自動クライアント再接続を有効にして構成します。
- 自動クライアント再接続: 接続が中断された後、Citrix Workspaceアプリによる自動再接続を有効または無効にします。
- 自動クライアント再接続認証: 自動再接続後のユーザー認証の要件を有効または無効にします。
- 自動クライアント再接続ログ: イベントログへの再接続イベントのログ記録を有効または無効にします。ログ記録はデフォルトで無効になっています。有効にすると、サーバーのシステムログは、成功および失敗した自動再接続イベントに関する情報をキャプチャします。各サーバーは、再接続イベントに関する情報を独自のシステムログに保存します。サイトは、すべてのサーバーの再接続イベントの結合ログを提供しません。
自動クライアント再接続は、暗号化されたユーザー資格情報に基づいた認証メカニズムを組み込んでいます。ユーザーが最初にログオンすると、サーバーはユーザー資格情報を暗号化してメモリに保存します。サーバーはまた、暗号化キーを含むCookieを作成し、Citrix Workspaceアプリに送信します。Citrix Workspaceアプリは、再接続のためにキーをサーバーに送信します。サーバーは資格情報を復号化し、認証のためにWindowsログオンに送信します。Cookieの有効期限が切れると、ユーザーはセッションに再接続するために再認証する必要があります。
自動クライアント再接続認証設定を有効にすると、Cookieは使用されません。代わりに、Citrix Workspaceアプリが自動的に再接続を試行する際に、資格情報を要求するダイアログボックスがユーザーに表示されます。
ユーザー資格情報とセッションを最大限に保護するために、クライアントとサイト間のすべての通信に暗号化を使用します。
Windows向けCitrix Workspaceアプリで自動クライアント再接続を無効にするには、icaclient.admファイルを使用します。詳細については、お使いのWindows向けCitrix Workspaceアプリのバージョンのドキュメントを参照してください。
接続の設定は、自動クライアント再接続にも影響します。
- デフォルトでは、前述のとおり、自動クライアント再接続はサイトレベルのポリシー設定によって有効になっています。ユーザーの再認証は不要です。ただし、サーバーのICA TCP接続が、通信リンクが切断されたセッションをリセットするように構成されている場合、自動再接続は行われません。自動クライアント再接続は、切断またはタイムアウトした接続がある場合にサーバーがセッションを切断する場合にのみ機能します。このコンテキストでは、ICA TCP接続とは、TCP/IPネットワーク上のセッションに使用されるサーバーの仮想ポート(実際のネットワーク接続ではなく)を指します。
- デフォルトでは、サーバー上のICA TCP接続は、切断された接続またはタイムアウトした接続を持つセッションを切断するように設定されています。切断されたセッションはシステムメモリにそのまま残り、Citrix Workspaceアプリによる再接続が可能です。
- 接続は、切断された接続またはタイムアウトした接続を持つセッションをリセットまたはログオフするように構成できます。セッションがリセットされると、再接続を試みると新しいセッションが開始されます。ユーザーが使用中のアプリケーションの同じ場所に戻るのではなく、アプリケーションが再起動されます。
- サーバーがセッションをリセットするように構成されている場合、Auto Client Reconnectは新しいセッションを作成します。このプロセスでは、ユーザーはサーバーにログオンするために資格情報を入力する必要があります。
- Citrix Workspaceアプリまたはプラグインが誤った認証情報を送信した場合(攻撃中に発生する可能性や、サーバーが切断された接続を検出してから時間が経ちすぎたと判断した場合など)、自動再接続が失敗することがあります。
ICA キープアライブ
ICA Keep-Alive機能を有効にすると、切断された接続が切断されるのを防ぎます。有効にすると、サーバーがアクティビティを検出しない場合でも、この機能によりRemote Desktop Servicesがそのセッションを切断するのを防ぎます。アクティビティがない例としては、クロックの変更がない、マウスの動きがない、画面の更新がないなどが挙げられます。サーバーは数秒ごとにキープアライブパケットを送信して、セッションがアクティブであるかどうかを検出します。セッションがアクティブでなくなった場合、サーバーはそのセッションを切断済みとしてマークします。
重要:
ICA Keep-Aliveは、セッションの信頼性を使用していない場合にのみ機能します。セッションの信頼性には、切断された接続が切断されるのを防ぐための独自のメカニズムがあります。ICA Keep-Aliveは、セッションの信頼性を使用しない接続に対してのみ構成してください。
ICA Keep-Aliveの設定は、Windowsグループポリシーで構成されているキープアライブ設定を上書きします。
以下のポリシー設定でICA Keep-Aliveを有効にして構成します。
-
ICAキープアライブタイムアウト: ICAキープアライブメッセージを送信するために使用する間隔(1~3600秒)を指定します。切断された接続が非常にまれで、ユーザーがセッションに再接続できることが問題にならない環境で、ネットワーク監視ソフトウェアに非アクティブな接続を閉じさせたい場合は、このオプションを構成しないでください。
デフォルトの間隔は60秒です。ICA Keep-Aliveパケットは60秒ごとにユーザーデバイスに送信されます。ユーザーデバイスが60秒以内に応答しない場合、ICAセッションのステータスは切断済みに変わります。
-
ICAキープアライブ: ICAキープアライブメッセージを送信するか、送信を防止します。
ワークスペースコントロール
ワークスペースコントロールにより、デスクトップとアプリケーションはユーザーをあるデバイスから別のデバイスへと追跡できます。このローミング機能により、ユーザーはログオンするだけで、各デバイスでデスクトップやアプリケーションを再起動することなく、どこからでもすべてのデスクトップや開いているアプリケーションにアクセスできます。たとえば、ワークスペースコントロールは、病院で異なるワークステーション間を迅速に移動し、ログオンするたびに同じアプリケーションセットにアクセスする必要がある医療従事者を支援できます。ワークスペースコントロールオプションを許可するように構成した場合、これらの作業者は1つのクライアントデバイスで複数のアプリケーションから切断し、別のクライアントデバイスで同じアプリケーションを開いて再接続できます。
ワークスペースコントロールは、次のアクティビティに影響します。
- ログオン: デフォルトでは、ワークスペースコントロールにより、ユーザーはログオン時に実行中のすべてのデスクトップとアプリケーションに自動的に再接続でき、手動で再開する必要がなくなります。ワークスペースコントロールを介して、ユーザーは切断されたデスクトップまたはアプリケーション、および別のクライアントデバイスでアクティブなものを開くことができます。デスクトップまたはアプリケーションから切断しても、それはサーバー上で実行されたままになります。一部のデスクトップまたはアプリケーションを1つのクライアントデバイスで実行し続けながら、別のクライアントデバイスでデスクトップまたはアプリケーションのサブセットに再接続する必要があるローミングユーザーがいる場合、ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くようにログオン再接続動作を構成できます。
- 再接続: サーバーにログオンした後、ユーザーは[再接続]をクリックすることで、いつでもすべてのデスクトップまたはアプリケーションに再接続できます。デフォルトでは、[再接続]は切断されたデスクトップまたはアプリケーション、および現在別のクライアントデバイスで実行されているものを開きます。ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くように[再接続]を構成できます。
- ログオフ: StoreFront™を介してデスクトップまたはアプリケーションを開くユーザーの場合、ログオフ コマンドを構成して、StoreFrontとすべてのアクティブなセッションからユーザーをログオフするか、StoreFrontのみからログオフすることができます。
- 切断: ユーザーは、個別に切断する必要なく、実行中のすべてのデスクトップとアプリケーションから一度に切断できます。
ワークスペースコントロールは、Citrix StoreFront接続を介してデスクトップおよびアプリケーションにアクセスするCitrix Workspaceアプリユーザーのみが利用できます。デフォルトでは、ワークスペースコントロールは仮想デスクトップセッションでは無効になっていますが、ホスト型アプリケーションでは有効になっています。公開デスクトップと、それらのデスクトップ内で実行されている公開アプリケーションの間では、デフォルトでセッション共有は発生しません。
ユーザーが新しいクライアントデバイスに移動すると、ユーザーポリシー、クライアントドライブマッピング、およびプリンター構成が適切に変更されます。ポリシーとマッピングは、ユーザーがセッションにログオンしているクライアントデバイスに応じて適用されます。たとえば、医療従事者が救急治療室のデバイスからログオフし、X線検査室のワークステーションにログオンします。X線検査室でのセッションに適したポリシー、プリンターマッピング、およびクライアントドライブマッピングは、セッション開始時に有効になります。
ユーザーが場所を変更したときに表示されるプリンターをカスタマイズできます。また、ユーザーがローカルプリンターに印刷できるかどうか、ユーザーがリモートで接続したときに消費される帯域幅、および印刷エクスペリエンスのその他の側面を制御することもできます。
ユーザー向けワークスペースコントロールの有効化と構成については、StoreFrontのドキュメントを参照してください。
セッションローミング
デフォルトでは、セッションはユーザーとともにクライアントデバイス間をローミングします。ユーザーがセッションを起動し、別のデバイスに移動すると、同じセッションが使用され、アプリケーションは両方のデバイスで利用できます。アプリケーションは、デバイスや現在のセッションの有無にかかわらず追従します。多くの場合、アプリケーションに割り当てられたプリンターやその他のリソースも追従します。
このデフォルトの動作には多くの利点がありますが、すべての場合に理想的とは限りません。PowerShell SDKを使用してセッションローミングを防止できます。
例1:医療従事者が2つのデバイスを使用しており、デスクトップPCで保険フォームを完成させ、タブレットで患者情報を閲覧しています。
- セッションローミングが有効になっている場合、両方のアプリケーションが両方のデバイスに表示されます(1つのデバイスで起動されたアプリケーションは、使用中のすべてのデバイスで表示されます)。これはセキュリティ要件を満たさない可能性があります。
- セッションローミングが無効になっている場合、患者記録はデスクトップPCに表示されず、保険フォームはタブレットに表示されません。
例2:生産管理者がオフィスにあるPCでアプリケーションを起動します。デバイス名と場所によって、そのセッションで利用できるプリンターやその他のリソースが決まります。その日の後半、彼はプリンターの使用が必要となる会議のため、隣の建物のオフィスに行きます。
- セッションローミングが有効になっている場合、生産管理者は会議室近くのプリンターにアクセスできない可能性があります。なぜなら、彼がオフィスで以前に起動したアプリケーションによって、その場所に近いプリンターやその他のリソースが割り当てられているためです。
- セッションローミングが無効になっている場合、彼が別のマシンに(同じ資格情報を使用して)ログオンすると、新しいセッションが開始され、近くのプリンターやリソースが利用可能になります。
セッションローミングの構成
セッションローミングを構成するには、「SessionReconnection」プロパティを持つ以下のエンタイトルメントポリシー規則コマンドレットを使用します。オプションで、「LeasingBehavior」プロパティも指定できます。
デスクトップセッションの場合:
Set-BrokerEntitlementPolicyRule <Delivery-Group-name> -SessionReconnection <value> -LeasingBehavior Allowed|Disallowed
アプリケーションセッションの場合:
Set-BrokerAppEntitlementPolicyRule <Delivery-Group-name> -SessionReconnection <value> -LeasingBehavior Allowed|Disallowed
ここで、valueは次のいずれかになります。
- Always(常に): クライアントデバイスやセッションが接続されているか切断されているかに関係なく、セッションは常にローミングします。これがデフォルト値です。
- DisconnectedOnly(切断時のみ): 既に切断されているセッションにのみ再接続します。それ以外の場合は、新しいセッションを起動します。(セッションは、まず切断するか、Workspace Controlを使用して明示的にローミングすることで、クライアントデバイス間でローミングできます。)別のクライアントデバイスからのアクティブな接続済みセッションは使用されません。代わりに、新しいセッションが起動されます。
- SameEndpointOnly(同じエンドポイントのみ): ユーザーは、使用するクライアントデバイスごとに一意のセッションを取得します。これにより、ローミングが完全に無効になります。ユーザーは、以前セッションで使用したのと同じデバイスにのみ再接続できます。
「LeasingBehavior」プロパティについては、以下で説明します。
その他の設定による影響:
セッションローミングを無効にすると、デリバリーグループ内のアプリケーションのプロパティにあるアプリケーション制限「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」の影響を受けます。
- セッションローミングを無効にする場合は、「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」アプリケーション制限も無効にしてください。
- 「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」アプリケーション制限を有効にする場合は、新しいデバイスで新しいセッションを許可する2つの値のいずれも構成しないでください。
ログオン間隔
デスクトップVDAを含む仮想マシンがログオンプロセス完了前に終了する場合、そのプロセスにより多くの時間を割り当てることができます。バージョン7.6以降のデフォルトは180秒です(バージョン7.0~7.5のデフォルトは90秒です)。
マシン(またはマシンカタログで使用されるマスターイメージ)で、次のレジストリキーを設定します。
キー:HKLM\SOFTWARE\Citrix\PortICA
- 値:
AutoLogonTimeout - 種類:
DWORD - 0~3600の範囲で、秒単位の10進数を指定します。
マスターイメージを変更した場合は、カタログを更新してください。
この設定は、デスクトップVDAを持つVMにのみ適用されます。サーバーVDAを持つマシンでのログオンタイムアウトは、Microsoftによって制御されます。