Note
本記事は Technet Blog の更新停止に伴い https://blogs.technet.microsoft.com/jpazureid/2017/10/03/ad-fs-sslcert/ の内容を移行したものです。
元の記事の最新の更新情報については、本内容をご参照ください。
皆様、こんにちは。Azure & Identity サポート担当の竹村です。
今回は、比較的多くのお客様からお問合せをいただく、AD FS の証明書更新手順をご紹介します。本エントリでは SSL サーバー証明書 (サービス通信証明書) の手順をご紹介し、次回にトークン署名証明書、トークン暗号化証明書についてもご案内したいと思います。
対象リリース: Windows Server 2012 R2 (AD FS 3.0)
Note
2023 年 2 月 20 日更新:
Windows Server 2016 以降の AD FS をご利用の方は、こちらをご覧ください。
また、Powershell のコマンドが失敗する場合には、こちらの手順でも更新できますので、必要に応じてご確認ください。
以下の流れで更新作業を行います。
手順の概要
- 証明書の取得
- SSL サーバー証明書、ルート証明書、中間証明書のインストール
- SSL サーバー証明書のアクセス権設定
- AD FS のサービス通信証明書へ SSL サーバー証明書を設定
- AD FS の SSL サーバー証明書を更新
- WAP サーバーを再構成
それぞれの詳細を後述致します。
1. 証明書の取得
ご利用になる認証機関から SSL サーバー証明書とルート証明書、中間証明書を取得します。
認証機関によって CSR 作成・送信、証明書受領手順が異なるため、手順は省略します。
2. SSL サーバー証明書、ルート証明書、中間証明書のインストール
ご利用になる認証機関から取得した SSL サーバー証明書、ルート証明書、中間証明書を以下手順でインストールします。
※ インポートする中間証明書の有無や数は、ご利用の認証機関によって異なります。
全 AD FS サーバー、全 WAP サーバーにて以下を実施します。
[スタート] - [ファイル名を指定して実行] から certlm.msc と入力し、[OK] をクリックします。
画面左側から以下のストアを展開します。
[証明書 (ローカル コンピューター)] - [信頼されたルート証明機関] - [証明書]
[証明書] を右クリックし、[すべてのタスク] - [インポート] を選択し、ウィザードに従って SSL サーバー証明書の発行元証明機関のルート証明書をインストールします。
続けて、画面左側から以下のストアを展開します。
[証明書 (ローカル コンピューター)] - [中間証明機関] - [証明書]
[証明書] を右クリックし、[すべてのタスク] - [インポート] を選択し、ウィザードに従って SSL サーバー証明書の発行元証明機関の中間証明書をインストールします。
続けて、画面左側から以下のストアを展開します。
[証明書 (ローカル コンピューター)] - [個人] - [証明書][証明書] を右クリックし、[すべてのタスク] - [インポート] を選択し、ウィザードに従って SSL サーバー証明書をインストールします。
3. SSL サーバー証明書のアクセス権設定
証明書に、AD FS サービス アカウントに必要なアクセス許可を付与します。
全 AD FS サーバーにて以下を実施します。
[スタート] - [ファイル名を指定して実行] から certlm.msc と入力し、[OK] をクリックします。
画面左側から以下のストアを展開します。
[証明書 (ローカル コンピューター)] - [個人] - [証明書]
中央から、手順 2. でインストールした SSL サーバー証明書を右クリックして、[すべてのタスク] - [秘密キーの管理] をクリックします。
※ もし [秘密キーの管理] を実行できない場合は、次のコマンドを実行してください。 このコマンドを実行することにより、個人ストアのすべての証明書のキーの関連付けの修復、または証明書プロパティやキーのセキュリティ記述子の更新を行います。
certutil -repairstore my *
NT SERVICE\ADFSSRV と NT SERVICE\DRS (場所はローカルを指定します) を [追加] して、各アカウントには、少なくとも読み取りアクセス許可を付与します。
※ NT SERVICE\DRS アカウントが存在しない場合には、NT SERVICE\ADFSSRV にのみアクセス許可を付与します。
4. AD FS のサービス通信証明書へ SSL サーバー証明書を設定
AD FS のサービス通信証明書へ SSL サーバー証明書を設定します。プライマリ AD FS サーバーにて以下を実施します。
スタート画面などから [AD FS の管理] コンソールを開きます。
画面左側から [AD FS] - [サービス] - [証明書] を右クリックし、 [サービス通信証明書の設定] をクリックします。
証明書の選択画面から手順 2. でインストールした SSL サーバー証明書を選択します。
[OK] をクリックします。
※ 警告が表示されましたら、[OK] をクリックします。
5. AD FS の SSL サーバー証明書を更新
AD FS の SSL サーバー証明書を更新します。全 AD FS サーバーにて以下を実施します。
PowerShell を管理者として起動します。
起動した PowerShell で以下のコマンドを実行して SSL サーバー証明書を更新します。
Set-AdfsSslCertificate -Thumbprint [新しい証明書の拇印]
※ 証明書の拇印 (Thumbprint) は、以下のコマンドでご確認頂けます。
dir Cert:\LocalMachine\My\ | FL Thumbprint, Subject, NotBefore, NotAfter
コンピューターの個人ストアにインポートされている証明書が表示されますので、新しい SSL 証明書の Thumbprint に表示されている文字列をコピーしてご利用ください。
6. WAP サーバーを再構成
WAP サーバーを再構成します。全 WAP サーバーにて以下を実施します。
レジストリ エディターを開きます。
[HKEY_LOCAL_MACHINE\Software\Microsoft\ADFS] を選択します。
[ProxyConfigurationStatus] をダブル クリックします。
[値のデータ] を 1 にして [OK] をクリックします。
スタート画面などから [リモート アクセス管理] コンソールを開きます。
画面左側から [構成] - [Web Application Proxy] をクリックします。
画面中央から [Web アプリケーション プロキシ構成ウィザードの実行] をクリックします。
初期構成時と同様に、WAP サーバーを構成します。
※ [AD FS プロキシの証明書] 画面では、手順 2. でインストールした SSL サーバー証明書を選択します。
(注意) WAP サーバーの再構成を行う際には、hosts ファイルでフェデレーションサービス名がプライマリ AD FS サーバーに名前解決されるように設定ください。
AD FS サーバーと WAP サーバーとの間にロードバランサーが存在するような環境の場合、明示的にプライマリ AD FS サーバーに対して接続されるように設定しておきませんと、再構成に失敗することがございます。
手順は以上の通りとなります。上記手順は過去にも同様のお問い合わせをお受けした際、多くのお客様にご案内しております実績のある手順となっていますが、一度検証環境で一連の動作を確認されることをお勧めいたします。
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。