本文介绍如何在卸载 Active Directory 联合身份验证服务 2.0 时还原 Internet Information Services(IIS)并清理 Active Directory。
原始 KB 数: 982813
简介
Active Directory 联合身份验证服务 2.0(AD FS 2.0) 卸载向导会从计算机中卸载 AD FS 2.0。 但是,在以下任一情况下,你仍可能需要手动还原或清理设置:
- 从联合服务器或联合服务器代理服务器计算机卸载 AD FS 2.0 时,卸载向导不会将 IIS 还原到其原始状态。
- 从联合服务器场中上次添加的联合服务器卸载 AD FS 2.0 时,卸载过程不会删除在 Active Directory 中创建的证书共享容器。
如果在重新安装 AD FS 2.0 后运行 AD FS 2.0 联合服务器配置向导,但尚未从 IIS 清理以前的 AD FS 2.0 配置,则可能会看到以下症状之一:
“配置结果”页可能会显示组件“部署浏览器登录”网站,其中列出了状态配置已完成警告。 单击状态时,可能会看到以下警告:
检测到现有网站。 因此,网站未重新安装。 如果尝试重新部署默认 AD FS 2.0 网站,请参阅
http://go.microsoft.com/fwlink/?LinkId=181110
详细信息。“配置结果”页可能会显示组件“部署浏览器登录”网站,其中列出了状态为“配置组件...”显示以下错误消息时:
无法将网站文件复制到 C:\inetpub\adfs\ls,因为目录已存在。 删除目录并重新运行配置向导,或手动更新现有网站。
可以使用以下方法来清理或还原原始配置:
在联合服务器或联合服务器代理计算机上还原 IIS
在为联合服务器或联合服务器代理角色配置的计算机上安装 AD FS 2.0 时,它将在 IIS 中创建 /adfs 和 /adfs/ls 虚拟目录。 AD FS 2.0 还将创建名为 ADFSAppPool 的新应用程序池。 从联合服务器或联合服务器代理计算机卸载 AD FS 2.0 时,不会删除这些虚拟目录。 此外,不会删除应用程序池。 如果在同一台计算机上再次安装 AD FS 2.0,这可能导致问题。
若要从已解除授权的联合服务器或联合服务器代理服务器计算机中手动删除这些目录,请执行以下步骤:
单击“开始”,选择“管理工具”,然后选择“IIS 管理器”。
展开服务器名称节点,展开 “站点”,然后选择“ 默认网站”。
在 “操作 ”窗格中,选择“ 查看应用程序”。
注意
应会看到以下两个与 AD FS 2.0 关联的虚拟目录:
- /adfs
- /adfs/ls
右键单击每个虚拟目录中的 AD FS 2.0 应用程序,然后单击“ 删除”。
在 “操作 ”窗格中,选择“ 应用程序池”。
注意
应会看到名为 ADFSAppPool 的应用程序池。
右键单击 ADFSAppPool,然后选择“ 删除”。
注意
接下来的两个步骤演示如何从“inetpub”目录中删除 \adfs 目录。 如果对此目录中的内容进行了自定义更改,建议先将此内容备份到另一个位置,然后再删除目录。
在 Windows 资源管理器中,浏览到“inetpub”目录。 此目录位于以下路径中:
%systemdrive%\inetpub右键单击 Adfs 目录,然后单击“ 删除”。
删除 Active Directory 中的证书共享容器
安装 AD FS 2.0 并使用联合服务器配置向导在新联合服务器场中创建新的联合服务器时,向导将在 Active Directory 中创建证书共享容器。 此容器由场中的所有联合服务器使用。 从场中上次添加的联合服务器卸载 AD FS 2.0 时,不会从 Active Directory 中删除此容器。
若要在 Active Directory 中手动删除此容器,请执行以下步骤:
在从场中最后一个联合服务器中删除 AD FS 2.0 之前,请在 AD FS 2.0 STS 上运行以下 PowerShell 命令,以确定 Active Directory 中证书共享容器的位置:
Add-PsSnapin Microsoft.Adfs.Powershell Get-AdfsProperties
记下 上一步输出中的 CertificateSharingContainer 属性。
登录到安装了 ADSIEdit 工具(ADSIEdit.msc)的服务器。
单击“开始”,单击“运行”,键入 ADSIEdit.msc,然后按 Enter。
在 ADSIEdit 工具中,按照以下步骤连接到默认命名上下文:
- 右键单击 ADSI 编辑,然后单击“ 连接到”。
- 在“连接点”下,单击“选择已知命名上下文”,然后选择“默认命名上下文”。
- 单击“确定”。
展开以下节点:
默认命名上下文,{域分区},CN=Program Data,CN=Microsoft,CN=ADFS注意
在 CN=ADFS 下,可以看到已部署的每个 AD FS 2.0 场的名为 CN={GUID} 的容器,其中 {GUID} 与使用步骤 1 中的 PowerShell 命令捕获的
Get-AdfsProperties
CertificateSharingContainer 属性匹配。右键单击相应的 {GUID} 容器,然后选择“ 删除”。