Я хотел бы спросить, существует ли стандарт для хранения имени пользователя и пароля в приложении Windows Phone. Я работаю над проектом, который проверяет пользователя на каждый вызываемый запрос. Итак, я хочу сохранить имя пользователя и пароль. Возможно, даже дать им возможность "запомнить меня", поэтому, если для этого не существует стандарта, мне придется писать его самостоятельно, но я предполагаю, что у Microsoft есть встроенный модуль.
Есть ли стандарт для хранения имени пользователя и пароля в приложениях WP7?
Ответ 1
Используйте ProtectedData. Я нашел этот пример на Кевин Д. Волк, эффективныйcoder.net:
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;
}
}
(Извинения за вырезку и вставку мне пришлось использовать текст из сканирования изображений)
Ответ 2
Вы должны шифровать пароли и другие конфиденциальные данные с помощью подпрограмм класса ProtectedData
и вручную хранить их в изолированном хранилище для вашего приложения.
Зашифровать
Чтобы расшифровать
Кроме того, убедитесь, что вы добавили ссылку на mscorelib, расширенную для вашего проекта. Мне пришлось усердно учиться этому.
Хорошая статья по теме: http://debugmode.net/2011/10/16/protecting-password-or-any-data-in-windows-phone-7-using-data-protection-api/