PIVスマートカード認証を構成する

この記事では、スマートカード認証機能を有効にするために、DirectorサーバーとActive Directoryで必要な構成について説明します。

注:

スマートカード認証は、同じActive Directoryドメインのユーザーに対してのみサポートされます。

ディレクターサーバーの構成

Directorサーバーで次の構成手順を実行します。

  1. クライアント証明書マッピング認証をインストールして有効にします。Microsoftドキュメントの「クライアント証明書マッピング認証」にある「Active Directoryを使用したクライアント証明書マッピング認証」の手順に従ってください。

  2. Directorサイトでフォーム認証を無効にします。

    IISマネージャーを起動します。

    サイト > 既定のWebサイト > Director に移動します。

    認証 を選択します。

    フォーム認証 を右クリックし、無効 を選択します。

    フォーム認証を無効にする

  3. クライアント証明書認証のために、Director URLをより安全なhttpsプロトコル(HTTPではなく)に構成します。

    1. IISマネージャーを起動します。

    2. サイト」 > 「既定の Web サイト」 > 「Director」に移動します。

    3. SSL 設定」を選択します。

    4. SSL を要求」と「クライアント証明書 > 要求」を選択します。

    SSL の設定(/ja-jp/citrix-virtual-apps-desktops/2503/media/dir-smartcard-config2.png)

  4. web.config を更新します。web.config ファイル (c:\inetpub\wwwroot\Director にあります) をテキストエディターで開きます。

<system.webServer> 親要素の下に、次のスニペットを最初の子要素として追加します。

<defaultDocument>
   <files>
       <add value="LogOn.aspx"/>
   </files>
</defaultDocument>

アクティブ ディレクトリ の 構成

デフォルトでは、Director アプリケーションは「アプリケーションプール」のIDプロパティで実行されます。スマートカード認証には委任が必要であり、そのためにはDirectorアプリケーションのIDがサービスホスト上でTrusted Computing Base (TCB) 権限を持っている必要があります。

Citrixでは、アプリケーションプールID用に個別のサービスアカウントを作成することをお勧めします。Microsoft MSDNの記事「Protocol Transition with Constrained Delegation Technical Supplement」の指示に従って、サービスアカウントを作成し、TCB権限を割り当ててください。

新しく作成したサービスアカウントをDirectorアプリケーションプールに割り当てます。次の図は、サンプルサービスアカウント「Domain Pool」のプロパティダイアログを示しています。

サンプルサービスアカウント(/ja-jp/citrix-virtual-apps-desktops/2503/media/dir-smartcard-config3.png)

このアカウントに対して、次のサービスを構成します。

  • デリバリーコントローラー™:HOST, HTTP
  • ディレクター: ホスト, HTTP
  • アクティブディレクトリ:GC、LDAP

構成するには、

  1. ユーザーアカウントのプロパティダイアログで、追加をクリックします。

  2. サービスの追加ダイアログで、ユーザーまたはコンピューターをクリックします。

  3. デリバリーコントローラーのホスト名を選択します。

  4. 利用可能なサービスリストから、HOSTとHTTPのサービスの種類を選択します。

サービスを構成する

同様に、DirectorおよびActive Directoryホストのサービスの種類を追加します。

サービスプリンシパル名レコードを作成する

各DirectorサーバーおよびDirectorサーバーのプールへのアクセスに使用される負荷分散された仮想IP(VIP)ごとにサービスアカウントを作成する必要があります。新しく作成されたサービスアカウントへの委任を構成するために、サービスプリンシパル名(SPN)レコードを作成する必要があります。

  • DirectorサーバーのSPNレコードを作成するには、次のコマンドを使用します。

      setspn -a http/<directorServer>.<domain_fqdn> <domain>\<DirectorAppPoolServiceAcct>
    
     <!--NeedCopy-->
    
  • 負荷分散されたVIPのSPNレコードを作成するには、次のコマンドを使用します。

      setspn -S http/<DirectorFQDN> <domain>\<DirectorAppPoolServiceAcct>
    
     <!--NeedCopy-->
    
  • 作成されたSPNを表示またはテストするには、次のコマンドを使用します。

     setspn –l <DirectorAppPoolServiceAcct>
    
     <!--NeedCopy-->
    

スマートカード

  • 左ペインでDirector仮想ディレクトリを選択し、アプリケーション設定をダブルクリックします。アプリケーション設定ウィンドウ内で、追加をクリックし、AllowKerberosConstrainedDelegationが1に設定されていることを確認します。

ケルベロス

  • 左側のペインで「アプリケーションプール」を選択し、Directorアプリケーションプールを右クリックして「詳細設定」を選択します。

  • ID」を選択し、省略記号(「…」)をクリックして、サービスアカウントのドメイン\ログオンとパスワードの資格情報を入力します。IISコンソールを閉じます。

ID

  • 管理者として実行したコマンドプロンプトから、ディレクトリをC:\Windows\System32\inetsrvに変更し、次のコマンドを入力します。
   appcmd.exe set config “Default Web Site” -section:system.webServer/security/authentication/clientCertificateMappingAuthentication /enabled:”True” /commit:apphost

<!--NeedCopy-->

    appcmd.exe set config “Default Web Site” -section:system.webServer/security/access /sslFlags:”Ssl, SslNegotiateCert” /commit:apphost
<!--NeedCopy-->

コマンドプロンプト

Firefoxブラウザーの構成

Firefoxブラウザーを使用するには、OpenSC 0.17.0で入手できるPIVドライバーをインストールします。インストールと構成の手順については、「Installing OpenSC PKCS#11 Module in Firefox, Step by Step」を参照してください。 Directorでのスマートカード認証機能の使用方法については、Directorの記事の「Use Director with PIV based smart card authentication」セクションを参照してください。

PIVスマートカード認証を構成する