0
我是django新手,我创建了如下模型。我想从管理面板创建新的Apiuser时,自动填充这些api_key和secret_key。填充Django模型字段
逻辑用于产生API_KEY和SECRET_KEY
".join([random.choice(string.letters + string.digits + string.punctuation) for _ in xrange(64)])
这里是模型:
class ApiUser(models.Model):
name = models.CharField(max_length = 50)
email = models.EmailField()
api_key = RandomAlphaNum(editable=False)
secret_key = RandomAlphaNum(editable=False)
quota = models.IntegerField()
used = models.IntegerField()
datejoined = models.DateTimeField(auto_now_add = True)
status = models.CharField(max_length=1, choices=STATUS_CHOICES)
我建议使用SHA1去。它对于大多数目的而言足够快速和随机。否则,尝试使用密码随机的os.urandom,而不是psudeo-random。我可以理解你的意图使用原始代码 - mod 64,但我没有看到使用它的安全性。 – CppLearner 2013-04-26 07:59:26