Сохранение значения ответа в базовой модели, которая сделала вызов 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), единственный вариант - сбросить пароль.

Вы никогда не сможете вернуть текстовую версию пароля. Когда-либо.

Другие вопросы по тегам