2017-01-26 3 views
1

У меня есть соединение с redis, что он защищен паролем. Но если я поставлю свой пароль на JS, читают и небезопасная, например, если я положил мой пропуск в main.js как:Сохранение разумных данных в Electron

var redis = new Redis({ 
    port: 5008, 
    host: 'mysite.com', 
    protocol: "https", 
    password: "mypasswordencryptedhere" 
    }) 

Если я скомпилировать мое приложение с электронно-упаковщиком и я смотрю на папке созданный, я могу читать main.js с паролем. Итак, мой вопрос: где я могу хранить разумные данные, такие как пароль в электроне? Thankyou!

ответ

0

Вскоре - на сервере с базой данных.

Я использовал этот подход Я сделал веб-приложение с конечной точкой API, которое было вызвано клиентским приложением. API, полученный от приложения-клиента AppID - уникальная строка (было от 1 до 1 отношений между пользователями приложений и AppID), и чем на основе этого AppID и некоторого проприетарного кода, который я никогда не использовал, он получил уникальную строку соединения API, которая может быть используется в приложении. И эта строка соединения генерировалась каждый раз, когда пользователь пытался получить доступ к базе данных.

Этот подход имеет эти недостатки - вам нужен сервер, работающий с API вашего приложения. Поскольку вы упомянули, что используете электрон, вполне вероятно, что у вас есть некоторые навыки nodejs и вы можете сделать сервер API.

UPD: мы изобретаем https://en.wikipedia.org/wiki/OAuth Протокол. Я думаю, что будет лучше использовать его для получения одноразовых паролей для электронного приложения для доступа api

+0

Здравствуйте, водолаз! спасибо, да, у меня есть Apo endpoit build на Laravel, где я делаю вызов Ajax для извлечения данных с помощью ApiKey, который хранится динамически при настройке, и когда я делаю вызов ajax, я проверяю, действительно ли ApiKey действителен и назначен, так что могу ли я просто ajax позвонить на мой сервер и вернуть пароль? Я думал об этом методе, но не знаю, был ли он действительным методом – LorenzoBerti

+0

. Я думаю, что он будет действительным методом, если есть ОДИН API КЛЮЧ для ОДНОГО ПОЛЬЗОВАТЕЛЯ, нет дубликатов ключей api. Возможно, вы можете найти любые библиотеки для реализации https://en.wikipedia.org/wiki/OAuth авторизации – vodolaz095

+0

Да, я сделал JWT AUth для входа в систему, а когда пользователь Icreate я назначил уникальный статический APIKEY (256char) для пользователя, что он использует для приложения Electron – LorenzoBerti

 Смежные вопросы

  • Нет связанных вопросов^_^