2012-04-02 1 views
0

Я разрабатываю мобильный сайт с использованием asp.net. Этот веб-сайт будет использовать некоторые веб-службы, требующие отправки имени пользователя и пароля для каждого вызова. Для этого мне нужно будет сохранить учетные данные, которые пользователь будет использовать в форме входа, на клиенте. Каковы наилучшие методы?Сохраните имя пользователя в браузере localstorage, используя C#

Интересно, как я должен сохранять имя пользователя и пароль на локальном уровне, сохраняя приемлемый уровень безопасности.

Я думал о шифровании учетных данных на C#, а затем сохранял зашифрованное значение в localStorage браузера. Будет ли это «обеспечено»?

Другой вопрос, можно ли хранить в localStorage с помощью C# для запуска JavaScript?

Спасибо.

+0

Почему бы не использовать состояние сеанса? Пользователь регистрируется, получает файл cookie и использует этот файл cookie с идентификатором sessionID для аутентификации. – frenchie

ответ

3

Не делайте этого, это была бы лучшая практика.

Серьезно, вредоносное ПО на мобильных устройствах настолько велико в наши дни, я бы не хранил ничего чувствительного на них. Кроме того, очень легко потерять мобильное устройство, и тогда у кого будет информация для входа?

Даже на обычных веб-сайтах, как правило, есть опция «запомнить меня», и это зависит от пользователя, чтобы определить, хотят ли они сохранить его, если они захотят, а не веб-разработчик.

В случае флажка «запомнить меня» учетные данные пользователя обычно хранятся в файле cookie. Не самая безопасная вещь в мире. http://www.wisegeek.com/is-it-safe-to-select-the-remember-me-on-this-computer-checkbox-with-online-accounts.htm

Некоторые веб-сайты используют учетную запись Windows или что-то подобное, где есть фактическое приглашение для входа, и все это обрабатывается браузером, а не веб-разработчиком.

Если вы разрабатывали истинное мобильное приложение, ТОГДА вам было бы безопасно хранить пароль. Но не для мобильного сайта.

+0

Спасибо за этот ясный ответ! Итак, как я должен знать, что веб-службам требуется имя пользователя и пароль в запросе? – Distwo

+0

Я немного смягчил бы это, если бы в приложении не было никаких конфиденциальных данных, и вы просто хотите запомнить пользователя для таких вещей, как сохранение своего предпочтительного города для приложения погоды и т. Д. Полностью безобидные данные. Но если вы предоставляете им доступ ко всему, что может сделать злоумышленник, чтобы получить прибыль, я бы настоятельно возражал против создания механизма запоминания входа пользователя. Потерянные/украденные мобильные устройства являются растущим источником входных точек нарушения данных. – David

+0

Клиенту на мобильном устройстве не требуется пароль пользователя. веб-сайт нуждается в имени пользователя/пароле, если веб-сайт выполняет вызовы в веб-службу. Устройство должно полностью не знать об этом. или я читаю это неправильно? Ваш веб-сайт работает на сервере, а серверный код - это то, что вызывает веб-сервис, а не клиентское приложение, верно? – David

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