首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Java程序到mssql的SSL连接

问从Java程序到mssql的SSL连接
EN

Stack Overflow用户
提问于 2013-12-26 11:56:54
回答 1查看 28.8K关注 0票数 5

如何通过使用自签名证书进行测试的java程序实现与mssql服务器的SSL连接?目前,我尝试使用连接字符串进行连接,如下所示:

代码语言:javascript
复制
String dbUrl = "jdbc:sqlserver://" + server + ":" + port
        + ";databaseName=" + database + ";user="+   username
                    + ";password=" + password
                    + ";encrypt="+true
                    + ";integratedSecurity="+true
                    + ";trustServerCertificate="+false
                    + ";hostNameInCertificate=?"
                    + ";trustStore=?;trustStorePassword=?";

我现在搞不懂该把什么放在"?“在上面的连接字符串中的位置。

此外,我还可以通过以下方法从management连接mssql:

  • 若要创建自签名证书:
  • 转到控制面板
  • 行政工具
  • IIS管理器
  • 服务器证书
  • 然后在服务器证书上,在右侧面板上,单击创建自签名证书并给出友好名称.>好的。现在证书准备好了。
  • 通过在cmd中键入MMC打开mmc。
  • 添加/移除卡
  • 选择证书
  • 添加
  • 下一步,选择本地计算机,完成,好的
  • 展开证书、个人证书、证书,我们可以看到最近添加的证书。
  • 选择证书,右键单击,所有任务,管理私钥
  • 添加MSSQL用户,添加授予读取权限。
  • 现在打开Server配置管理器
  • server网络配置、属性
  • 将强制加密设置为Yes,
  • 在证书选项卡中,选择最近添加的证书。
  • 重新启动Server服务。
  • 尝试加密连接到数据库并连接。

但是如何将它与java程序连接呢?在trustStore和trustStorePassword字段中应该保留什么?

工作环境: Windows 8和mssql server 2012

EN

回答 1

Stack Overflow用户

发布于 2015-06-25 11:35:56

我相信你现在已经解决了这个问题!,但是如果其他人有同样的问题,它会在这里得到解决:https://msdn.microsoft.com/en-us/library/bb879949(v=sql.110).aspx

当加密属性设置为true,而trustServerCertificate属性设置为true时,Microsoft驱动程序将不会验证Server证书。在测试环境中,例如Server实例只有自签名证书的情况下,这通常是允许连接的必要条件。

代码语言:javascript
复制
String connectionUrl = 
"jdbc:sqlserver://localhost:1433;" +
"databaseName=AdventureWorks;integratedSecurity=true;" +
"encrypt=true;trustServerCertificate=true";
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20784407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档