Auth via API key, also added Admin interface to edit keys

This commit is contained in:
2010-06-15 21:05:53 +01:00
parent 7d90ddaec0
commit 78ca607608
4 changed files with 58 additions and 4 deletions

View File

@@ -7,16 +7,31 @@ class AuthAPIKey(models.Model):
name = models.CharField("Service Name", max_length=200)
url = models.CharField("Service URL", max_length=200, blank=True)
active = models.BooleanField(default=True)
key = models.CharField("API Key", max_length=200)
key = models.CharField("API Key", max_length=200, blank=True)
def save(self, *args, **kwargs):
if not key or key == '':
if not self.key or self.key == '':
self.key = uuid.uuid4()
models.Model.save(self, *args, **kwargs)
def __unicode__(self):
return self.name
def __str__(self):
return self.__unicode__()
class Meta:
verbose_name = 'API Key'
verbose_name_plural = "API Keys"
class AuthAPILog(models.Model):
access_datetime = models.DateTimeField()
access_datetime = models.DateTimeField("Date/Time Accessed")
key = models.ForeignKey(AuthAPIKey)
url = models.CharField("Accessed URL", max_length=200)
class Meta:
ordering = ['access_datetime']
verbose_name = 'API Access Log'
verbose_name_plural = "API Access Logs"