show redacted API tokens in django admin

This commit is contained in:
Nick Sweeting 2024-08-20 19:25:16 -07:00
parent 691aa608ae
commit 57e48b432c
No known key found for this signature in database

View file

@ -49,7 +49,7 @@ class APIToken(ABIDModel):
return self.token return self.token
def __repr__(self) -> str: def __repr__(self) -> str:
return f'<APIToken user={self.created_by.username} token=************{self.token[-4:]}>' return f'<APIToken user={self.created_by.username} token={self.token_redacted}>'
def __json__(self) -> dict: def __json__(self) -> dict:
return { return {
@ -69,6 +69,10 @@ class APIToken(ABIDModel):
return expiry_date.isoformat() return expiry_date.isoformat()
@property
def token_redacted(self):
return f'************{self.token[-4:]}'
def is_valid(self, for_date=None): def is_valid(self, for_date=None):
for_date = for_date or timezone.now() for_date = for_date or timezone.now()