フェデレーション認証サービス

最終公開日 : Nov 13, 2026

概要

Citrix Federated Authentication Service (FAS) は、Active Directory 証明書サービスと統合するように設計された特権コンポーネントです。ユーザーに証明書を動的に発行し、スマートカードを持っているかのように Active Directory 環境にログオンできるようにします。この機能により、StoreFront™ は、Security Assertion Markup Language (SAML) アサーションなど、より広範な認証オプションを使用できます。SAML は、インターネット上で従来の Windows ユーザーアカウントの代替として一般的に使用されます。
注:
SAML 認証を使用するには、VDA で FAS を適切に構成します。
CU3 以降、Linux VDA は FAS サーバーとのデータ転送に短い接続を使用します。
次の図は、Microsoft 証明機関と統合され、StoreFront および VDA にサポートサービスを提供する FAS を示しています。
FAS アーキテクチャ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/fas-architecture.png)
ユーザーが Citrix 環境へのアクセスを要求すると、信頼された StoreFront サーバーは FAS に接続します。FAS は、そのセッションの証明書で単一の Citrix Virtual Apps または Citrix Virtual Desktops™ セッションが認証できるようにするチケットを付与します。VDA がユーザーを認証する必要がある場合、FAS に接続してチケットを引き換えます。FAS のみがユーザー証明書の秘密キーにアクセスできます。VDA は、証明書を使用して実行する必要がある署名および復号化操作をすべて FAS に送信する必要があります。

要件

FAS は Windows Server 2008 R2 以降でサポートされています。
  • FAS は、他の Citrix コンポーネントを含まないサーバーにインストールすることをお勧めします。
  • Windows Server は、ドメインユーザーに証明書を自動的に発行するため、およびそれらのユーザー証明書と秘密キーにアクセスするために、登録機関証明書と秘密キーにアクセスできるように保護されている必要があります。
Citrix Virtual Apps™ または Citrix Virtual Desktops サイトの場合:
  • Delivery Controller は、最低バージョン 7.9 である必要があります。
  • StoreFront サーバーは、最低バージョン 3.6 (XenApp および XenDesktop 7.9 ISO に付属のバージョン) である必要があります。
  • Linux VDA は、最低バージョン 7.18 である必要があります。通常の方法でマシンカタログを作成する前に、Federated Authentication Service グループポリシー構成が VDA に正しく適用されていることを確認してください。詳しくは、この記事の「グループポリシーの構成」セクションを参照してください。
参照:
  • Active Directory 証明書サービス
    <https://social.technet.microsoft.com/wiki/contents/articles/1137.active-directory-certificate-services-ad-cs-introduction.aspx>
  • 証明書ログオンのためにWindowsを構成する
    <http://support.citrix.com/article/CTX206156>
  • フェデレーション認証サービスをインストールする

証明書ログオンのためにWindowsを構成する

証明書ログオンのためにWindowsを構成する方法については、Knowledge Centerの記事CTX206156を開き、Smart\_card\_config\_Citrix\_Env.pdfファイル(以下「PDFファイル」)をダウンロードして読んでください。PDFファイルに従って以下の手順を実行しますが、各手順で示されている相違点や補足事項に注意してください。操作対象のマシン(例:AD、Delivery Controller、StoreFront)に特に注意してください。

Windowsドメインをセットアップする(AD上)

ドメインコントローラーの役割をインストールする

PDFファイルの「Installing Domain Controller Roles」セクションを参照してください。
Active Directory証明書サービスをインストールする際は、以下のオプションが選択されていることを確認してください。
役割サービスを選択する画像Active Directory証明書サービスを構成する画像AD CS構成ウィンドウの画像
http://localhost/certsrv/を開き、以下のウェルカムページが表示されるか確認してください。表示されていれば、Active Directory証明書サービスは正常にインストールされています。
AD証明書サービスが正常にインストールされたときのウェルカムページの画像

スマートカード使用のために証明機関を準備する

補足はありません。PDFファイルの「Preparing the Certificate Authority for Smart card usage」セクションを参照してください。

ドメインコントローラー証明書の発行

補足はありません。PDFファイルの「ドメインコントローラー証明書の発行」セクションを参照してください。

HTTPS 用の Microsoft IIS の構成 (StoreFront 上)

Microsoft IIS での HTTPS の構成

補足はありません。PDFファイルの「Microsoft IIS での HTTPS の構成」セクションを参照してください。

ドメインに参加していないコンピューター

PDFファイルの「ドメインに参加していないコンピューター」セクションを参照してください。

Microsoft CA から CA 証明書を取得する (AD 上)

補足はありません。PDFファイルの「Microsoft CA からの CA 証明書の取得」セクションを参照してください。

Windows に信頼された CA 証明書をインストールする

補足はありません。PDFファイルの「Windows への信頼された CA 証明書のインストール」セクションを参照してください。

Citrix StoreFront の構成 (StoreFront 上)

ストアの作成

PDFファイルの「ストアの作成」セクションを参照してください。
前述のIIS構成後、共通ストアのベースURLはhttp://ではなくhttps://に強制的に設定されます。FASはスマートカードとストアを共有しないため、FASには新しいストアが必要です。Linux VDA FASは、StoreFrontの任意の認証方法と互換性があります。たとえば、FASストアはパスワードまたはSAMLを使用するように構成できますが、両方を同時に使用することはできません。SAMLが選択されている場合、StoreFrontのURLは自動的にIdPにリダイレクトされ、パスワード認証方法は無視されます。
FASストアの作成イメージ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/create-store.png)
スマートカード認証方法の管理イメージ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/manage-authentication-methods.png)
作成されたFASストアのイメージ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/fas-store-created.png)
Internet Explorerを起動し、FASストアのURLを開きます(例: https://mzgwy-ddc.xd.local/Citrix/FASWeb)。
注: FASストアのURLにはWebが付加されている必要があります。

FASのインストールとセットアップ

インストールとセットアップのプロセスは、次の手順で構成されます。
  1. フェデレーション認証サービスをインストールする
  2. StoreFrontサーバーでフェデレーション認証サービスプラグインを有効にする
  3. グループポリシーを構成する
  4. フェデレーション認証サービス管理コンソールを使用して、次の操作を行います。(a) 提供されたテンプレートを展開する、(b) 証明機関をセットアップする、(c) フェデレーション認証サービスが証明機関を使用することを承認する
  5. ユーザー規則を構成する
各手順の詳細については、「フェデレーション認証サービス」を参照してください。各手順における次の相違点または補足事項に注意してください。操作対象のマシン(例: AD、Delivery Controller、StoreFront、FASサーバー)に特に注意してください。

フェデレーション認証サービスをインストールする(FASサーバー上)

セキュリティのため、FASはドメインコントローラーまたは証明機関と同様の方法で保護された専用サーバーにインストールしてください。

StoreFrontストアでFederated Authentication Serviceプラグインを有効にする(StoreFront上)

以下のコマンドで、StoreFrontの構成時に入力したFASストア名と同じものが使用されていることを確認してください。たとえば、この例ではFASがストア名です。
$StoreVirtualPath = "/Citrix/FAS"

デリバリーコントローラー™を構成する(デリバリーコントローラー上)

Federated Authentication Serviceを使用するには、Delivery Controllerが接続できるStoreFrontサーバーを信頼するように構成します。これには、Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true PowerShellコマンドレットを実行します。場合によっては、Add-PSSnapin citrix.*を先に実行する必要があるかもしれません。

グループポリシーを構成する(FASサーバーおよびAD上)

このセクションのステップ1~7を実行するには、管理者である必要があります。ステップ1はFASサーバーで実行し、ステップ2~7はADで実行する必要があります。
ステップ1~7を完了したら、FASサーバーのレジストリエディターでFASポリシーが設定されていることを確認してください。
FASポリシー設定の画像(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/set-fas-policy.png)

インセッション証明書サポートを有効にする

Linux VDAはインセッション証明書をサポートしていません。

Federated Authentication Service管理コンソールを使用する(FASサーバー上)

補足はありません。Federated Authentication Serviceの記事を参照してください。

証明書テンプレートを展開する(FASサーバー上)

補足はありません。Federated Authentication Serviceの記事を参照してください。

Active Directory Certificate Services (FASサーバー上) を設定する

補足はありません。フェデレーション認証サービスの記事を参照してください。

フェデレーション認証サービス (FASサーバー上) を承認する

補足はありません。フェデレーション認証サービスの記事を参照してください。

ユーザー規則 (FASサーバー上) を構成する

補足はありません。フェデレーション認証サービスの記事を参照してください。
詳細については、フェデレーション認証サービスの記事の「セキュリティに関する考慮事項」セクションにある「委任された登録エージェント」および「アクセス制御リストの構成」も参照してください。

フェデレーション認証サービス ADFS展開

フェデレーション認証サービス用のADFS IdPの展開方法については、フェデレーション認証サービス ADFS展開を参照してください。

Linux VDAを構成する

FASサーバーを設定する

新規のLinux VDAインストールの場合、FASを使用するには、ctxinstall.shまたはctxsetup.shの実行中にCTX\_XDL\_FAS\_LISTを求められたときに、各FASサーバーのFQDNを入力します。Linux VDAはADグループポリシーをサポートしていないため、代わりにFASサーバーのセミコロン区切りリストを指定できます。サーバーアドレスが削除された場合は、その空白を**\&lt;none\>**というテキスト文字列で埋め、サーバーアドレスの順序を変更せずに維持してください。
既存のLinux VDAインストールをアップグレードする場合は、ctxsetup.shを再実行してFASサーバーを設定できます。または、次のコマンドを実行してFASサーバーを設定し、ctxvdaサービスを再起動して設定を有効にすることもできます。
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "<Your-FAS-Server-List>" --force

service ctxvda restart
ctxregを介してFASサーバーを更新するには、次のコマンドを実行します。
sudo /opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -v "Addresses" -d "<Your-FAS-Server-List>"

service ctxvda restart

ルートCA証明書をインストールする

ユーザーの証明書を検証するために、VDAにルートCA証明書をインストールします。前述の「Microsoft CA (AD上) からCA証明書を取得する」の手順からADルート証明書を取得するか、ルートCAサーバーhttp://CA-SERVER/certsrvからDER形式をダウンロードしてください。
注:
以下のコマンドは、中間証明書の設定にも適用されます。
DERファイル(.crt、.cer、.der)をPEMに変換するには、次のようなコマンドを実行します。
sudo openssl x509 -inform der -in root.cer -out root.pem
次に、ルートCA証明書をopensslディレクトリにインストールするには、次のようなコマンドを実行します。
sudo cp root.pem /etc/pki/CA/certs/
注:
ルートCA証明書を**/root**パスの下に置かないでください。そうしないと、FASはルートCA証明書への読み取り権限を持ちません。

FASを構成する

FASを構成するには、次のスクリプトを実行します。
sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
注:
上記のスクリプトは、単一のルートCA証明書を持つシナリオのみを処理します。
環境に中間証明書がある場合は、/etc/krb5.confに中間パスを次のように追加します。
EXAMPLE.COM = { …
pkinit_anchors = FILE:/etc/pki/CA/certs/root.pem pkinit_pool = FILE:/etc/pki/CA/certs/intermediate.pem
… }
2つの環境変数が追加され、ctxfascfg.shをサイレントモードで実行できるようになります。
  • CTX\_FAS\_ADINTEGRATIONWAY=winbind \| sssd \| centrify – Active Directory統合方法を示します。これは、CTX_EASYINSTALL_ADINTEGRATIONWAYが指定されている場合にCTX_EASYINSTALL_ADINTEGRATIONWAYと等しくなります。CTX_EASYINSTALL_ADINTEGRATIONWAYが指定されていない場合、CTX_FAS_ADINTEGRATIONWAYは独自の値を設定します。
  • CTX\_FAS\_ROOT\_CA_PATH=\&lt;root_CA_certificate\> – ルートCA証明書のフルパスを指定します。
正しいActive Directory統合方法を選択し、ルートCA証明書の正しいパス(例: /etc/pki/CA/certs/root.pem)を入力します。
スクリプトはkrb5-pkinitおよびpam\_krb5パッケージをインストールし、関連する構成ファイルを設定します。

制限事項

  • FAS は限られたプラットフォームと AD 統合メソッドをサポートしています。以下のマトリックスを参照してください。
    ウィンバインド SSSD セントリファイ
    RHEL 7.7 /CentOS 7.7 √ √ √
    ウブントゥ 18.04 √ × √
    ウブントゥ 16.04 √ × √
    SLES 12.3 √ × √
  • FAS はまだロック画面をサポートしていません。セッション内でロックボタンをクリックすると、FAS を使用してそのセッションに再度ログオンすることはできません。
  • このリリースでは、Federated Authentication Service architectural overview 記事にまとめられている一般的な FAS 展開のみがサポートされ、Windows 10 Azure AD Join は含まれません。

トラブルシューティング

FAS のトラブルシューティングを行う前に、Linux VDA が正しくインストールおよび構成されており、パスワード認証を使用して一般的なストアで非 FAS セッションを正常に起動できることを確認してください。
非 FAS セッションが正常に動作する場合は、Login クラスの HDX ログレベルを VERBOSE に、VDA ログレベルを TRACE に設定します。Linux VDA のトレースログを有効にする方法については、Knowledge Center の記事 CTX220130 を参照してください。

FAS サーバー構成エラー

FAS ストアからのセッション起動に失敗します。たとえば、次のスクリーンショットを参照してください。
FAS ストアからのセッション起動に失敗したイメージ
/var/log/xdl/hdx.log を確認し、次のようなエラーログを見つけてください。
2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: query2fas: failed to retrieve data: No such file or directory.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: sayhello2fas_internal: Failed to query.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: sayhello2fas_convertcredential: exit.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: LoginFasValidate: Failed to start FAS.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: receive_data: LoginFASValidate - parameters check error.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: receive_data: Exit FAILURE

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: main: EXITING login process..., FAILURE

解決策

次のコマンドを実行して、Citrix レジストリ値「HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Citrix\\VirtualDesktopAgent\\Authentication\\UserCredentialService」が \&lt;Your-FAS-Server-List\> に設定されていることを確認します。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
既存の設定が正しくない場合は、前述の Set FAS servers の手順に従って、再度設定してください。

ルートCA証明書の設定が正しくありません

FASストアからのセッション起動に失敗します。灰色のウィンドウが表示され、数秒後に消えます。
ルートCA証明書の設定が正しくないためにログオンが無効になったことを示す画像(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/incorrect-root-ca-cert-config.png)
/var/log/xdl/hdx.logを確認し、次のようなエラーログを見つけてください。
2018-03-27 10:15:52.227 <P9099:S3> citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXFAS.LAB

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: logout_user: closing session and pam transaction

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: validate_user: Exit (user=user1@CTXFAS.LAB)=INVALID_PASSWORD

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXFAS.LAB', INVALID_PASSWORD

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: Audit_login_failure: Not yet implemented

解決策

ルートCA証明書のフルパスが/etc/krb5.confに正しく設定されていることを確認してください。フルパスは次のようになります。

 [realms]

EXAMPLE.COM = {

    ......

    pkinit_anchors = FILE:/etc/pki/CA/certs/root.pem

    ......

}  
既存の設定が正しくない場合は、前のルートCA証明書をインストールするの手順に従って再度設定してください。
または、ルートCA証明書が有効であるかどうかを確認してください。

シャドウアカウントマッピングエラー

FASはSAML認証によって構成されています。ADFSユーザーがADFSログオンページでユーザー名とパスワードを入力した後、次のエラーが発生する可能性があります。
シャドウアカウントマッピングエラーの画像(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/shadow-account-mapping-error.png)
このエラーは、ADFSユーザーが正常に検証されたものの、ADにシャドウユーザーが構成されていないことを示しています。

解決策

ADでシャドウアカウントを設定します。

ADFSが構成されていません

FASストアへのログオン試行中に次のエラーが発生します。
ADFSが構成されていないことを示す画像(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/adfs-not-configured.png)
原因は、FASストアがSAML認証を使用するように構成されているにもかかわらず、ADFS展開が不足していることです。

解決策

フェデレーション認証サービス用にADFS IdPを展開します。詳細については、「フェデレーション認証サービス ADFS展開」(/ja-jp/federated-authentication-service/current-release/deployment-architectures/adfs.html)を参照してください。

関連情報

  • 一般的なFAS展開については、「フェデレーション認証サービス アーキテクチャの概要」(/ja-jp/federated-authentication-service/1912-ltsr/deployment-architectures.html)の記事にまとめられています。
  • 「ハウツー」記事は、「フェデレーション認証サービス詳細構成」(/ja-jp/federated-authentication-service/1912-ltsr/config-manage.html)の章で紹介されています。

既知の問題

FASを使用している場合、英語以外の文字を含む公開デスクトップまたはアプリセッションを起動しようとすると失敗する可能性があります。
英語以外の文字を含むセッションの起動に失敗するイメージ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/launching-nonenglish-session-fails.png)

回避策

CAツールでテンプレートの管理を右クリックし、Citrix\_SmartcardLogonテンプレートをこのActive Directory情報から構築から要求で提供に変更します。
要求で提供オプションのイメージ(/en-us/linux-virtual-delivery-agent/1912-ltsr/media/supply-in-the-request.png)