我在Windows 7 Home Premium上运行SQL Server 2008R2,我通过互联网从远程PC访问数据库。这有效但数据以纯文本传输。
现在我要启用SSL。
我尝试了几个教程。
目前我能做的是:
在IIS 7中创建自签名证书 (以下教程的第一步到第四步) http://www.sslshopper.com/article-how-to-create-a-self-signed-certificate-in-iis-7.html
将证书分配给SQL Server实例
一个。打开SQL Server配置管理器
B中。右键单击“Protocol on”(对于我们需要的实例,这里是STANDARD
)
℃。在证书选项卡中,选择我们之前创建的证书。
d。单击“应用”并重新启动SQL Server实例以应用此更改。
这适用于localhost:如果我与运行在与SQL Server相同的计算机上的SQL Server Management Studio连接,则可以使用激活的“加密连接”选项。
在我导入自己创建的证书之前它无法连接激活的“加密连接”选项。
无法连接到home2server.de,50021 \ SQLServer附加信息:已建立连接,但证书是从不值得信赖的认证中心签署的。
我使用IIS将证书导出到SQL_cert.pfx
,并将此文件复制到想要访问数据库的远程PC上。然后我双击它并导入它。
现在我收到一个新错误:
证书的CN名称与给定值不匹配。
我的猜测是证书是为database-pc
(运行SQL Server的PC的计算机名)颁发的。这就是它将“localhost”用作服务器名称的原因。
我认为我必须签发为home2server.de
颁发的证书,因为这是将连接重定向到database-pc
的域。
我的想法是否正确?如果是,我该如何签发这样的证书?
答案 0 :(得分:0)
在hosts
文件中添加一个条目,将home2server.de
映射到127.0.0.1
(或::1
),然后在本地连接时使用home2server.de
。
...或者不加密本地通信。