diff options
Diffstat (limited to 'djangorestframework/tokenauth/models.py')
| -rw-r--r-- | djangorestframework/tokenauth/models.py | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/djangorestframework/tokenauth/models.py b/djangorestframework/tokenauth/models.py deleted file mode 100644 index e8886112..00000000 --- a/djangorestframework/tokenauth/models.py +++ /dev/null @@ -1,34 +0,0 @@ -import uuid -import hmac -from hashlib import sha1 -from django.db import models - - -class TokenManager(models.Manager): - """ - Manager class to provide `Token.objects.create_token(user=user)`. - """ - def create_token(self, user): - token = Token(user=user) - token.save() - return token - - -class Token(models.Model): - """ - The default authorization token model. - """ - key = models.CharField(max_length=40, primary_key=True) - user = models.ForeignKey('auth.User') - revoked = models.BooleanField(default=False) - created = models.DateTimeField(auto_now_add=True) - objects = TokenManager() - - def save(self, *args, **kwargs): - if not self.key: - self.key = self.generate_key() - return super(Token, self).save(*args, **kwargs) - - def generate_key(self): - unique = str(uuid.uuid4()) - return hmac.new(unique, digestmod=sha1).hexdigest() |
