FAS V2 チケット発行とレジストリアドレスリスト
FAS 2511より前は、FASはインデックスバイトで始まるV1(バージョン1)形式のチケットを作成していました。VDAは、どのFASサーバーがチケットを発行したかを判断する必要があります。これは、インデックスバイトを使用して、レジストリ内のFASアドレスのリストからFASアドレスを検索することで行われます。
GPOは通常、VDA上のFASアドレスのリストを構成します。Windows VDAでは、アドレスリストのレジストリの場所は
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\Authentication\UserCredentialService\Addressesです。
VDA上のアドレスリストはStoreFront上のアドレスリストと完全に一致している必要があります。そうでない場合、シングルサインオンは失敗します。この要件は、特に複雑な展開を行っているお客様にとって、構成エラーの大きな原因となっていました。
FAS 2511では、V2(バージョン2)形式のチケットが導入されました。FASサーバーのアドレス(つまり、FQDNとポート)はチケット自体に書き込まれるため、VDAはレジストリアドレスリストを参照する必要がありません。
互換性
2511以降、FASはデフォルトでV2チケットを生成します。V2チケットは、すべてのWindowsおよびLinux VDAバージョンと互換性があります。
バージョン2511より前のVDAは、前のセクションで説明したインデックスバイトを使用して、引き続きレジストリアドレスリストを参照します。
2511以降のWindowsおよびLinux VDAのみがV2チケットを解析できるため、レジストリアドレスリストは必要ありません。
V2チケットはStoreFrontのどのバージョンとも互換性があり、StoreFrontのアップグレードは不要です。
V2チケットで問題が発生した場合は、このPowerShellコマンドを使用してFASがV1チケットを生成するように構成できます。
Set-FasServer -Address localhost -TicketVersion 1
V2チケットの生成に戻すには、このPowerShellコマンドを使用します。
Set-FasServer -Address localhost -TicketVersion 2
VDAが認識するFASチケットのバージョン
VDA 2511以降のみがV2チケットを解析できます。以前のバージョンでは、V2チケットはV1チケットであるかのように扱われます。
VDAがV2チケットバージョンを認識しているかどうかを確認するには、FASサーバーのイベントログを調べます。
FASとVDAが2511以降の場合、VDAの起動中に、以下のようなイベントログエントリが表示されます。イベントは、FASサーバーのWindowsログ > アプリケーションログにあります。
Level: Information
Source: Citrix.Authentication.FederatedAuthenticationService
EventId: 204
Text: [S204] Relying party [VDA machine name] accessing the Logon Provider for [User UPN] in role: [FAS Role] [Operation: XXXX] as authorized by [StoreFront machine name]. Caller ticket version: 2. [correlation: XXXX]
このイベントでは、呼び出し元チケットのバージョンは2です。これは、VDAをレジストリFASアドレスリストで構成する必要がないことを示します。
逆に、VDAがV2チケットをサポートしていない場合、イベントログエントリの呼び出し元チケットのバージョンは1になります。
Level: Information
Source: Citrix.Authentication.FederatedAuthenticationService
EventId: 204
Text: [S204] Relying party [VDA machine name] accessing the Logon Provider for [User UPN] in role: [FAS Role] [Operation: XXXX] as authorized by [StoreFront machine name]. Caller ticket version: 1. [correlation: XXXX]
StoreFrontでFAS V2チケットを構成する
FASチケットはStoreFrontにとって不透明であるため、どのバージョンのStoreFrontでも使用でき、特別な構成は必要ありません。
StoreFrontでのFASサーバーアドレスの構成は、GPOを使用して提供されるレジストリのアドレスリストを引き続き使用します。
Citrix Cloud WorkspaceでFAS V2チケットを構成する
FASがCitrix Cloudに接続されている場合、FASは、そのアドレスが自身のレジストリのアドレスリストに存在することを要求します。この動作はV1チケットをサポートするためです。見つからない場合、FAS管理コンソールは警告を表示し、FASはCitrix Cloud Workspaceの起動にシングルサインオンを提供しません。
ただし、展開全体がV2チケットを使用している場合(つまり、FASサーバーとVDAが2511以降の場合)、FASサーバー上のレジストリのアドレスリストは不要です。
クラウド接続されたFASがレジストリのアドレスリストを要求しないようにするには、次のPowerShellを使用します。
Set-FasCloudConfig -Address localhost -SkipGpoCheck $true
その他のPowerShellの変更
上記のコマンドに加えて、FAS 2511のPowerShellで以下の変更が行われました。
FASサーバーのFQDNとポートを表示する
次のPowerShellコマンドは、FASサーバーのFQDNとリスニングポートを返します。これは、V2チケットにエンコードされるFASアドレス情報です。
Get-FasServer -Address localhost
コマンドレットのアドレスパラメーター
2511より前は、FAS PowerShellコマンドの任意のアドレスパラメータ(「localhost」を除く)は、FASサーバーのレジストリアドレスリストと照合されていました。この動作を変更するには、次のコマンドを使用する必要がありました。
Set-FasAdministrationPolicy -CheckAddressAgainstGpo $false
2511以降、FAS PowerShellコマンドはアドレスパラメータをアドレスリストと照合しません。以前の動作に戻すには、次のPowerShellコマンドを実行します。
Set-FasAdministrationPolicy -CheckAddressAgainstGpo $true