Secure store
Token akses, refresh token, atau kunci API tidak boleh disimpan sebagai teks biasa di
AsyncStorage jika risiko pencurian data perlu diminimalkan. Secure store memanfaatkan
Keychain (iOS) dan Keystore/EncryptedSharedPreferences (Android, tergantung konfigurasi).
Kapan memakai secure store
- Kredensial sesi OAuth / JWT jangka panjang.
- Secret kecil yang tidak boleh muncul di log atau backup tidak terenkripsi.
Batasan
- Kapasitas biasanya kecil — bukan untuk blob atau daftar besar.
- Operasi async; hindari blocking UI saat baca pertama kali.
- Di simulator/emulator perilaku bisa berbeda; selalu uji di perangkat nyata.
Di Expo
expo-secure-store umum dipakai untuk menyimpan string pendek. Gabungkan dengan alur login
Anda: setelah sukses, simpan token; saat logout, hapus entri terkait.
import * as SecureStore from "expo-secure-store";
await SecureStore.setItemAsync("access_token", token);
const savedToken = await SecureStore.getItemAsync("access_token");
// logout
await SecureStore.deleteItemAsync("access_token");
Untuk contoh integrasi penyimpanan umum di proyek template, lihat juga
Storage.js / AsyncStorage (bisa dipetakan: data publik di
AsyncStorage, secret di secure store).