Können andere Apps auf dem iPhone die von Ihnen festgelegten Werte mithilfe von NSUserDefaults
lesen, ohne die Telefone mit Jailbreak? Ich überlege mir, die UserID/Passwort des Kunden für unseren Service zu speichern und sicherstellen möchten, dass es sicher ist.Können andere Programme meine NSUserDefaults-Einstellungen lesen?
Antwort
Nein, andere Anwendungen können Ihre Daten nicht sehen. Das heißt, Sie sollten wahrscheinlich die keychain auf dem iPhone verwenden, um sensible Daten wie Benutzernamen und Passwörter zu speichern.
Nein, Anwendungen sind Sandboxed. Dies beinhaltet ein eigenes Verzeichnis für Einstellungen und Benutzerdaten.
Ah, die Torheit eines fehlenden Kommas. Ich denke, du meinst "Nein, Anwendungen sind Sandboxed". –
aller Zunächst sollten Sie Benutzer-ID/Passwort in the keychain, nicht die Benutzereinstellungen werden zu speichern.
Zweitens, ja, andere Anwendungen können die NSUserDefaults lesen. Die Standardeinstellungen sind Unix-Stil Benutzer Standardeinstellungen nicht Anwendung Standardeinstellungen. Unter dem alten NextStep-Betriebssystem würden ihnen die Standardeinstellungen eines einzelnen Benutzers von einer Netzwerkmaschine zu einer Netzwerkmaschine folgen. Die Idee ist, dass Benutzer Präferenzen für Dinge wie Standardschriftarten haben, die alle Anwendungen verwenden sollten.
Das iPhone geerbt, dass eine abgespeckte Version von MacOS X. Ich bin mir nicht sicher, wie gründlich das Sandboxing auf iPhone-Apps ist diese Hinsicht. Es könnte möglich sein, einen Weg durch das System zu finden, wenn Sie die richtigen Schlüssel für Domains und Werte kennen.
Sicher, Apple rät dringend davon ab, vertrauliche Informationen in den Benutzereinstellungen zu behalten.
- 1. können meine Programme auf mehr als 4 GB Speicher zugreifen?
- 2. Eingabe in andere Programme [C/C++]
- 3. SetWindowsHooks, um andere Programme zu haken
- 4. Andere Programme in Haskell ausführen/Lineares Programmierpaket
- 5. Konsole zeigt nicht alle meine Programme
- 6. Wie profile ich meine Perl-Programme?
- 7. Warum können meine Socket-Programme nicht mit dem Internet verbunden werden?
- 8. Speicherzugriffsmonitor für c-Programme
- 9. Android SDK-Emulator führt meine Programme nicht aus?
- 10. Können meine Benutzer meine dynamische SQL injizieren?
- 11. Wie hakt ich in andere Programme in Windows ein?
- 12. Wie mache ich ein Menü, bevor meine drei Programme starten
- 13. Meine erstellten Programme werden als Virus auf anderen Computern erkannt
- 14. Verlangsamt die Verwendung von Delegaten meine .NET-Programme?
- 15. Lex und Yacc Programme können nicht kompiliert werden
- 16. Können wir das Typsystem nutzen, um Programme sicherer zu machen?
- 17. Gibt es Programme, die eine instabile Netzwerkverbindung simulieren können?
- 18. Können Benutzer die Serverseite node.js lesen?
- 19. Wie können Sie Textdateien lesen?
- 20. textConnection Äquivalent, die lesen können
- 21. Anfänger C-Programme
- 22. Welche Programme erzeugen Grammatikgraphen?
- 23. Können IDE-Code-Vorlagen meine Produktivität steigern?
- 24. MySQL GUI-Programme
- 25. Verknüpfungen wie Programme ausführen
- 26. Eingabe in Netwire-Programme
- 27. Beständige Hashtabelle für Ruby-Programme?
- 28. Ajax lesen können JSON POST Daten nicht
- 29. Magento - Benutzer können andere Daten sehen
- 30. können andere Eigenschaft in $ scope.gridOptions.columnDefs sein
Gute Frage. Ich weiß das nicht von ganz oben und ich sollte es tun. – TechZen
Unabhängig davon, ob sie können oder nicht, sollten Sie das Passwort nicht im Klartext speichern. –