Sobes.tech
Senior

What is Liquibase and how to organize database versioning, especially under security restrictions (like in Sberbank)?

sobes.tech AI

Answer from AI

Liquibase is a tool for database version control that allows describing schema changes as migrations (change sets) that can be applied sequentially.

To organize database versioning with Liquibase under strict security restrictions (for example, in Sberbank), it is important to:

  • Store all migrations in the version control system together with the application code.
  • Use a declarative approach: each migration is described in XML, YAML, or SQL, ensuring transparency and auditability.
  • Configure the CI/CD process so that migrations are applied automatically in test environments, and only after approval in production.
  • Restrict access rights to the database: migrations are executed under a service account with the minimum necessary permissions.
  • Implement a migration review procedure to exclude dangerous changes.
  • Use Liquibase's rollback capabilities to enhance reliability.

Thus, Liquibase helps maintain schema consistency, provides version control, and meets security requirements through transparency and manageable migrations.