XenApp and XenDesktop

セッション

セッションアクティビティを維持することは、最高のユーザーエクスペリエンスを提供するために不可欠です。信頼性の低いネットワーク、変動の大きいネットワーク遅延、ワイヤレスデバイスの範囲制限による接続の喪失は、ユーザーの不満につながる可能性があります。ワークステーション間を素早く移動し、ログオンするたびに同じアプリケーションセットにアクセスできることは、病院の医療従事者など、多くのモバイルワーカーにとって優先事項です。

セッションの信頼性を最適化し、不便さ、ダウンタイム、生産性の損失を減らすために、以下の機能を使用します。これらの機能を使用することで、モバイルユーザーはデバイス間を迅速かつ簡単にローミングできます。

ログオン間隔セクションでは、デフォルト設定を変更する方法について説明します。

セッションからユーザーをログオフさせたり、セッションを切断したり、セッションの事前起動と残存を構成したりすることもできます。詳細については、デリバリーグループの管理の記事を参照してください。

セッションの信頼性

セッションの信頼性により、ネットワーク接続が中断されてもセッションはアクティブな状態を維持し、ユーザーの画面に表示され続けます。ユーザーは、ネットワーク接続が再開されるまで、使用中のアプリケーションを引き続き見ることができます。

この機能は、ワイヤレス接続を使用するモバイルユーザーにとって特に便利です。たとえば、ワイヤレス接続を使用しているユーザーが鉄道トンネルに入り、一時的に接続が失われたとします。通常、セッションは切断されてユーザーの画面から消え、ユーザーは切断されたセッションに再接続する必要があります。セッションの信頼性を使用すると、セッションはマシン上でアクティブなままになります。接続が失われたことを示すために、ユーザーのディスプレイはフリーズし、カーソルは砂時計の回転に変わり、トンネルの反対側で接続が再開されるまでその状態が続きます。ユーザーは中断中もディスプレイにアクセスし続け、ネットワーク接続が復元されるとアプリケーションとの対話を再開できます。セッションの信頼性により、再認証のプロンプトなしでユーザーが再接続されます。

Citrix Receiver™ユーザーは、コントローラー設定を上書きできません。

セッションの信頼性は、Transport Layer Security (TLS) とともに使用できます。TLSは、ユーザーデバイスとNetScaler® Gateway間で送信されるデータのみを暗号化します。

以下のポリシー設定でセッションの信頼性を有効にして構成します。

  • セッションの信頼性接続ポリシー設定により、セッションの信頼性が許可または禁止されます。
  • セッションの信頼性タイムアウトポリシー設定のデフォルトは180秒(3分)です。セッションの信頼性がセッションを開いたままにする時間を延長することはできますが、この機能はユーザーの利便性のために設計されているため、再認証をユーザーに促しません。セッションを開いたままにする時間を延長すると、ユーザーが注意をそらされてユーザーデバイスから離れ、セッションが不正なユーザーにアクセスされる可能性が高まります。
  • 受信セッションの信頼性接続はポート2598を使用します。ただし、セッションの信頼性ポート番号ポリシー設定でポート番号を変更しない限り。
  • ユーザーが再認証なしで中断されたセッションに再接続できないようにしたい場合は、自動クライアント再接続機能を使用します。自動クライアント再接続認証ポリシー設定を構成して、中断されたセッションに再接続する際にユーザーに再認証を促すことができます。

セッションの信頼性と自動クライアント再接続の両方を使用する場合、これら2つの機能は順次動作します。セッションの信頼性は、セッションの信頼性タイムアウトポリシー設定で指定した時間の経過後にユーザーセッションを終了または切断します。その後、自動クライアント再接続ポリシー設定が有効になり、切断されたセッションへのユーザーの再接続が試行されます。

自動クライアント再接続

自動クライアント再接続機能を使用すると、Citrix ReceiverはICA®セッションの意図しない切断を検出し、影響を受けるセッションにユーザーを自動的に再接続できます。この機能がサーバーで有効になっている場合、ユーザーは手動で再接続することなく作業を続行できます。

アプリケーションセッションの場合、Citrix Receiverは、再接続が成功するか、ユーザーが再接続の試行をキャンセルするまで、セッションへの再接続を試行します。

デスクトップセッションの場合、Citrix Receiverは、再接続が成功するか、ユーザーが再接続の試行をキャンセルしない限り、指定された期間、セッションへの再接続を試行します。デフォルトでは、この期間は5分です。この期間を変更するには、ユーザーデバイスで次のレジストリを編集します。

HKLM\Software\Citrix\ICA Client\TransportReconnectRetryMaxTimeSeconds; DWORD;<seconds>

ここで、<seconds>は、セッションの再接続がそれ以上試行されなくなるまでの秒数です。

次のポリシー設定を使用して、自動クライアント再接続を有効にして構成します。

  • 自動クライアント再接続。接続が中断された後、Citrix Receiverによる自動再接続を有効または無効にします。
  • 自動クライアント再接続認証。自動再接続後のユーザー認証の要件を有効または無効にします。
  • 自動クライアント再接続ログ記録。イベントログへの再接続イベントのログ記録を有効または無効にします。ログ記録はデフォルトで無効になっています。有効にすると、サーバーのシステムログは、成功および失敗した自動再接続イベントに関する情報をキャプチャします。各サーバーは、再接続イベントに関する情報を独自のシステムログに保存します。サイトは、すべてのサーバーの再接続イベントの結合ログを提供しません。

自動クライアント再接続は、暗号化されたユーザー資格情報に基づく認証メカニズムを組み込んでいます。ユーザーが最初にログオンすると、サーバーはユーザー資格情報を暗号化してメモリに保存し、暗号化キーを含むCookieを作成してCitrix Receiverに送信します。Citrix Receiverは、再接続のためにキーをサーバーに送信します。サーバーは資格情報を復号化し、認証のためにWindowsログオンに送信します。Cookieの有効期限が切れると、ユーザーはセッションに再接続するために再認証する必要があります。

自動クライアント再接続認証設定を有効にしている場合、Cookieは使用されません。代わりに、Citrix Receiverが自動的に再接続しようとすると、資格情報を要求するダイアログボックスがユーザーに表示されます。

ユーザー資格情報とセッションを最大限に保護するために、クライアントとサイト間のすべての通信に暗号化を使用してください。

icaclient.admファイルを使用して、Citrix Receiver for Windowsで自動クライアント再接続を無効にします。詳細については、お使いのCitrix Receiver for Windowsのバージョンのドキュメントを参照してください。

接続の設定も、自動クライアント再接続に影響します。

  • デフォルトでは、上記のとおり、サイトレベルのポリシー設定により自動クライアント再接続が有効になっています。ユーザーの再認証は不要です。ただし、サーバーのICA TCP接続が、通信リンクが切断されたセッションをリセットするように構成されている場合、自動再接続は行われません。自動クライアント再接続は、サーバーが切断された接続またはタイムアウトした接続がある場合にセッションを切断する場合にのみ機能します。このコンテキストでは、ICA TCP接続とは、TCP/IPネットワーク上のセッションに使用されるサーバーの仮想ポート(実際のネットワーク接続ではなく)を指します。
  • デフォルトでは、サーバー上のICA TCP接続は、切断された接続またはタイムアウトした接続を持つセッションを切断するように設定されています。切断されたセッションはシステムメモリにそのまま残り、Citrix Receiverによる再接続が可能です。
  • 接続は、切断された接続またはタイムアウトした接続を持つセッションをリセットまたはログオフするように構成できます。セッションがリセットされると、再接続を試みると新しいセッションが開始されます。これにより、ユーザーが使用中のアプリケーションの同じ場所に戻るのではなく、アプリケーションが再起動されます。
  • サーバーがセッションをリセットするように構成されている場合、自動クライアント再接続は新しいセッションを作成します。このプロセスでは、ユーザーはサーバーにログオンするために資格情報を入力する必要があります。
  • Citrix Receiverまたはプラグインが誤った認証情報を送信した場合、自動再接続が失敗することがあります。これは、攻撃中に発生したり、サーバーが切断された接続を検出してから時間が経ちすぎたと判断した場合に起こりえます。

ICAキープアライブ

ICAキープアライブ機能を有効にすると、切断された接続が切断されるのを防ぎます。有効にすると、サーバーがアクティビティを検出しない場合(たとえば、時刻の変更、マウスの移動、画面の更新がない場合)、この機能によりリモートデスクトップサービスがそのセッションを切断するのを防ぎます。サーバーは数秒ごとにキープアライブパケットを送信して、セッションがアクティブであるかどうかを検出します。セッションがアクティブでなくなった場合、サーバーはそのセッションを切断済みとしてマークします。

注:

ICAキープアライブは、セッションの信頼性を使用していない場合にのみ機能します。セッションの信頼性には、切断された接続が切断されるのを防ぐ独自のメカニズムがあります。セッションの信頼性を使用しない接続に対してのみ、ICAキープアライブを構成してください。

ICAキープアライブ設定は、Microsoft Windowsグループポリシーで構成されているキープアライブ設定を上書きします。

次のポリシー設定を使用して、ICAキープアライブを有効にして構成します。

  • ICAキープアライブタイムアウト。ICAキープアライブメッセージの送信に使用する間隔(1~3600秒)を指定します。切断された接続が非常にまれで、ユーザーがセッションに再接続できることが問題にならない環境で、ネットワーク監視ソフトウェアに非アクティブな接続を閉じさせたい場合は、このオプションを構成しないでください。

    デフォルトの間隔は60秒です。ICAキープアライブパケットは60秒ごとにユーザーデバイスに送信されます。ユーザーデバイスが60秒以内に応答しない場合、ICAセッションのステータスは切断済みに変わります。

  • ICAキープアライブ。ICAキープアライブメッセージを送信するか、送信を防止します。

ワークスペースコントロール

ワークスペースコントロールを使用すると、デスクトップとアプリケーションがユーザーに追従し、あるデバイスから別のデバイスへ移動できます。このローミング機能により、ユーザーはログオンするだけで、どのデバイスからでもすべてのデスクトップや開いているアプリケーションにアクセスでき、各デバイスでデスクトップやアプリケーションを再起動する必要がありません。たとえば、ワークスペースコントロールは、病院でさまざまなワークステーション間を迅速に移動し、ログオンするたびに同じアプリケーションセットにアクセスする必要がある医療従事者を支援できます。ワークスペースコントロールオプションを許可するように構成すると、これらの従業員は1つのクライアントデバイスで複数のアプリケーションから切断し、別のクライアントデバイスで同じアプリケーションを開くために再接続できます。

ワークスペースコントロールは、次のアクティビティに影響します。

  • ログオン: デフォルトでは、ワークスペースコントロールにより、ユーザーはログオン時に実行中のすべてのデスクトップとアプリケーションに自動的に再接続でき、手動で再開する必要がありません。ワークスペースコントロールを通じて、ユーザーは切断されたデスクトップやアプリケーション、および別のクライアントデバイスでアクティブになっているものを開くことができます。デスクトップまたはアプリケーションから切断しても、それはサーバー上で実行されたままになります。一部のデスクトップまたはアプリケーションを1つのクライアントデバイスで実行したままにし、別のクライアントデバイスでデスクトップまたはアプリケーションのサブセットに再接続する必要があるローミングユーザーがいる場合、ログオン再接続動作を構成して、ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くようにできます。
  • 再接続: サーバーにログオンした後、ユーザーは「再接続」をクリックすることで、いつでもすべてのデスクトップまたはアプリケーションに再接続できます。デフォルトでは、「再接続」は切断されたデスクトップまたはアプリケーション、および現在別のクライアントデバイスで実行されているものを開きます。ユーザーが以前に切断したデスクトップまたはアプリケーションのみを開くように「再接続」を構成できます。
  • ログオフ: StoreFront™ を介してデスクトップまたはアプリケーションを開くユーザーの場合、「ログオフ」コマンドを構成して、StoreFront とすべてのアクティブなセッションから同時にユーザーをログオフさせるか、StoreFront からのみログオフさせることができます。
  • 切断: ユーザーは、実行中のすべてのデスクトップとアプリケーションから一度に切断でき、個別に切断する必要はありません。

ワークスペースコントロールは、Citrix StoreFront接続を介してデスクトップおよびアプリケーションにアクセスするCitrix Receiverユーザーのみが利用できます。デフォルトでは、ワークスペースコントロールは仮想デスクトップセッションでは無効になっていますが、ホスト型アプリケーションでは有効になっています。公開されたデスクトップと、それらのデスクトップ内で実行されている公開されたアプリケーションとの間で、セッション共有はデフォルトでは発生しません。

ユーザーが新しいクライアントデバイスに移動すると、ユーザーポリシー、クライアントドライブマッピング、およびプリンター構成が適切に変更されます。ポリシーとマッピングは、ユーザーが現在セッションにログオンしているクライアントデバイスに従って適用されます。たとえば、医療従事者が病院の救急治療室にあるクライアントデバイスからログオフし、病院の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> は次のいずれかになります。

  • 常に。セッションは、クライアントデバイスや、セッションが接続されているか切断されているかに関係なく、常にローミングします。これがデフォルト値です。
  • 切断時のみ。既に切断されているセッションにのみ再接続します。それ以外の場合は、新しいセッションを起動します。(セッションは、まず切断するか、Workspace Controlを使用して明示的にローミングすることで、クライアントデバイス間をローミングできます。)別のクライアントデバイスからのアクティブな接続済みセッションは使用されず、代わりに新しいセッションが起動されます。
  • 同じエンドポイントのみ。ユーザーは、使用するクライアントデバイスごとに一意のセッションを取得します。これにより、ローミングが完全に無効になります。ユーザーは、セッションで以前に使用されたのと同じデバイスにのみ再接続できます。

「LeasingBehavior」プロパティについては、以下で説明します。

その他の設定による影響

セッションローミングを無効にすると、デリバリーグループのアプリケーションのプロパティにあるアプリケーション制限「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」の影響を受けます。

  • セッションローミングを無効にする場合は、「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」アプリケーション制限も無効にします。
  • 「ユーザーごとにアプリケーションのインスタンスを1つのみ許可する」アプリケーション制限を有効にする場合は、新しいデバイスで新しいセッションを許可する2つの値のいずれも構成しないでください。

接続リースとセッションローミング

接続リースについてご存じない場合は、接続リースの記事を参照してください。

Controllerがリース接続モードに入ると、セッションの再接続はデフォルト値に戻り、ユーザーはデスクトップまたはアプリケーションのアクティブまたは切断されたセッションのいずれか1つにのみ再接続されます。

セキュリティをさらに強化するために、デフォルト以外のセッションローミング値を構成していて、複数のデバイスで同じログオン資格情報を共有する複数のユーザーがいる場合は、そのユーザーアカウントを含むデリバリーグループの接続リース機能を無効にすることを検討してください。

なぜでしょうか?このシナリオでは、1つのセッションがすべてのデバイスで共有されます。たとえば、Controllerがリース接続モードのときに、あるユーザーが機密情報を表示しており、同じ資格情報で再接続した別のユーザーにその情報が見られることを意図していない場合、これは望ましくない可能性があります。

エンタイトルメントポリシーで接続リースを無効にすると、この可能性が排除されます。Controllerがリース接続モードの場合でも、ユーザーは同じログオンを持つ別のユーザーのセッションを見ることはできません。他のエンタイトルメントポリシーはそのまま維持できます。個々のユーザーアカウントは、個別のエンタイトルメントを通じて接続リース機能を使用できます。

エンタイトルメントポリシーで接続リースを無効にするには、エンタイトルメントポリシーのコマンドレットに「LeasingBehavior Disallowed」プロパティを追加します。接続リースを無効にする場合、そのエンタイトルメントポリシーに対してすでに作成およびキャッシュされている起動リースを手動で削除する必要があります。そうしないと、データベースの停止中にユーザーが再接続できてしまいます。

ログオン間隔

デスクトップVDAを含む仮想マシンがログオンプロセス完了前に閉じられた場合、そのプロセスにより多くの時間を割り当てることができます。バージョン7.6以降のデフォルトは180秒です(バージョン7.0~7.5のデフォルトは90秒です)。

マシン(またはマシンカタログで使用されるマスターイメージ)で、次のレジストリキーを設定します。

Key: HKLM\SOFTWARE\Citrix\PortICA

値: オートログオンタイムアウト

種類: ディーワード

0~3600の範囲で、10進数の時間を秒単位で指定します。

マスターイメージを変更した場合は、カタログを更新してください。

注:

この設定は、デスクトップ(ワークステーション)VDAを持つVMにのみ適用されます。サーバーVDAを持つマシンでのログオンタイムアウトは、Microsoftによって制御されます。

セッション