3 from django.conf import settings
4 from django.db import models
7 class OAuthClient(models.Model):
8 client_id = models.CharField(max_length=100)
9 client_secret = models.CharField(max_length=100, default=uuid.uuid4)
15 class OAuthSub(models.Model):
16 sub = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
17 client = models.ForeignKey(OAuthClient, on_delete=models.CASCADE)
18 user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
21 class OAuthCode(models.Model):
22 code = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
23 client = models.ForeignKey(OAuthClient, on_delete=models.CASCADE)
24 user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
25 creation_timestamp = models.DateTimeField(auto_now_add=True, null=True)
28 class OAuthAccessToken(models.Model):
29 token = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
30 client = models.ForeignKey(OAuthClient, on_delete=models.CASCADE)
31 user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
32 creation_timestamp = models.DateTimeField(auto_now_add=True, null=True)