`UserDefaults` este destinat exclusiv preferințelor ușoare de configurare ale utilizatorului (temă vizuală, flag-uri onboarding, sunete activate) fiind salvat necriptat într-un fișier plist. Pentru date sensibile (tokeni JWT, parole, chei de criptare), trebuie utilizat exclusiv `Apple Keychain Services` (sau wrapper-e moderne precum `SecItemAdd`), ce garantează criptarea hardware în Secure Enclave.
Securitatea Datelor Persistente Locale
Ghid critic pentru prevenirea stocării nesigure a credențialelor de autentificare.
// 1. Stocare setare necriptată în UserDefaults:
UserDefaults.standard.set(true, forKey: "is_dark_mode_enabled")
// 2. Stocare token sensibil în Apple Keychain (SecItemAdd):
let query: [String: Any] = [
kSecClass as String: kSecClassGenericPassword,
kSecAttrAccount as String: "authToken",
kSecValueData as String: tokenData,
kSecAttrAccessible as String: kSecAttrAccessibleAfterFirstUnlock
]
SecItemAdd(query as CFDictionary, nil)
Stăpânirea acestei funcționalități în Swift 6 asigură dezvoltarea unor aplicații native iOS și macOS performante, sigure la nivel de memorie și perfect integrate în ecosistemul modern Apple.
Întrebări & Exemple de Cod:
Stocare Locală: UserDefaults vs Apple Keychain pentru Parole Criptate în SwiftAi o nelămurire despre utilizarea comenzii
Stocare Locală: UserDefaults vs Apple Keychain pentru Parole Criptate în Swiftsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.