1 回答
TA贡献1836条经验 获得超5个赞
如果我正确理解您的问题,您希望在许多环境(不同的服务器)中为超级用户使用相同的令牌吗?如果这是真的,那么您可以尝试重写自动创建令牌的方法。
如何生成令牌: https://www.django-rest-framework.org/api-guide/authentication/#generate-tokens
DRF AuthToken代码 https://github.com/encode/django-rest-framework/blob/master/rest_framework/authtoken/models.py
基于上面的示例代码可以是(未测试):
@receiver(post_save, sender=settings.AUTH_USER_MODEL)
def create_auth_token(sender, instance=None, created=False, **kwargs):
if created:
if instance.is_superuser:
Token.objects.create(user=instance, key="superuser_key")
else:
Token.objects.create(user=instance) # use generated key
重要请不要在代码中对令牌进行硬编码,您可以使用例如 python-de Couple 包将其作为环境变量处理。
添加回答
举报