Частичное хранение данных объекта в Spring Vault - PullRequest
0 голосов
/ 05 мая 2020

Я просматривал документацию Vault и до сих пор не уверен, правильно ли я понимаю, какой подход выбрать для моей проблемы.

Представьте, что у вас есть сущность с именем Example. Он имеет несколько полей, таких как имя, создано и т. Д. c. и среди этих конфиденциальных полей, таких как пароль, 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.

Я просто запутался, если Vault вообще следует использовать только для c секретов в этом случае.

Ответы [ 2 ]

1 голос
/ 05 мая 2020

Я бы сказал, это ваше дело / дело.

Вы можете сохранить весь объект (объект) в хранилище или только строку.

Посмотрите, поможет ли это: https://www.baeldung.com/spring-vault

0 голосов
/ 06 мая 2020

Не храните все в хранилище в секрете, вы можете сохранить пароль, но я не думаю, что это рекомендуется для обычного пользователя (в вашем случае объект, похоже, является пользователем приложения). Используйте их механизм секретного транзита и зашифруйте данные и сохраните их в любой БД, вы можете вернуть доступ к БД с аутентификацией хранилища.

Если вы хотите сохранить пароль в секретном механизме, вы можете это сделать, но вам понадобится класс обслуживания, который будет извлекать пароль из хранилища перед выполнением любой операции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...