core: Add Token identifier as sudo-primary key

This commit is contained in:
Jens Langhammer
2020-10-03 23:37:58 +02:00
parent b590589324
commit c5a6b4961f
8 changed files with 231 additions and 3 deletions

View File

@ -148,6 +148,11 @@ class Outpost(models.Model):
assign_perm(code_name, user, model)
return user
@property
def token_identifier(self) -> str:
"""Get Token identifier"""
return f"pb-outpost-{self.pk}-api"
@property
def token(self) -> Token:
"""Get/create token for auto-generated user"""
@ -156,6 +161,7 @@ class Outpost(models.Model):
return token.first()
return Token.objects.create(
user=self.user,
identifier=self.token_identifier,
intent=TokenIntents.INTENT_API,
description=f"Autogenerated by passbook for Outpost {self.name}",
expiring=False,