首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过JDBC实现SAP数据库的安全连接?

如何通过JDBC实现SAP数据库的安全连接?
EN

Stack Overflow用户
提问于 2021-08-31 07:54:04
回答 1查看 415关注 0票数 1

我可以使用JDBC通过我的服务器连接到HANA数据库。我正在试图找出我与数据库的连接是否安全?

代码语言:javascript
复制
        public void createDataSource() {
            DataSource dataSource =  DataSourceBuilder.create()
            .driverClassName(JDBC_DRIVER)
            .URL("jdbc:sap://localhost:30013/?encrypt=true&validateCertificate=true")
            .username("username")
            .password("password")
            .build();
          
            Connection c = dataSource.getConnection();  
      }

现在,我从文档中了解到,当我在URL中设置参数时,

encrypt=true

它启用或禁用TLS加密。要使SAP云连接成功,必须将加密设置为TRUE。

另一个参数是:

validateCertificate=true

如果设置为true,则指定验证服务器的证书。

在这里,我无法理解的是,何时它将被部署到生产,这是我们所需要做的安全数据库连接吗?有人能指出我错过了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-17 10:52:28

证书的好处在于,您通常不必担心它们。

java虚拟机(JVM)附带了一组所谓的证书颁发机构( CA)的根证书(包括DigiCert全局根CA)。根据java发行版的不同,可能会有一些细微的差异,但是顶级CA应该受到所有人的信任。

您可以使用以下命令查看受信任can的列表:

关键工具-list -v -cacerts -storepass转换

只要您的数据库的SSL证书是由其中一个CA(或其中的一个中间证书)签名的,您就不需要任何额外的配置,而且它只是开箱即用。这也是你应该瞄准的场景,因为它是最简单的。

但是,您也可以将您自己的可信证书列表传递给JVM,或者,这可能是为一个JDBC连接设置一个自定义信任库的最佳通用设置。例如,在一个被文档化的设置中,您可以使整个数据库字符串可配置,允许人们将自己的can挂载到容器中,并在数据库连接字符串中配置它们。有关详细信息,请参阅SAP文档中的“用于SAP的JDBC连接属性”。

jdbc:sap://localhost:30013/?encrypt=true&validateCertificate=true&trustStore=file:cert/truststore.jks&trustStorePassword=123456

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68994900

复制
相关文章

相似问题

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