Fixes a couple c&p
This commit is contained in:
parent
6d5812fe45
commit
281347aa4d
@ -378,8 +378,8 @@ class Command(SecurityMixin, BaseCommand):
|
|||||||
metadata[EXPORTER_CRYPTO_SETTINGS_NAME] = {
|
metadata[EXPORTER_CRYPTO_SETTINGS_NAME] = {
|
||||||
EXPORTER_CRYPTO_ALGO_NAME: self.kdf_algorithm,
|
EXPORTER_CRYPTO_ALGO_NAME: self.kdf_algorithm,
|
||||||
EXPORTER_CRYPTO_KEY_ITERATIONS_NAME: self.key_iterations,
|
EXPORTER_CRYPTO_KEY_ITERATIONS_NAME: self.key_iterations,
|
||||||
EXPORTER_CRYPTO_SALT_NAME: self.salt,
|
|
||||||
EXPORTER_CRYPTO_KEY_SIZE_NAME: self.key_size,
|
EXPORTER_CRYPTO_KEY_SIZE_NAME: self.key_size,
|
||||||
|
EXPORTER_CRYPTO_SALT_NAME: self.salt,
|
||||||
}
|
}
|
||||||
extra_metadata_path.write_text(
|
extra_metadata_path.write_text(
|
||||||
json.dumps(
|
json.dumps(
|
||||||
@ -563,6 +563,6 @@ class Command(SecurityMixin, BaseCommand):
|
|||||||
self.setup_crypto(passphrase=self.passphrase)
|
self.setup_crypto(passphrase=self.passphrase)
|
||||||
|
|
||||||
for mail_account_record in manifest["mail_accounts"]:
|
for mail_account_record in manifest["mail_accounts"]:
|
||||||
mail_account_record["password"] = self.encrypt_string(
|
mail_account_record["fields"]["password"] = self.encrypt_string(
|
||||||
value=mail_account_record["password"],
|
value=mail_account_record["fields"]["password"],
|
||||||
)
|
)
|
||||||
|
@ -33,6 +33,8 @@ from documents.models import Tag
|
|||||||
from documents.parsers import run_convert
|
from documents.parsers import run_convert
|
||||||
from documents.settings import EXPORTER_ARCHIVE_NAME
|
from documents.settings import EXPORTER_ARCHIVE_NAME
|
||||||
from documents.settings import EXPORTER_CRYPTO_ALGO_NAME
|
from documents.settings import EXPORTER_CRYPTO_ALGO_NAME
|
||||||
|
from documents.settings import EXPORTER_CRYPTO_KEY_ITERATIONS_NAME
|
||||||
|
from documents.settings import EXPORTER_CRYPTO_KEY_SIZE_NAME
|
||||||
from documents.settings import EXPORTER_CRYPTO_SALT_NAME
|
from documents.settings import EXPORTER_CRYPTO_SALT_NAME
|
||||||
from documents.settings import EXPORTER_CRYPTO_SETTINGS_NAME
|
from documents.settings import EXPORTER_CRYPTO_SETTINGS_NAME
|
||||||
from documents.settings import EXPORTER_FILE_NAME
|
from documents.settings import EXPORTER_FILE_NAME
|
||||||
@ -181,16 +183,16 @@ class Command(SecurityMixin, BaseCommand):
|
|||||||
)
|
)
|
||||||
elif EXPORTER_CRYPTO_SETTINGS_NAME in data:
|
elif EXPORTER_CRYPTO_SETTINGS_NAME in data:
|
||||||
# Load up the values for setting up decryption
|
# Load up the values for setting up decryption
|
||||||
self.kdf_algorithm = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
self.kdf_algorithm: str = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
||||||
EXPORTER_CRYPTO_ALGO_NAME
|
EXPORTER_CRYPTO_ALGO_NAME
|
||||||
]
|
]
|
||||||
self.key_iterations = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
self.key_iterations: int = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
||||||
EXPORTER_CRYPTO_ALGO_NAME
|
EXPORTER_CRYPTO_KEY_ITERATIONS_NAME
|
||||||
]
|
]
|
||||||
self.key_size = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
self.key_size: int = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
||||||
EXPORTER_CRYPTO_ALGO_NAME
|
EXPORTER_CRYPTO_KEY_SIZE_NAME
|
||||||
]
|
]
|
||||||
self.salt = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
self.salt: str = data[EXPORTER_CRYPTO_SETTINGS_NAME][
|
||||||
EXPORTER_CRYPTO_SALT_NAME
|
EXPORTER_CRYPTO_SALT_NAME
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -420,4 +422,6 @@ class Command(SecurityMixin, BaseCommand):
|
|||||||
|
|
||||||
for record in self.manifest:
|
for record in self.manifest:
|
||||||
if record["model"] == "paperless_mail.mailaccount":
|
if record["model"] == "paperless_mail.mailaccount":
|
||||||
record["password"] = self.decrypt_string(value=record["password"])
|
record["fields"]["password"] = self.decrypt_string(
|
||||||
|
value=record["fields"]["password"],
|
||||||
|
)
|
||||||
|
@ -101,7 +101,7 @@ class SecurityMixin:
|
|||||||
f"{self.kdf_algorithm} is an unknown key derivation function",
|
f"{self.kdf_algorithm} is an unknown key derivation function",
|
||||||
)
|
)
|
||||||
|
|
||||||
key = base64.urlsafe_b64encode(kdf.derive(passphrase.encode()))
|
key = base64.urlsafe_b64encode(kdf.derive(passphrase.encode("utf-8")))
|
||||||
|
|
||||||
self.fernet = Fernet(key)
|
self.fernet = Fernet(key)
|
||||||
|
|
||||||
|
@ -7,5 +7,5 @@ EXPORTER_ARCHIVE_NAME = "__exported_archive_name__"
|
|||||||
EXPORTER_CRYPTO_SETTINGS_NAME = "__crypto__"
|
EXPORTER_CRYPTO_SETTINGS_NAME = "__crypto__"
|
||||||
EXPORTER_CRYPTO_SALT_NAME = "__salt_hex__"
|
EXPORTER_CRYPTO_SALT_NAME = "__salt_hex__"
|
||||||
EXPORTER_CRYPTO_KEY_ITERATIONS_NAME = "__key_iters__"
|
EXPORTER_CRYPTO_KEY_ITERATIONS_NAME = "__key_iters__"
|
||||||
EXPORTER_CRYPTO_KEY_SIZE_NAME = "__key_iters__"
|
EXPORTER_CRYPTO_KEY_SIZE_NAME = "__key_size__"
|
||||||
EXPORTER_CRYPTO_ALGO_NAME = "__key_algo__"
|
EXPORTER_CRYPTO_ALGO_NAME = "__key_algo__"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user