Chciałbym zapytać, czy istnieje standard do przechowywania nazwy użytkownika i hasła w aplikacji Windows Phone. Pracuję nad projektem, który sprawdza użytkownika pod każdym wywołanym żądaniem. Tak więc chcę zapisać nazwę użytkownika i hasło. Może nawet dać im możliwość "zapamiętania mnie", więc jeśli nie ma standardu, aby to zrobić, będę musiał napisać to sam, ale przypuszczam, że Microsoft ma wbudowany.Czy istnieje standard przechowywania nazwy użytkownika i hasła w aplikacjach WP7?
Odpowiedz
Użyj ProtectedData. Znalazłem ten przykład na Kevin D. Wolf's efficientcoder.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;
}
}
(Przepraszamy za wyciąć i wkleić musiałem użyć tekstu ze skanowania obrazu)
Powinieneś zaszyfrować skorzystać haseł i innych poufnych danych za pomocą klasy rutyny ProtectedData
i ręcznie przechowuj je w magazynie izolowanym dla swojej aplikacji.
Aby zaszyfrować
Aby odszyfrować
Ponadto, upewnij się dodać odwołanie do mscorelib przedłużony do swojego projektu. Musiałem się tego nauczyć na własnej skórze.
Dobry artykuł na ten temat to: http://debugmode.net/2011/10/16/protecting-password-or-any-data-in-windows-phone-7-using-data-protection-api/
Co jest z obrazami kodu? –
Sorry =) Pisałem odpowiedź w drodze z iPada, a napisanie kodu w przeglądarce jest dla mnie niezwykle skomplikowane. –
To nie była próba zwracania większej uwagi na odpowiedź, jeśli o to pytasz =) Chociaż teraz widzę, że jest bardziej żywy, kiedy kod jest większy. –
- 1. Sprawdzanie nazwy użytkownika i hasła w Androidzie
- 2. Przekazywanie nazwy użytkownika i hasła do svcutil.exe?
- 3. Jaki jest najlepszy sposób przechowywania nazwy użytkownika i hasła na telefonie iPhone?
- 4. Zmiana domyślnej nazwy użytkownika/hasła w RockMongo
- 5. Jak ustawić timer w aplikacjach wp7?
- 6. Wysyłanie nazwy użytkownika i hasła do usługi WWW
- 7. Użyj nazwy użytkownika i hasła do połączenia ActiveMQ JMS
- 8. IIS 7.5 wyświetla monit o podanie nazwy użytkownika i hasła.
- 9. Zmiana nazwy użytkownika i hasła serwera proxy skrzypka
- 10. Czy istnieje maksymalna długość nazwy użytkownika uwierzytelniania HTTP BASIC?
- 11. Uwierzytelnianie w PHP przy użyciu nazwy użytkownika/hasła?
- 12. Wywołanie API REST z nazwy użytkownika i hasła - jak
- 13. Zmiana nazwy użytkownika i hasła konta niestandardowego Android
- 14. Autoryzacja użytkownika w aplikacjach EventSourcing
- 15. Czy istnieje standard dla kodów błędów/błędów?
- 16. Standard REST sprawdzający, czy zasób istnieje
- 17. Czy istnieje standard dla kryptosystemów progowych (m z n)?
- 18. Programowo zaloguj się do Facebooka, używając nazwy użytkownika/hasła
- 19. Jak uzyskać dostęp do serwera proxy bez nazwy użytkownika i hasła?
- 20. Dlaczego wget nie przyjmuje mojej nazwy użytkownika/hasła?
- 21. Błąd połączenia FTP przy użyciu nazwy domeny, nazwy użytkownika i hasła?
- 22. Czytaj zdalny plik w java, który wymaga nazwy użytkownika i hasła
- 23. Połączenie z Oracle bez nazwy użytkownika lub hasła
- 24. jak używać dostarczonej nazwy użytkownika i hasła do odczytu pliku w Javie
- 25. Jaki jest najlepszy sposób przechowywania hasła w bazie danych, gdy wywołanie interfejsu API wymaga wysłania hasła w postaci zwykłego tekstu?
- 26. Django przechowywania anonimowych danych użytkownika
- 27. Korzystanie z InstallUtil i ciche ustawianie nazwy użytkownika/hasła logowania do systemu Windows
- 28. Uwierzytelnianie gitpython git za pomocą użytkownika i hasła
- 29. Przechowywanie haseł w aplikacjach iPhone'a
Cześć, dziękuję za odpowiedź, znalazłem to bardzo przydatne! Tylko jedno: napisałeś "e" zamiast "0", jak przypuszczam, jako drugi parametr w Encoding.UTF8.GetString(). Pozdrawiam ^^ –
dzięki - poprawione. Możesz poprawić odpowiedź. –