Сохранение значения ответа в базовой модели, которая сделала вызов Save()
Вот моя модель входа
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){
}
});
Я отправляю токен на сервер, чтобы получить зашифрованное имя пользователя и пароль. в случае успеха метод возвращает зашифрованные учетные данные.
// 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) на атрибуты логина, созданные пользователем?
1 ответ
Ваш сервер не должен быть в состоянии предоставить вам пароль пользователя. Легко и просто. Если это возможно, то данные ваших пользователей не защищены.
Когда служба позволяет вам войти в систему с именем пользователя / паролем, сервер никогда не должен хранить пароль каким-либо образом, чтобы вы или кто-либо другой могли получить текстовую версию исходного пароля. Вы должны хранить пароль как соленый хэш ввода пользователя. Затем, когда они пытаются войти в систему, вы выполняете то же шифрование на входе и проверяете, соответствует ли оно зашифрованному хешу, который вы сохранили в базе данных. Вот почему, когда вы забыли свой пароль на веб-сайте (Twitter, Facebook, Google), единственный вариант - сбросить пароль.
Вы никогда не сможете вернуть текстовую версию пароля. Когда-либо.