如何启用 SSL 加密 SQL Server 2000,如果您有一个有效的证书服务器

文章翻译 文章翻译
文章编号: 276553 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

本分步指南介绍列出了您必须使用启用对 Microsoft SQL Server 2000 的安全套接字层 (SSL) 加密,如果在您的网络环境中有一个有效的证书服务器的步骤。如果您从第三方证书供应商处购买了证书,按照供应商提供的。 SQL Server 2000 通过使用证书和 SSL 加密允许所有的网络库上的加密的连接。您可以通过使用 SuperSocket 网络库、 Ssnetlib.dll 或 Dbnetlib.dll 启用 SQL Server 加密

如果 SQL Server 群集使用 SSL 加密可以使用相同的过程,不同之处在于该 Virtual SQL Server 的完全合格的域名和不是单独的计算机名必须颁发证书。此外,方式 Microsoft 建议使用证书,并在 SQL Server 群集上的 SSL 加密是:
  1. 在 $ 群集中的每个节点上安装的证书。
  2. 安装在每个客户端上的受信任的根授权机构。
  3. 启用 强制协议加密 选项,从客户机使用客户端网络实用程序。
有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
319349打开"强制协议加密"选项是不可逆,如果没有证书的错误:
若要对客户端计算机和服务器之间的通信,您首先必须决定是否您需要为每个服务器或每个客户端加密。请记住: 如果启用了加密,在服务器上的有当前的 SQL Server 限制。加密会对所有传入连接。如果启用了客户端计算机上的加密所有的传出连接,从该客户机尝试对任何 SQL Server 进行加密的连接。

此外,从服务器启用了强制协议加密,时将对其加密登录名和数据。但是,它不要求客户机信任相同的根颁发机构。如果您愿意客户机信任相同的根颁发机构,您必须使用客户端网络实用程序或 $ 连接字符串选项强制协议加密客户端上的。这是设计使然。

如果证书是无效或服务帐户用于启动 MSSQLServer 服务找不到该证书将不会启动 SQL Server。因此,Microsoft 建议您在使用相同的用户帐户所使用的启动 MSSQLServer 服务身份登录时请求证书。

如果正在运行 SQL Server 在计算机上安装了 Microsoft Internet Information Services (IIS),您也可以使用 IIS 服务管理器向导上该 目录安全 选项卡。证书必须是完全限定的域名 (FQDN) 服务器的已颁发的服务器证书。证书名称不能使用 IP 地址。客户端计算机必须通过 FQDN 或 NetBIOS 名称服务器的请求到服务器连接。不能使用运行 SQL Server 的计算机的 IP 地址连接到服务器。

如果计算机中有多个证书安装在用户存储中或在计算机存储区中必须指定哪个证书应该用于 SQL Server。

在下面的注册表项中创建类型 REG_BINARY 的证书值,请执行以下操作:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib
单击证书值,然后键入在数据列中的证书的指纹属性值。

一个例如注册表应类似于以下内容时将其导出:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib] "Certificate"=hex:2e,67,3e,84,4a,4f,e0,7f,08,42,6a,7a,35,9b,01,94,76,67,0b
如果此注册表项设置为在计算机上的 0,计算机会忽略在计算机上的证书。运行 SQL Server 的计算机将启动,但不可读该证书在计算机上。如果您要使用加密,并且计算机只能有一个证书不需要此注册表项。

要捕获使用 Microsoft 网络监视器或 $ 网络探查器工具的两台计算机之间通信是唯一的方法来验证您具有成功所做的加密的连接。 有关如何安装 Microsoft 网络监视器的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
243270如何在 Windows 2000 中安装网络监视器

请求并安装证书,方法是使用证书服务器

  1. 通过使用相同的帐户所使用的启动 MSSQLServer 服务身份登录时,请使证书服务器的 HTTP 连接。例如对于您可以进行以下连接:
    http://mycertserver/certsrv
    注意Microsoft 建议您通过使用域用户帐户或本地用户帐户具有最少权限的并不是本地系统帐户启动 MSSQLServer 服务。
  2. 选择 申请证书,,然后再单击 下一步
  3. 在该 选择申请类型: 页上,单击以选择 高级申请,然后单击 下一步
  4. 选择 提交证书申请使用窗体向此 CA,然后单击 下一步
  5. 名称 框中输入您的计算机的完全合格的域名。ping 您的计算机以获取完全限定的域名称,如果您不确定它是什么。
  6. 预期目的 节中更改所选内容为 服务器身份验证证书 通过使用下拉下拉列表框从客户端身份验证证书。对于企业证书颁发机构可以转而选择一个模板。
  7. 单击本地计算机证书存储区中的 存储证书 选项。
  8. 将所有其他项目保留为默认值。单击 提交
  9. 最后一页显示您 要安装的证书 的超链接。单击 安装此证书
要验证您的证书的安装正确,使用任一 MMC 证书的管理单元验证证书或使用 CertUtil.exe 工具可以列出该证书的证书服务器上安装的。若要加载证书 MMC 管理单元,请按照下列步骤操作:
  1. 要打开 MMC 控制台单击 开始, 然后单击 运行
  2. 运行 对话框中键入 mmc,然后单击 确定
  3. 控制台 菜单上单击 添加/删除管理单元
  4. 单击 添加,然后单击 证书
  5. 单击 添加

    系统将提示您打开 $ l 管理单元为当前用户帐户、 服务帐户或计算机帐户。
  6. 单击 计算机帐户
  7. 单击 本地计算机,然后单击 完成
  8. 单击 关闭
  9. 单击 确定

    您已安装的证书位于 个人 容器中证书文件夹中。
双击该的证书,然后确保下列所有,则:
  • 与该证书对应的私钥。
  • 证书主题名称是计算机的 FQDN。
  • 证书的预期的目的是用于服务器身份验证。
  • 证书路径都有一个有效根证书颁发机构链。

启用 SSL 加密该 SQL Server

在服务器上安装了证书后,您可以通过执行以下步骤启用 SSL 加密:
  1. 使用 SQL Server 网络实用工具,然后单击以选中 强制协议加密 复选框。
  2. 停止,然后重新启动 MSSQLServer 服务的默认实例或命名实例。
  3. 使用 SQL Server 错误日志以验证 SQL Server 没有它启动时报告任何错误。

启用对特定的客户端的 SSL 加密

如果您不想启用全局在服务器上的 SSL 加密,您可以启用从特定的客户端的 SSL 加密。请不要启用 SSL 加密服务器和客户端上, 使用一个或另一个。如果启用了 SSL 加密,在每个客户端的基础上客户端计算机必须信任服务器证书。证书必须已在服务器上。客户端计算机不需要一个证书,但它必须有服务器证书作为受信任根证书颁发机构。请按照下列步骤以启用 SSL 加密,在每个客户端的基础上:
  1. 请确保您禁用或清除在服务器网络实用工具中的 强制协议加密 选项。
  2. 若要验证的客户端和服务器计算机之间通信不加密使用网络监视器或 $ 网络探查器工具进行测试连接从客户端计算机。
  3. 用鼠标右键单击 Internet Explorer 图标上正在运行 SQL Server 在计算机上的桌面。
  4. 右键单击 属性
  5. 单击 内容 选项卡。
  6. 单击 $ 证书
  7. 单击 受信任的根证书颁发机构
  8. 单击以选中 证书颁发机构
  9. 单击 导出,然后单击 下一步
  10. 导出文件格式 对话框中单击 $ 加密信息语法标准的 PKCS # 7 证书 (.P7B)
  11. 单击以选中 如果可能,证书路径中的所有证书都包括 复选框。
  12. 选择导出的证书的文件名称。请确保文件的位置是在客户端计算机可以稍后访问将其导入的某个位置。
  13. 单击 下一步,然后单击 完成
  14. 在客户端上选择您的 Internet 浏览器、 右键单击 属性,指向 内容,然后单击 证书
  15. 单击 受信任的根证书颁发机构 选项卡。
  16. 单击 导入、 单击 下一步、 单击 浏览,和然后单击 更改文件类型为: PKCS # 7 Certificates(*.p7b)
  17. 选择刚才从 SQL Server,导出的证书,然后单击 打开。单击 下一步
  18. 单击以选中 自动选择证书存储区基于证书的类型 复选框。
  19. 单击 要将下列证书添加到根存储区。
  20. 单击 下一步,然后单击 完成
  21. 会打开一个对话框,其中文本:
    导入成功
  22. 验证该证书将显示在受信任的根认证机构和 $ 预期目的 指示 所有
  23. 单击 视图 来验证跟证书一起报告了任何错误。
  24. 单击 证书路径 选项卡,然后检查证书状态以查看它是否设置为 确定
  25. 打开客户端网络实用程序,然后单击以选中 强制协议加密 复选框。

测试从客户端加密

若要测试从客户端加密,使用下列方法之一:
  • 使用查询分析器工具。
  • 您可以在其中更改连接字符串可使用任何 ODBC 应用程序。

查询分析器

若要可供该 SQL 查询分析器工具测试,请按照下列步骤操作:
  1. 使用 SQL Server 客户端网络实用工具。
  2. 单击以选中 强制协议加密 复选框。
  3. 连接到通过使用查询分析器运行 SQL Server 2000 的服务器。
  4. 监视通信通过使用 Microsoft 网络监视器或 $ 网络探查器。

ODBC 应用程序

若要可供 ODBC 应用程序测试,请按照下列步骤操作:
  1. 修改 ODBC 或 OLEDB 连接字符串,请执行以下操作:

    ODBC
    Driver=SQLServer;Server=ServerNameHere;UID=UserIdHere;PWD=PasswordHere;Network=DBNETLIB.DLL;Encrypt=YES
    						
    OLEDB
    Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=dbNameHere;Data Source=ServerNameHere;Use Encryption for Data=True
  2. 连接到运行 SQL Server 2000 的计算机,并通过使用 Microsoft 网络监视器或 $ 网络探查器监视通信。

参考

有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
316898如何通过使用 Microsoft 管理控制台中启用 SSL 加密的 SQL Server 实例

属性

文章编号: 276553 - 最后修改: 2006年4月4日 - 修订: 10.4
这篇文章中的信息适用于:
  • Microsoft SQL Server 2000 标准版
  • Microsoft SQL Server 2000 64-bit Edition
关键字:?
kbmt kbhowtomaster KB276553 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 276553
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com