スマートカード認証の構成

Citrix Receiver for Windowsでは、以下のスマートカード認証機能がサポートされます。XenDesktopおよびStoreFrontでの構成については、これらの製品のドキュメントを参照してください。このトピックでは、Citrix Receiver for Windowsでスマートカードを使用するための構成について説明します。

  • パススルー認証(シングルサインオン) – ユーザーがCitrix Receiver for Windowsにログオンするときに使用するスマートカードの資格情報が保持されます。これにより、Citrix Receiver for Windowsでのスマートカード認証が以下のように処理されます。

    • ドメインに属しているデバイスのユーザーがスマートカードの資格情報でCitrix Receiverにログオンした場合、仮想デスクトップやアプリケーションの起動時に資格情報を再入力する必要はありません。
    • ドメインに属していないデバイスのユーザーがスマートカードの資格情報でCitrix Receiver for Windowsにログオンした場合、仮想デスクトップやアプリケーションの起動時に資格情報を再入力する必要があります。

    パススルー認証を使用するには、StoreFrontおよびCitrix Receiver for Windowsでの構成が必要です。

  • 2モード認証 - 認証方法として、スマートカードと、ユーザー名およびパスワードの入力を選択できます。この機能は、ユーザーがスマートカードを使用できない場合(スマートカードを自宅に忘れた場合や資格情報の有効期限が切れた場合など)に便利です。これを実行できるようにするには、スマートカードを許可するためFalseに設定したDisableCtrlAltDelメソッドを使って、サイトごとに専用ストアをセットアップする必要があります。2モード認証にはStoreFront構成が必要です。NetScaler Gatewayが解決策にある場合、構成する必要もあります。

    また2モード認証により、StoreFront管理者はStoreFrontコンソールで選択して同じストアにエンドユーザーにユーザー名とパスワードの両方とスマートカード認証を提供できます。StoreFrontのドキュメントを参照してください。

  • 複数の証明書 - 単一または複数のスマートカードを使用する場合、複数の証明書を使用できます。ユーザーがスマートカードをリーダーに挿入すると、Citrix Receiver for Windowsを含む、ユーザーデバイス上で実行されるすべてのアプリケーションで複数の証明書を使用できるようになります。証明書の選択方法を変更するには、Citrix Receiver for Windowsを構成します。

  • クライアント証明書による認証 - この機能を使用するには、NetScaler GatewayおよびStoreFrontでの構成が必要です。

    • NetScaler Gatewayを使ってStoreFrontリソースにアクセスする場合、ユーザーがスマートカードを取り外した後で再認証が必要になることがあります。
    • NetScaler GatewayのSSL構成で常にクライアント証明書による認証が使用されるようにすると、より安全になります。ただし、この構成では2モード認証を使用できません。
  • ダブルホップセッション - ダブルホップセッションでは、Receiverとユーザーの仮想デスクトップとの間に追加の接続が確立されます。ダブルホップセッションをサポートする展開方法については、XenDesktopのドキュメントを参照してください。

  • スマートカード対応のアプリケーション - Microsoft OutlookやMicrosoft Officeなどのスマートカード対応アプリケーションでは、仮想デスクトップやアプリケーションセッションでドキュメントにデジタル署名を追加したりファイルを暗号化したりできます。

前提条件

このトピックの内容を理解するには、XenDesktopおよびStoreFrontのドキュメントで説明されているスマートカードについての理解が必要です。

制限事項

  • 証明書は、ユーザーデバイス上ではなくスマートカード上に格納されている必要があります。
  • Citrix Receiver for Windowsはユーザー証明書を保存しませんが、構成時にPINを格納できます。PINはユーザーセッションの間に非ページ化メモリにのみキャッシュされ、ディスク内にはどの時点においても格納されません。
  • Citrix Receiver for Windowsでは、スマートカードが挿入されたときに自動的には切断セッションに再接続されません。
  • スマートカード認証が構成されている場合、Citrix Receiver for Windowsでは仮想プライベートネットワーク(VPN:Virtual Private Network)のシングルサインオンやセッションの事前起動がサポートされません。スマートカード認証でVPNトンネルを使用するには、ユーザーがNetScaler Gateway Plug-inをインストールしてWebページ経由でログオンする必要があります。この場合、各手順でスマートカードとPINによる認証が必要になります。スマートカードユーザーは、NetScaler Gateway Plug-inを使用したStoreFrontへのパススルー認証を使用できません。
  • Citrix Receiver for Windows Updaterとcitrix.comやMerchandising Server間の通信では、NetScaler Gateway上のスマートカード認証を使用できません。

警告

このトピックの一部の構成手順では、レジストリの編集が必要です。レジストリエディターの使用を誤ると、深刻な問題が発生する可能性があり、Windowsのインストールが必要になる場合もあります。レジストリエディターの誤用による障害に対して、Citrixでは一切責任を負いません。レジストリエディターは、お客様の責任と判断の範囲でご使用ください。また、レジストリファイルのバックアップを作成してから、レジストリを編集してください。

スマートカード認証のシングルサインオンを有効にするには

Citrix Receiver for Windowsのインストール時に、以下のコマンドラインオプションを指定します。

  • ENABLE_SSON=Yes

    シングルサインオンは、「パススルー認証」と呼ばれることもあります。このオプションを指定すると、Citrix Receiver for WindowsでPINを繰り返し入力する必要がなくなります。

または、以下のポリシーおよびレジストリを設定します。

  • [管理用テンプレート]>[従来の管理用テンプレート(ADM)]>[Citrixコンポーネント]>[Citrix Receiver]>[ユーザー認証]>[ローカルユーザー名とパスワード]

  • シングルサインオンコンポーネントをインストールしていないデバイス上で、以下のいずれかのレジストリキーでSSONCheckEnabledにfalseを設定します。これにより、Citrix Receiver for WindowsのAuthentication Managerでシングルサインオンコンポーネントがチェックされなくなり、Citrix Receiver for WindowsでStoreFrontへの認証が可能になります。

    HKEY_CURRENT_USER\Software\Citrix\AuthManager\protocols\integratedwindows\

    HKEY_LOCAL_MACHINE\Software\Citrix\AuthManager\protocols\integratedwindows\

または、Kerberosの代わりにStorefrontに対してスマートカード認証を有効にできます。Kerberosの代わりにStorefrontに対してスマートカード認証を有効にするには、次のコマンドラインオプションでCitrix Receiver for Windowsをインストールします。これには管理者権限が必要です。マシンをドメインに参加させる必要はありません。

  • /includeSSONを指定すると、シングルサインオン認証(パススルー認証)がインストールされます。資格情報のキャッシュおよびパススルードメインベース認証の使用を有効にします。

  • Receiverのスマートカード認証とは別の方法(ユーザー名とパスワードなど)でユーザーがエンドポイントにログオンしている場合、コマンドラインは次のようになります。

    pre codeblock /includeSSON LOGON_CREDENTIAL_CAPTURE_ENABLE=No

    これによりログオン時に資格情報がキャプチャされるのを防ぎ、Citrix Receiver for Windowsへのログオン時にPINを格納することができます。

  • グループポリシーエディターで、[コンピューターの構成]、[管理用テンプレート]、[従来の管理用テンプレート(ADM)]、[Citrix Components]、[Citrix Receiver]、[User authentication]、[Local user name and password]の順に選択します。

    [パススルー認証を有効にします]。構成およびセキュリティ設定によっては、パススルー認証を実行するために [すべてのICA接続にパススルー認証を許可します] チェックボックスをオンにする必要があります。

StoreFrontを構成するには:

  • 認証サービスを構成する場合、[スマートカード]チェックボックスをオンにします。

StoreFrontでスマートカードを使用する場合は、StoreFrontドキュメントの「認証サービスの構成」を参照してください。

ユーザーデバイスでスマートカードを使用できるようにするには

  1. デバイスのキーストアに、証明機関のルート証明書をインポートします。
  2. ご注意ください。
  3. Citrix Receiver for Windowsをインストールして構成します。

証明書の選択方法を変更するには

複数の証明書が有効な場合、Citrix Receiver for Windowsではデフォルトでそれらの証明書の一覧が表示され、ユーザーは使用する証明書を選択できます。管理者は、デフォルトの証明書(スマートカードプロバイダー指定の証明書)、または有効期限が最も残っている証明書が使用されるように構成できます。有効なログオン証明書がない場合はユーザーにメッセージが表示され、使用可能なほかのログオン方法が提示されます。

有効な証明書とは、以下のものを指します。

  • ローカルコンピューターの現在時刻に基づき、証明書が有効期限内である。
  • サブジェクトの公開キーでRSAアルゴリズムが使用されており、キーの長さが1024、2048、または4096ビットである。
  • Key UsageフィールドにDigital Signatureが含まれている。
  • Subject Alternative Nameフィールドにユーザープリンシパル名(UPN)が含まれている。
  • Enhanced Key UsageフィールドにSmart Card LogonおよびClient Authentication、またはAll Key Usagesが含まれている。
  • 証明書の発行者チェーンに含まれる証明機関の1つが、TLSハンドシェイク時にサーバーから送信される、許可される識別名(DN)の1つに合致している。

証明書の選択方法を変更するには、以下のいずれかの構成を行います。

  • Citrix Receiver for Windowsのコマンドラインで、AM\CERTIFICATESELECTIONMODE={ Prompt SmartCardDefault LatestExpiry }オプションを指定する。

    デフォルト値は、Promptです。SmartCardDefaultまたはLatestExpiryを指定して複数の証明書が該当する場合は、ユーザーが証明書を選択するための一覧が表示されます。

  • レジストリキーHKCUまたはHKLM\Software\[Wow6432Node]Citrix\AuthManager: CertificateSelectionMode={ Prompt SmartCardDefault LatestExpiry }を追加する。

    最適な証明書をユーザーが選択できるように、HKEY_CURRENT_USERでの設定は、HKEY_LOCAL_MACHINEの設定よりも優先されます。

CSPのPIN入力メッセージを使用するには

Citrix Receiver for Windowsのデフォルトでは、スマートカードのCryptographic Service Provider(CSP)ではなくPIN入力用のメッセージが表示されます。PINの入力が必要な場合、Citrix Receiver for Windowsがメッセージを表示して、ユーザーにより入力されたPINをスマートカードのCSPに渡します。プロセスごとやセッションごとのPINのキャッシュが禁止されているなど、環境やスマートカードでより厳格なセキュリティが求められる場合は、CSPコンポーネントを使用してPIN入力用のメッセージを表示してPINを処理できます。

PIN入力の処理方法を変更するには、以下のいずれかの構成を行います。

  • Citrix Receiver for Windowsのコマンドラインで、AM_SMARTCARDPINENTRY=CSPオプションを指定する。
  • レジストリキーHKLM\Software\[Wow6432Node]\Citrix\AuthManager: SmartCardPINEntry=CSPを追加する。