Встречается на собеседованиях • сегодня
Как обеспечить безопасность секретного ключа в Java-приложении, если он хранится в профиле и Git-репозитории
Для безопасного хранения секретных ключей в Java-приложении:
-
Используйте переменные окружения – храните ключи в
.env(добавьте его в.gitignore), загружайте черезSystem.getenv("KEY"). -
Шифруйте ключи – храните зашифрованные значения, расшифровывайте при запуске (например, с помощью Jasypt).
-
Используйте Key Management Services (KMS) – AWS KMS, HashiCorp Vault или аналоги.
-
Не храните в коде/репозитории – даже в
.properties/.yamlбез защиты.
Пример с Jasypt:
java
StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
encryptor.setPassword(System.getenv("ENCRYPTION_PASSWORD"));
String decryptedKey = encryptor.decrypt(encryptedKeyFromConfig);Для production – предпочтительны KMS или секреты в runtime-окружении (Kubernetes Secrets, AWS Secrets Manager).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы