安装 CardSpace 示例证书
若要使用 CardSpace 示例,则必须安装 SSL 证书、虚拟 Web 目录和主机文件条目。 本文档演示如何安装所需的证书和检查用于安装备用证书的步骤。
安装前
若要安装 CardSpace 示例,必须先成功安装 One-Time Setup Procedure for the Windows Communication Foundation Samples。
快速安装示例
若要安装证书,请为网站创建虚拟主机,并且同时创建所有主机条目,然后运行示例目录中的 Setup.bat 批处理文件。 每次都会将所有脚本运行一遍。
若要卸载所有内容,请运行示例目录中的 Cleanup.bat 批处理文件。 这会卸载脚本、网站和主机条目。 但不会删除任何文件。
关于证书
本文档演示如何安装所需的证书。 有关证书的更多信息,请参见以下文档:
什么是证书?(可能为英文网页)
证书的工作原理(可能为英文网页)
证书工具和设置(可能为英文网页)
有关 CA 证书的更多信息,请参见以下文档:
什么是 CA 证书?(可能为英文网页)
CA 证书的工作原理(可能为英文网页)
CA 证书工具和设置(可能为英文网页)
要求
本演练是针对 Windows XP SP2、Windows Server 2003 SP1 和 Windows Vista 而设计的。 必须安装以下组件:
Microsoft .NET Framework 3.0。
IIS 5.0 (Windows XP SP2)、IIS 6.0 (Windows Server 2003) 或 IIS 7.0 (Windows Vista)。
提示
对于 Windows Vista,请确保 IIS 7.0 中安装了 IIS 6.0 兼容性支持功能。
证书文件夹中包含以下证书:
网站文件夹中包含以下文件:
images\adatum.gif
images\contoso.gif
images\fabrikam.gif
crldata\adatum.crl
CardSpace\default.html
脚本文件夹中包含以下脚本文件:
Install-certificates.vbs
Remove-certificates.vbs
Install-website.vbs
Remove-website.vbs
Install-hosts.vbs
Remove-hosts.vbs
关于这些证书
此处提及的证书仅供演示之用。 根 CA 证书存储为 .sst(Microsoft 系列证书存储)文件。 所有网站证书均存储为 .pfx 文件。 这些证书用于两种类别的方案:浏览器方案和 Windows Communication Foundation (WCF) 方案。
示例证书是一种其中嵌入了徽标图像的高确定性证书。 颁发高确定性 (HA) 证书的 CA 已执行其他步骤来验证为其颁发证书的主体。 在 Internet Explorer 7.0 中,这些 HA 证书会导致地址栏颜色的改变。 如果浏览器可以验证详细信息且证书已签出,则地址栏将变为绿色:
如果在验证证书(HA 或其他证书)时出现问题,则 Internet Explorer 7.0 的地址栏将变为黄色:
另外,如果 Internet Explorer 7.0 认为某个网站是网页仿冒网站,则地址栏将变为红色:
常规 SSL 证书将地址栏保留为白色。
利用徽标扩展,CA 可以在证书中嵌入图形图像并提供验证该图像的 URL。 示例证书中徽标图形的 URL 配置为 http://www.adatum.com/images/\<logo>.gif,其中 <logo> 为徽标的名称。
对于 Internet Explorer 7.0 浏览器方案和 WCF 方案,必须在 Web 服务器上安装这些证书并且在 IIS 的虚拟目录下设置证书的图形徽标,还必须修改主机文件以包含示例域名(Fabrikam、Contoso 和 Adatum)。
对于所有方案:若要在多台计算机之间使用示例,请通过使用记事本编辑主机文件来手动更改 c:\windows\system32\drivers\etc\hosts 文件:
在以下条目中添加(用适当的服务器 IP 地址替换 127.0.0.1):
127.0.0.1 www.adatum.com adatum.com
127.0.0.1 www.contoso.com contoso.com
127.0.0.1 www.fabrikam.com fabrikam.com
示例网站和 URL
示例应用程序和网站会在 IIS 中为默认 Web 应用程序创建虚拟目录,该应用程序应绑定到端口 80 并且不使用主机头,因此允许 www.fabrikam.com、www.adatum.com 和 www.contoso.com 共享同一 Web 服务器。 SSL 通道绑定到 www.fabrikam.com 的证书,并用于 HTTPS 连接。 各个示例将在默认网站中创建虚拟目录以阐释示例。
安装证书
必须将假想的 CA (Adatum) 所颁发的根 CA 证书安装到本地计算机存储区中的“受信任的根证书颁发机构”位置 (localMachine:root
)。
必须将公司证书(Contoso 和 Fabrikam)安装到本地计算机存储区中的“个人”位置 (localMachine:My)。 所有 .pfx 文件的密码均为空。 运行脚本文件夹中的 Install-certificates.vbs 脚本。 该脚本会将证书安装到适当的存储区。 脚本运行后,继续操作之前会提示:
作为一项附加的安全预防措施(来自 CAPICOM),该脚本可能会显示一条警告消息,提示正在安装 CA 证书。 接受该证书以继续。
该脚本还支持两个可选命令行参数:DEBUG 和 VERBOSE,执行这两个参数时会提供其他信息。
专家级用户:通过 Microsoft 管理控制台手动安装证书。
安装图形徽标和 CRL
证书中徽标扩展的图形图像必须能够用于客户端验证。
公司 | URL | 图像 |
---|---|---|
Adatum |
http://www.adatum.com/images/adatum.gif |
<Datum 图像> |
Contoso |
https://www.contoso.com/images/contoso.gif |
<Contoso 图像> |
Fabrikam |
http://www.fabrikam.com/images/fabrikam.gif |
<Fabrikam 图像> |
运行脚本文件夹中的 Install-website.vbs 脚本。 该脚本会为证书徽标和证书吊销列表 (CRL) 创建虚拟目录。
专家级用户:通过 IIS MMC 管理单元手动创建虚拟目录。 下表列出了指向安装文件夹中文件夹的三个目录。
虚拟目录 | 路径 |
---|---|
crldata |
.\website\crldata |
CardSpace |
.\website\CardSpace |
images |
.\website\images |
修改主机文件
对示例的 c:\windows\system32\drivers\etc\hosts 文件进行修改以便 URL 解析为本地计算机。
运行脚本文件夹中的 Install-hosts.vbs 脚本。 该脚本会在主机文件中为示例创建条目。
专家级用户:通过编辑 c:\windows\system32\drivers\etc\hosts 文件并添加以下行,手动创建这些条目:
127.0.0.1 www.adatum.com atatum.com
127.0.0.1 www.contoso.com contoso.com
127.0.0.1 www.fabrikam.com fabrikam.com
验证是否成功安装
若要验证是否安装了主机文件和虚拟 Web 目录,请使用 Internet Explorer 并定位到 http://www.fabrikam.com/CardSpace。 浏览器将显示示例的默认页。
IIS:证书私钥的 ACL
若要使 IIS 能够访问证书的私钥,则必须将 IIS 服务帐户(Windows XP 和 Windows Vista 上的 ASPNET,以及 Windows Server 2003 上的 NETWORK SERVICE)的 ACL 设置为对这些文件具有读取权限。 证书安装脚本会处理该权限问题。 若要设置其他证书的私钥权限,请使用 Windows SDK 中的 Findprivatekey.exe 以及 Cacls.exe,替换其他证书的指纹技术:
findprivatekey.exe my localmachine -t "d47de657fa4902555902cb7f0edd2ba9b05debb8" –a
ProgramData\Microsoft\Crypto\RSA\MachineKeys\6799c8288a6ee49d3fc35f2424524993_4872db96-95c8-43fa-8498-b2d31edcc120cacls
cacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\6799c8288a6ee49d3fc35f2424524993_4872db96-95c8-43fa-8498-b2d31edcc120 /G ASPNET:R
Are you sure (Y/N)?y
processed file: C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\6799c8288a6ee49d3fc35f2424524993_4872db96-95c8-43fa-8498-b2d31edcc120
卸载
若要卸载示例证书、虚拟目录和主机条目,请运行以下脚本:
Remove-certificates.vbs
Remove-website.vbs
Remove-hosts.vbs
注册的证书、网站和主机将被移除。
提示
不会删除安装目录中的文件。
从系统中移除 CA 证书后,脚本可能会显示以下消息:
单击**“是”**允许移除证书。
疑难解答
Internet Explorer 代理设置:若要浏览器示例正常工作,您可能需要对 Internet Explorer 添加以下设置以跳过代理:
www.fabrikam.com;fabrikam.com;www.contoso.com;contoso.com;adatum.com;
www.adatum.com;woodgrovebank.com;www.woodgrovebank.com
如果使用的是自动发现代理,请禁用自动发现,然后手动输入代理信息。 有关代理配置的详细信息,请询问系统管理员。
如果由于无法正确查看证书更改,请清除 Internet Explorer 中的 SSL 证书缓存。 在 Internet Explorer 中,单击**“工具”,再单击“Internet 选项”,选择“清除 SSL 状态”**按钮,然后关闭 Internet Explorer 的所有实例。
Internet Explorer 7.0 浏览器方案使用 SSL 连接,因此要求设置的默认网站具有 SSL 证书。 排除 SSL 连接故障通常比较耗时,使用一些快速提示可以方便地解决大多数问题。
首先,请下载用于 IIS 的 SSL 诊断实用工具(可能为英文网页)。
提示
本文档中演示的所有屏幕快照均来自运行 Windows Vista 的计算机。 如果您运行的是早期版本的操作系统,则看到的对话框可能略有不同。
请参见
其他资源
Using CardSpace in Windows Communication Foundation
版权所有 (C) 2007 Microsoft Corporation。保留所有权利。