Django如何处理自定义用户类的密码字段?

2024-04-23 16:21:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个运行django1.6.6的服务器和一个由phonegap/cordova构建到Android和iOS的应用程序。你知道吗

第一个问题: 因为我对“User”类有一些自定义要求,所以我不想使用Django提供的User类。你知道吗

所以我有以下课程:

class Customer(models.Model):
    uid = models.CharField(primary_key=True, max_length=64)
    username = models.CharField(max_length=64)
    password = models.CharField(max_length=16)
    role = models.CharField(max_length=16)
    confirmed = models.BooleanField()
    createdat = models.DateTimeField()
    ...

    def __str__(self):
        return '%s' % (self.username)

因此,如果我或其他管理员登录到Django提供的“admin”后端,他可以将用户的密码视为纯文本。 有没有办法创造出

password = models.PasswordField(max_length=16)

为了避免在后端读取密码?你知道吗

第二个问题是,如果像这样通过ajax发送密码

    var request = $.ajax({
        url : 'https://myproject.mydomain.com/login/',
        type : 'GET',
        dataType : 'json',
        data : {
            'username' : username,
            'password' : password
        },
        timeout : 30000,
        success : function(data) {
            //do success stuff
        },
        error : function(x, t, m) {
            //do error stuff
            }
        }
    });

使用“https”是安全的密码吗?还是有别的办法?你知道吗

谢谢你!你知道吗


Tags: djangohttpsself密码datamodelsusernameajax