Reset backup canaries

This commit is contained in:
Tanner Collin 2021-04-15 23:30:16 +00:00
parent 3f34a3aaf8
commit cad4caf518
2 changed files with 13 additions and 3 deletions

View File

@ -29,6 +29,7 @@ class Command(BaseCommand):
@transaction.atomic
def generate_backups(self):
backup_users = secrets.BACKUP_TOKENS.values()
count = 0
for user in backup_users:
models.MetaInfo.objects.update_or_create(
@ -40,6 +41,9 @@ class Command(BaseCommand):
with open(DATA_FOLDER + '/static/123e4567-e89b-12d3-a456-426655440000.jpg', 'w') as f:
f.write(backup_id_string(user) + '\n')
if user['name'] == 'null': # reset the canaries for data-at-rest
continue
file_name = 'spaceport-backup-{}.tar.gz'.format(
str(now().date()),
)
@ -72,8 +76,9 @@ class Command(BaseCommand):
cache.set(user['cache_key'], path_name + '/' + file_name)
self.stdout.write('Wrote backup for: ' + user['name'])
count += 1
return len(backup_users)
return count
def handle(self, *args, **options):
self.stdout.write('{} - Generating backups'.format(str(now())))

View File

@ -75,12 +75,17 @@ EMAIL_PASS = ''
# head /dev/urandom | base32 | head -c 40
BACKUP_TOKENS = {
'<token>': {
'name': 'firstname_lastname',
'name': 'firstname.lastname',
'backup_id': '<token>',
'cache_key': '<token>',
},
'<token>': {
'name': 'firstname_lastname',
'name': 'firstname.lastname',
'backup_id': '<token>',
'cache_key': '<token>',
},
'<token>': { # reset the canaries for data-at-rest
'name': 'null',
'backup_id': '<token>',
'cache_key': '<token>',
},