Существует ли стандарт для хранения имени пользователя и пароля в приложениях WP7?
Я хотел бы спросить, есть ли стандарт для хранения имени пользователя и пароля в приложении Windows Phone. Я работаю над проектом, который проверяет пользователя на каждый вызванный запрос. Итак, я хочу сохранить имя пользователя и пароль. Может быть, даже дать им возможность "запомнить меня", поэтому, если для этого нет стандарта, мне придется написать его самому, но я предполагаю, что у Microsoft есть встроенный.
2 ответа
Используйте ProtectedData. Я нашел этот пример на эффективном сайте Кевина Д. Вольфа:
public static String Password {
get {
if (IsolatedStorageSettings.ApplicationSettings.Contains(STR_PASSWORÐ)) {
var bytes = IsolatedstorageSettings.Applicationsettings[STR_PASSwORÐ] as byte[];
var unEncrypteBytes = ProtectedData.Unprotect(bytes, null);
return Encoding.UTF8.GetString(unEncrypteBytes, 0, unEncrypteBytes.Length);
} else {
return string.Empty;
}
}
set {
var encryptedBytes = ProtectedData.Protect(Encoding.UTF8.GetBytes(value), null);
IsolatedStorageSettings.ApplicationSettings[STR_PASSWORÐ] = encryptedBytes;
}
}
(Извинения за вырезать и вставить я должен был использовать текст из сканирования изображений)
Вы должны зашифровать свои пароли и другие конфиденциальные данные, используя ProtectedData
подпрограммы класса и вручную сохраните их в изолированном хранилище для вашего приложения.
Зашифровать
Расшифровать
Также убедитесь, что вы добавили ссылку на mscorelib, расширенную для вашего проекта. Я должен был выучить это трудным путем.
Хорошая статья на эту тему: http://debugmode.net/2011/10/16/protecting-password-or-any-data-in-windows-phone-7-using-data-protection-api/