当前位置: 代码迷 >> java >> SAP DBTech JDBC:[4321]:仅允许安全连接
  详细解决方案

SAP DBTech JDBC:[4321]:仅允许安全连接

热度:28   发布时间:2023-07-31 10:58:54.0

我无法从我的Spring Boot应用程序创建与SAP Cloud Foundry Hana服务的连接。 我已经给出了JPA属性值,因为该信息在SCP CF中的HANA HDI服务绑定中提供,但是从我的示例Spring引导中得到以下错误:

SAP DBTech JDBC:[4321]:仅允许安全连接”

SAP CF HANA服务正在加强安全性,是否有任何标准方法可以通过Spring Boot与SAP HANA CF服务建立连接?

通过设置JPA属性在Springboot应用程序通过Application YML文件在Springboot应用程序中进行连接时,仅添加连接性不起作用,但是通过使用代码通过手动查找驱动程序类就能够使用连接对象在servlet中进行连接。

如何通过application.yml文件中的JPA属性进行成功连接?

尝试使用以下方法为application.yml中的数据源URL:

jdbc:sap://{host}:{port}?encrypt=true&validateCertificate=false&currentschema={schema}

我遇到了完全相同的错误。 检查您的URL。 在我的情况下,URL看起来与此类似:

jdbc:sap://<host>:<port>?encrypt=true\u0026validateCertificate=true\u0026currentschema=D006A421632F47ED8A2C9346D28B67C2

请注意,URL中两次出现\&转义序列。
这些应该是&
一旦将它们更改为& chars,它就起作用了。

如先前的答案所述, encrypt=true必须位于URL中-但如果&字符被转义,则不会找到它。

如果URL包含转义序列,则可以说它等同于SAP HANA错误。 同样,错误消息并没有真正帮助。 一条消息“ Could not find encrypt=true in URL. Only secure connections are allowed! Could not find encrypt=true in URL. Only secure connections are allowed! 本来可以更轻松地找到它。

SAP似乎已经知道该问题:

页面末尾至少列出了一种解决方法,这可能会有所帮助。

  相关解决方案