jpa SAP数据库技术JDBC:[4321]:仅允许安全连接

aelbi1ox  于 2023-01-17  发布在  其他
关注(0)|答案(3)|浏览(156)

我无法从我的Spring启动应用程序创建与SAP Cloud Foundry HANA服务的连接。我已指定JPA属性值,因为SCP CF中的HANA HDI服务绑定中提供了该信息,但从我的Spring启动示例中收到以下错误:
SAP数据库技术JDBC:[4321]:仅允许安全连接"
SAP CF HANA服务正在强制实施安全性是否有任何标准方法可以与Spring boot to SAP HANA CF服务建立连接?
通过设置JPA属性,通过application.yml文件在Springboot应用程序中建立连接时,仅添加连接不起作用,但能够通过代码手动查找驱动程序类,使用连接对象在servlet中建立连接。
如何通过application.yml文件中的JPA属性成功建立连接?

7hiiyaii

7hiiyaii1#

在application.yml中为你的数据源url试试这个:

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

bq3bfh9z2#

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

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

注意URL中出现了两次\u0026转义序列。
它们应该是&
一旦我将它们更改为&字符,它就工作了。
正如前面的回答所指出的,encrypt=true需要在URL中-但是如果&字符被转义,则将找不到它。
如果URL包含转义序列,我会说这是SAP HANA错误。此外,错误消息实际上没有多大帮助。Could not find encrypt=true in URL. Only secure connections are allowed!消息将有助于更容易地找到这个问题。

svmlkihl

svmlkihl3#

SAP似乎已了解该问题:
https://github.com/SAP/spring-cloud-sap/issues/8
在页面的末尾至少列出了一个解决方法,这可能会有所帮助。

相关问题