feat: support for import/export masked_encrypted_extra (backend) (#38077)

This commit is contained in:
Vitor Avila
2026-03-04 16:26:28 -03:00
committed by GitHub
parent 63e7ee70bf
commit 8c9efe5659
16 changed files with 799 additions and 2 deletions

View File

@@ -97,6 +97,15 @@ class ExportDatabasesCommand(ExportModelsCommand):
)
payload["ssh_tunnel"] = mask_password_info(ssh_tunnel_payload)
# If DB has sensitive fields in Secure Extra, export them masked.
# If not, export them as-is.
if encrypted_extra := model.encrypted_extra:
masked_encrypted_extra = model.masked_encrypted_extra
if encrypted_extra != masked_encrypted_extra:
payload["masked_encrypted_extra"] = masked_encrypted_extra
else:
payload["encrypted_extra"] = encrypted_extra
payload["version"] = EXPORT_VERSION
file_content = yaml.safe_dump(payload, sort_keys=False)