这是我的登录模型
LoginModel = Backbone.Model.extend({
initialize: function(){
},
defaults:{
userName: 'undefined',
passwd: 'undefined'
},
urlRoot: 'https://www.xxxx.xxxx/encryptedcredentials',
parse: function(response, options){
},
validate: function(attributes, options){
}
});
我将一个令牌发送到服务器以接收加密的用户名&密码。在success方法上,它返回加密的凭据。
// creating a loginmodel
var loginmodel = new LoginModel();
// calling save to post the token
loginmodel.save({token:"xxxxxxxxxxxxxx"},{
success: function(model, response){
//server is returning encrypted the user name and password
response.encUserName;
response.encPassword
},
error: function(model, response){
}
);
如何将响应(userName,passwd)设置为用户创建的loginmodel的属性?
答案 0 :(得分:0)
您的服务器无法为您提供用户密码。干净利落。如果可以,那么您的用户数据不安全。
当服务允许您使用用户名/密码登录时,服务器绝不应以您或其他任何人可以检索原始密码的纯文本版本的方式存储密码。您应该将密码存储为用户输入的盐渍哈希。然后,当他们尝试登录时,您对输入执行相同的加密,并检查它是否与您存储在数据库中的加密哈希相匹配。这就是为什么当您在网站(Twitter,Facebook,Google)上忘记密码时,唯一的选择是重置密码。
您应该永远能够取回密码的纯文本版本。的自从强>