【IDM】AD FS 2.0 をアンインストールするには
今後 FAQ になりそうなので、Blog にも書いておきたいと思います。
ご存知の通り、AD FS 2.0 は以下のサイトからダウンロードしてインストールする必要があります。
AD FS 2.0 をセットアップすると、以下のコンポーネントがインストールされます。
- AD FS 2.0 本体 および PowerShell コマンドレット(KB974408)
- Windows Identity Foundation ランタイム(KB974405)
- Windows Internal Database
(MICROSOFT##SSEE インスタンスの AdfsArtifactStore と AdfsConfiguration) - IIS 上の 仮想ディレクトリ(/adfs, /adfs/ls)およびアプリケーションプール(ADFSAppPool)
- 証明書の共有コンテナ
AD FS 2.0 を再インストールしようとして一旦アンインストールしたつもりが、「既にインストールされている」的なメッセージで再インストールや再構成が失敗したり警告を発することがあります。原因は上記に示した AD FS 2.0 関連の アプリケーションが既にインストールされているためです。
それぞれのコンポーネントは個別にインストールされるため、アンインストールする場合にも個別に実施する必要があります。以下に手順を示します。
【証明書の共有コンテナ の削除】
※この手順は AD FS 2.0 本体を削除する前に実行してください
AD FS 2.0 の構成ウィザードで「サーバーファーム」を選択した場合、Active Directory 上に証明書の共有コンテナが作成されます。このコンテナは、AD FS サーバーファーム内の全てのAD FS サーバーで共有されるため、複数のサーバーに同じ証明書を何度もインストールする必要が無くなります。
共有コンテナを削除するには以下の手順を実施します。
PowerShell コンソールを起動。
以下のコマンドレットで AD FS 関連のコマンドレットを読み込む。
PS C:\>Add-PsSnapin Microsoft.Adfs.Powershell
以下のコマンドレットで 証明書共有コンテナの場所を確認する
PS C:\> Get-ADFSProperties |Select-Object CertificateSharingContainer
上記の結果、以下のように表示されるのでパスを控えておく。
CertificateSharingContainer
---------------------------
CN=0586a130-89fa-40e8-8896-18ece4d171e7,CN=ADFS,CN=Microsoft,CN=Program Data,DC=T3304,DC=comADSI Edit を起動し、「既定の名前付きコンテキスト」に接続する。
CertificateSharingContainer の値と一致するコンテナを削除する。
【AD FS 2.0 の削除】
[コントロールパネル] - [プログラム] – [インストールされた更新プログラムの表示] から 「Active Directory Federation Service 2.0(KB974408)」をアンインストールする
【Windows Identity Foundation ランタイム の削除】
※ランタイムなので無理に削除する必要は無いと思いますが…
[コントロールパネル] - [プログラム] – [インストールされた更新プログラムの表示] から 「Windows Identity Foundation(KB974405)」をアンインストール
【Windows Internal Database の削除】
Windows Internal Database(WID)自身は Windows Server の「機能」としてインストールされているので、これ自体を削除することも可能なのですが、他のプログラムが WID を使用している可能性があります。よって、ここでは AD FS 2.0 に関連しているデータベース AdfsArtifactStore と AdfsConfiguration のみを削除しましょう。
WID には GUI が提供されていないので、以下から SQL Server 2008 R2 Express Edition の Management Studio をダウンロードしてインストールしてください。
Microsoft SQL Server 2008 R2 RTM - Management Studio Express
Management Studio を起動し、以下に接続してください。
\\.\pipe\mssql$microsoft##ssee\sql\query
データベースの一覧から AdfsArtifactStore と AdfsConfiguration を削除します。
【IIS 上の 仮想ディレクトリ(/adfs, /adfs/ls)およびアプリケーションプール(ADFSAppPool) の削除】
[サーバーマネージャー] - [Web サーバー(IIS)] - [インターネットインフォメーションサービス マネージャー] を開く。
[Default Web Site] を選択し、右側のペインから「アプリケーショの表示」を選択。
「/adfs」と「/adfs/ls」という2つのアプリケーションが表示されるので、これらを削除。
次に、[アプリケーション プール] を選択して、「ADFSAppPool」を削除する。
エクスプローラーを使用して、C:\Inetpub フォルダから「adfs」フォルダを削除。
以上で環境がキレイになったはずです。
再度 AD FS 2.0 をインストール&構成 してみてください。