認証局の構成
この記事では、Federated Authentication Service (FAS) を証明機関 (CA) サーバーと統合するための高度な構成について説明します。これらの構成のほとんどは、FAS 管理コンソールではサポートされていません。手順では、FAS が提供する PowerShell API を使用します。この記事の手順を実行する前に、PowerShell の基本的な知識が必要です。
FAS で使用する複数の CA サーバーをセットアップする
ルールを作成または編集する際に、FAS管理コンソールを使用して、複数のCAでFASを構成できます。
2つのCAを持つルールを編集します。(/en-us/federated-authentication-service/2407/media/edit-rule-2cas.png)
選択するすべてのCAは、Citrix_SmartcardLogon証明書テンプレート(またはルールで選択したテンプレート)を公開している必要があります。
使用したいCAのいずれかが目的のテンプレートを公開していない場合は、そのCAに対して認証局をセットアップするの手順を実行してください。
注:
すべてのCAに対してこのサービスを承認するの手順を実行する必要はありません。この手順で構成された承認証明書は、どのCAでも使用できるためです。
予期される動作の変更
FASサーバーを複数のCAサーバーで構成すると、ユーザー証明書の生成は、構成されているすべてのCAサーバーに分散されます。また、構成されているCAサーバーのいずれかが失敗した場合、FASサーバーは利用可能な別のCAサーバーに切り替わります。
TCP アクセス用に Microsoft 認証局を構成する
FAS は DCOM を使用して Microsoft CA にアクセスします。DCOM はポート 135 を使用して、サービスがリッスンしているポートを検出します。デフォルトでは、リッスンポートは動的に割り当てられます。 これにより、ファイアウォールセキュリティを実装する際に複雑さが生じる可能性があります。そのため、Microsoft は静的ポートを構成する機能を提供しています。 Microsoft CA で静的ポートを構成するには、スタート > ファイル名を指定して実行 >
dcomcnfg.exe を選択して DCOM 構成パネルを開きます。コンピューター > マイ コンピューター > DCOM の構成 を展開して、CertSrv Request ノードを表示します。次に、CertSrv Request DCOM アプリケーションのプロパティを編集します。
ローカライズされた画像(/en-us/federated-authentication-service/2407/media/fas-caconfig-select-dcom-protocol.png)
「エンドポイント」を変更して静的エンドポイントを選択し、TCPポート番号(上記のグラフィックでは900)を指定します。
この例では、ファイアウォールはポート135とポート900を許可する必要があります。
変更を適用するには、Microsoft証明機関を再起動します。
DCOMはRPCポート135を使用してネゴシエーション段階を持つため、FASサーバー(または証明機関を使用する他のマシン)を構成する必要はありません。クライアントがDCOMを使用する必要がある場合、サーバー上のDCOM RPCサービスに接続し、特定のDCOMサーバーへのアクセスを要求します。これにより、ポート900(この例では)が開かれ、DCOMサーバーはクライアントにそのポートへの接続を指示します。
ユーザー証明書を事前生成する
FASサーバー内でユーザー証明書が事前生成されると、ユーザーのログオン時間が大幅に改善されます。以下のセクションでは、単一または複数のFASサーバーでこれを実行する方法について説明します。
Active Directoryユーザーのリストを取得する
以下の例に示すように、ADをクエリし、ユーザーのリストをファイル(たとえば、.csvファイル)に保存することで、証明書の生成を改善できます。
Import-Module ActiveDirectory
$searchbase = "cn=users,dc=bvt,dc=local" # AD User Base to Look for Users, leave it blank to search all
$filename = "user_list.csv" # Filename to save
if ($searchbase -ne ""){
Get-ADUser -Filter {(UserPrincipalName -ne "null") -and (Enabled -eq "true")} -SearchBase $searchbase -Properties UserPrincipalName | Select UserPrincipalName | Export-Csv -NoTypeInformation -Encoding utf8 -delimiter "," $filename
} else {
Get-ADUser -Filter {(UserPrincipalName -ne "null") -and (Enabled -eq "true")} -Properties UserPrincipalName | Select UserPrincipalName | Export-Csv -NoTypeInformation -Encoding utf8 -delimiter "," $filename
}
Get-ADUserは、ユーザーのリストをクエリするための標準的なコマンドレットです。上記の例には、UserPrincipalNameを持ち、アカウントステータスが「enabled」のユーザーのみをリストするためのフィルター引数が含まれています。
SearchBase引数は、ADのどの部分でユーザーを検索するかを絞り込みます。AD内のすべてのユーザーを含めたい場合は、これを省略できます。注:このクエリは多数のユーザーを返す可能性があります。
CSVは次のようになります。
FASサーバー
以下のPowerShellスクリプトは、以前に生成されたユーザーリストを受け取り、ユーザー証明書のリストを作成します。
Add-PSSnapin Citrix.A*
$csv = "user_list.csv"
$rule = "default" # rule/role in your admin console
$users = Import-Csv -encoding utf8 $csv
foreach ( $user in $users )
{
$server = Get-FasServerForUser -UserPrincipalNames $user.UserPrincipalName
if( $server.Server -ne $NULL) {
New-FasUserCertificate -Address $server.Server -UserPrincipalName $user.UserPrincipalName -CertificateDefinition $rule"_Definition" -Rule $rule
}
if( $server.Failover -ne $NULL) {
New-FasUserCertificate -Address $server.Failover -UserPrincipalName $user.UserPrincipalName -CertificateDefinition $rule"_Definition" -Rule $rule
}
}
複数のFASサーバーがある場合、特定のユーザーの証明書は2回生成されます。1つはメインサーバーで、もう1つはフェイルオーバーサーバーで生成されます。
上記のスクリプトは、「default」という名前のルールに対応しています。異なるルール名(たとえば、「hello」)を使用している場合は、スクリプト内の$rule変数を変更してください。
登録機関証明書を更新する
複数のFASサーバーが使用されている場合、ログオンしているユーザーに影響を与えることなく、FAS承認証明書を更新できます。
注:
GUIを使用してFASを再承認することもできます。
次のシーケンスを完了します。
-
新しい承認証明書を作成します:
New-FasAuthorizationCertificate -
新しい承認証明書のGUIDをメモします。これは以下によって返されます:
Get-FasAuthorizationCertificate -
FASサーバーをメンテナンスモードにします:
Set-FasServer –Address <FAS server> -MaintenanceMode $true -
新しい承認証明書を交換します:
Set-FasCertificateDefinition –AuthorizationCertificate <GUID> -
FASサーバーをメンテナンスモードから解除します:
Set-FasServer –Address <FAS server> -MaintenanceMode $false -
古い承認証明書を削除します:
Remove-FasAuthorizationCertificate
関連情報
-
インストールと構成の記事は、FASのインストールと構成に関する主要なリファレンスです。
-
一般的なフェデレーション認証サービスの展開については、「展開アーキテクチャ」(/ja-jp/federated-authentication-service/2407/deployment-architectures.html)の記事にまとめられています。
-
その他の「ハウツー」記事については、「高度な構成」(/ja-jp/federated-authentication-service/2407/config-manage.html)の記事で紹介されています。
