Java 在spring boot中存储和检索用于形成服务器连接的密码

Java 在spring boot中存储和检索用于形成服务器连接的密码,java,spring,postgresql,hibernate,spring-boot,Java,Spring,Postgresql,Hibernate,Spring Boot,我有一个SpringBoot应用程序,postgres作为数据库,hibernate作为ORM。应用程序的功能之一是允许用户保存HTTP服务器(不是我的spring引导应用程序)的凭据(用户名和密码)。之后,用户可以选择将文档上载到服务器。在这种情况下,我的应用程序将从数据库中检索凭据以建立与服务器的连接 我的问题是:如何安全地存储并使用服务器的密码?如果我存储了一个哈希值,由于没有第二个密码与哈希值匹配,如何使用它登录到服务器?如果HTTP服务器不提供某种令牌,则必须以应用程序可以解密的方式将

我有一个SpringBoot应用程序,postgres作为数据库,hibernate作为ORM。应用程序的功能之一是允许用户保存HTTP服务器(不是我的spring引导应用程序)的凭据(用户名和密码)。之后,用户可以选择将文档上载到服务器。在这种情况下,我的应用程序将从数据库中检索凭据以建立与服务器的连接


我的问题是:如何安全地存储并使用服务器的密码?如果我存储了一个哈希值,由于没有第二个密码与哈希值匹配,如何使用它登录到服务器?

如果HTTP服务器不提供某种令牌,则必须以应用程序可以解密的方式将其存储在数据库中。 这不必是纯文本,但可以使用公钥进行加密(您可以将私钥存储在应用程序中进行解密,或者至少与应用程序捆绑在一起)。 这样做,至少只有访问数据库的人不能使用该信息访问HTTP服务器,但您必须保护您的应用程序(或私钥)


有关示例,请参见此处示例。Java提供了开箱即用所需的一切,请参见示例:。

您可以使用纯文本,并向用户承诺不会有人查看这些密码。