在Spring Vault中存储实体数据

问题描述 投票:0回答:1

我一直在浏览Vault文档,但仍然不确定我是否正确理解采用哪种方法来解决问题。

想象一下,有一个名为Example的实体。它具有多个字段,例如名称,创建者等,并且在这些敏感字段之间,例如密码,secret_key。

@Entity
@Table(name = "example")
public class Example { 
  private String name;
  private Date created;

  ...

  @Convert(converter = SomeConverter.class)
  private String password;
  @Convert(converter = SomeConverter.class)
  private String secretKey;
}

此实体存储在SQL数据库(例如PostgreSQL)中。现在,我的目标是确保密码安全(因此使用转换器类),但其余数据不安全。

是否可以将实体数据存储在数据库中,同时又将敏感数据存储在Vault中(位于其后面的任何存储中?因此,当我要加载实体时,两个实体数据都将从数据库加载,而敏感数据则从保险柜中加载。

或者正确(且唯一可行)的方法是仅使用Vault中的加密/解密转换器并将其存储在同一数据库中?并通过Vault进行身份验证来限制此设置。

如果在这种情况下一般仅将保管箱用于静态机密,我只是感到困惑。

java spring hashicorp-vault spring-vault
1个回答
0
投票

我想说,这取决于您/公司。

您可以将整个实体(对象)存储到Vault中,也可以只存储一个字符串。

看看是否有帮助:https://www.baeldung.com/spring-vault

© www.soinside.com 2019 - 2024. All rights reserved.