セッションの回復性設定
セッションのアクティビティを維持することは、最高のユーザーエクスペリエンスを提供するために不可欠です。信頼性の低いネットワーク、変動の大きいネットワーク遅延、ワイヤレスデバイスの範囲制限などにより接続が失われると、ユーザーの不満につながる可能性があります。医療従事者など、多くのモバイルワーカーにとって、デバイス間を素早く移動し、ログオンするたびに同じアプリケーションにアクセスすることは優先事項です。
この記事で説明する機能は、セッションの信頼性を最適化し、不便さ、ダウンタイム、生産性の損失を軽減します。これらの機能を使用することで、モバイルユーザーはデバイス間を迅速かつ簡単にローミングできます。
セッションの信頼性
セッションの信頼性 (Session Reliability) は、ネットワーク接続が中断されたときに、セッションをアクティブな状態に保ち、ユーザーの画面に表示し続けます。ユーザーは、ネットワーク接続が再開されるまで、使用しているアプリケーションを引き続き見ることができます。
この機能は、ワイヤレス接続を使用するモバイルユーザーにとって特に便利です。たとえば、ワイヤレス接続を使用しているユーザーが鉄道トンネルに入り、一時的に接続が失われたとします。通常、セッションは切断され、ユーザーの画面から消え、ユーザーは切断されたセッションに再接続する必要があります。セッションの信頼性を使用すると、セッションはマシン上でアクティブなままになります。接続が失われたことを示すために、ユーザーのディスプレイはフリーズし、カーソルはトンネルの反対側で接続が再開されるまで回転する砂時計に変わります。ユーザーは中断中もディスプレイにアクセスし続け、ネットワーク接続が復元されるとアプリケーションとの対話を再開できます。セッションの信頼性は、再認証のプロンプトなしでユーザーを再接続します。
Citrix Workspace™アプリのユーザーは、Controllerの設定を上書きできません。
セッションの信頼性は、トランスポート層セキュリティ (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アプリが自動的に再接続しようとすると、資格情報を要求するダイアログボックスがユーザーに表示されます。
ユーザー資格情報とセッションを最大限に保護するために、クライアントとサイト間のすべての通信に暗号化を使用してください。
icaclient.admファイルを使用して、Windows版Citrix Workspaceアプリで自動クライアント再接続を無効にします。詳細については、お使いのWindows版Citrix Workspaceアプリのドキュメントを参照してください。
接続の設定も自動クライアント再接続に影響します。
- 既定では、前述のとおり、サイトレベルのポリシー設定により自動クライアント再接続が有効になっています。ユーザーの再認証は不要です。ただし、サーバーのICA TCP接続が、通信リンクが切断されたセッションをリセットするように構成されている場合、自動再接続は行われません。自動クライアント再接続は、切断された接続またはタイムアウトした接続がある場合に、サーバーがセッションを切断する場合にのみ機能します。このコンテキストでは、ICA TCP接続とは、TCP/IPネットワーク上のセッションに使用されるサーバーの仮想ポート(実際のネットワーク接続ではなく)を指します。
- 既定では、サーバー上のICA TCP接続は、切断された接続またはタイムアウトした接続を持つセッションを切断するように設定されています。切断されたセッションはシステムメモリに保持され、Citrix Workspaceアプリによる再接続が可能です。
- 接続は、切断された接続またはタイムアウトした接続を持つセッションをリセットまたはログオフするように構成できます。セッションがリセットされると、再接続を試みると新しいセッションが開始されます。ユーザーを使用中のアプリケーションの同じ場所に戻すのではなく、アプリケーションが再起動されます。
- サーバーがセッションをリセットするように構成されている場合、自動クライアント再接続は新しいセッションを作成します。このプロセスでは、ユーザーがサーバーにログオンするために資格情報を入力する必要があります。
- Citrix Workspaceアプリまたはプラグインが誤った認証情報を送信した場合(攻撃中に発生する可能性あり)、またはサーバーが切断された接続を検出してから時間が経ちすぎたと判断した場合、自動再接続は失敗する可能性があります。
ICAキープアライブ
ICAキープアライブ機能を有効にすると、切断された接続が切断状態になるのを防ぎます。有効にすると、サーバーがアクティビティを検出しない場合、この機能はリモートデスクトップサービスがそのセッションを切断するのを防ぎます。アクティビティがない例としては、時計の変更がない、マウスの動きがない、画面の更新がないなどが挙げられます。サーバーは数秒ごとにキープアライブパケットを送信し、セッションがアクティブであるかどうかを検出します。セッションがアクティブでなくなった場合、サーバーはそのセッションを切断済みとしてマークします。
重要:
ICAキープアライブは、セッションの信頼性を使用していない場合にのみ機能します。セッションの信頼性には、切断された接続が切断状態になるのを防ぐ独自のメカニズムがあります。ICAキープアライブは、セッションの信頼性を使用しない接続に対してのみ構成してください。
ICAキープアライブ設定は、Windowsグループポリシーで構成されているキープアライブ設定を上書きします。
次のポリシー設定でICAキープアライブを有効にして構成します。
-
ICAキープアライブタイムアウト: ICAキープアライブメッセージを送信するために使用される間隔(1~3600秒)を指定します。切断された接続が非常にまれで、ユーザーがセッションに再接続できることが問題にならない環境で、ネットワーク監視ソフトウェアに非アクティブな接続を閉じさせたい場合は、このオプションを構成しないでください。
デフォルトの間隔は60秒です。ICAキープアライブパケットは60秒ごとにユーザーデバイスに送信されます。ユーザーデバイスが60秒以内に応答しない場合、ICAセッションのステータスは切断済みに変わります。
-
ICAキープアライブ: ICAキープアライブメッセージを送信するか、送信を防止します。
ワークスペースコントロール
ワークスペースコントロールを使用すると、デスクトップとアプリケーションがユーザーをあるデバイスから別のデバイスへと追跡できます。このローミング機能により、ユーザーはログオンするだけで、各デバイスでデスクトップやアプリケーションを再起動することなく、どこからでもすべてのデスクトップや開いているアプリケーションにアクセスできます。たとえば、ワークスペースコントロールは、病院で異なるワークステーション間を迅速に移動し、ログオンするたびに同じアプリケーションセットにアクセスする必要がある医療従事者を支援できます。ワークスペースコントロールオプションを許可するように構成した場合、これらの医療従事者は、1つのクライアントデバイスで複数のアプリケーションから切断し、別のクライアントデバイスで同じアプリケーションを開くために再接続できます。
ワークスペースコントロールは、次のアクティビティに影響します。
- ログオン: デフォルトでは、ワークスペースコントロールにより、ユーザーはログオン時に実行中のすべてのデスクトップとアプリケーションに自動的に再接続でき、手動で再開する必要がなくなります。ワークスペースコントロールを通じて、ユーザーは切断されたデスクトップやアプリケーション、および別のクライアントデバイスでアクティブになっているものを開くことができます。デスクトップまたはアプリケーションから切断しても、それはサーバー上で実行されたままになります。一部のデスクトップまたはアプリケーションを1つのクライアントデバイスで実行し続けながら、別のクライアントデバイスでデスクトップまたはアプリケーションのサブセットに再接続する必要があるローミングユーザーがいる場合、ログオン再接続動作を構成して、ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くようにできます。
- 再接続: サーバーにログオンした後、ユーザーは「再接続」をクリックすることで、いつでもすべてのデスクトップまたはアプリケーションに再接続できます。デフォルトでは、「再接続」は切断されたデスクトップまたはアプリケーション、および現在別のクライアントデバイスで実行されているものを開きます。ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くように「再接続」を構成できます。
- ログオフ: StoreFront™ を介してデスクトップまたはアプリケーションを開くユーザーの場合、ログオフコマンドを構成して、StoreFrontとすべてのアクティブなセッションからユーザーをログオフするか、StoreFrontからのみログオフさせることができます。
- 切断: ユーザーは、実行中のすべてのデスクトップとアプリケーションから一度に切断でき、個別に切断する必要はありません。
ワークスペースコントロールは、Citrix StoreFront接続を介してデスクトップとアプリケーションにアクセスするCitrix Workspaceアプリユーザーのみが利用できます。デフォルトでは、ワークスペースコントロールは仮想デスクトップセッションでは無効になっていますが、ホスト型アプリケーションでは有効になっています。公開されたデスクトップと、それらのデスクトップ内で実行されている公開されたアプリケーションとの間で、セッション共有はデフォルトでは発生しません。
ユーザーが新しいクライアントデバイスに移動すると、ユーザーポリシー、クライアントドライブマッピング、およびプリンター構成が適切に変更されます。ポリシーとマッピングは、ユーザーがセッションにログオンしているクライアントデバイスに従って適用されます。たとえば、医療従事者が救急治療室のデバイスからログオフし、X線検査室のワークステーションにログオンすると、X線検査室でのセッションに適したポリシー、プリンターマッピング、およびクライアントドライブマッピングがセッション開始時に有効になります。
ユーザーが場所を変更したときに表示されるプリンターをカスタマイズできます。また、ユーザーがローカルプリンターに印刷できるかどうか、ユーザーがリモートで接続したときに消費される帯域幅の量、およびその他の印刷エクスペリエンスの側面を制御することもできます。
ユーザー向けにワークスペースコントロールを有効化および構成する方法については、StoreFrontのドキュメントを参照してください。
セッションローミング
注:
以下の情報は、PowerShellを使用してセッションローミングを構成するためのガイドです。代わりにWeb Studioを使用することもできます。詳細については、「デリバリーグループの管理」を参照してください。
デフォルトでは、セッションはユーザーとともにクライアントデバイス間をローミングします。ユーザーがセッションを起動し、別のデバイスに移動すると、同じセッションが使用され、両方のデバイスでアプリケーションが利用可能になります。アプリケーションは、デバイスや現在のセッションの有無にかかわらず追跡されます。多くの場合、アプリケーションに割り当てられたプリンターやその他のリソースも追跡されます。
このデフォルトの動作には多くの利点がありますが、すべての場合に理想的とは限りません。PowerShell SDKを使用してセッションローミングを防止できます。
例1:医療従事者が2台のデバイスを使用しており、デスクトップPCで保険フォームを完成させ、タブレットで患者情報を確認しています。
- セッションローミングが有効になっている場合、両方のアプリケーションが両方のデバイスに表示されます(一方のデバイスで起動されたアプリケーションは、使用中のすべてのデバイスで表示されます)。これはセキュリティ要件を満たさない可能性があります。
- セッションローミングが無効になっている場合、患者記録はデスクトップ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が制御します。