79 lines
3.2 KiB
Dart
79 lines
3.2 KiB
Dart
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
|
|
|
/// Classe pour gérer le stockage sécurisé dans l'application.
|
|
/// Utilise FlutterSecureStorage pour stocker, lire et supprimer des données sensibles.
|
|
class SecureStorage {
|
|
// Instance de FlutterSecureStorage pour gérer le stockage sécurisé
|
|
final FlutterSecureStorage _storage = const FlutterSecureStorage();
|
|
|
|
/// Écrit une valeur dans le stockage sécurisé avec la clé spécifiée.
|
|
Future<void> write(String key, String value) async {
|
|
print("Écriture dans le stockage sécurisé : clé = $key, valeur = $value");
|
|
await _storage.write(key: key, value: value);
|
|
print("Écriture réussie pour la clé : $key");
|
|
}
|
|
|
|
/// Lit une valeur depuis le stockage sécurisé en fonction de la clé spécifiée.
|
|
Future<String?> read(String key) async {
|
|
print("Lecture dans le stockage sécurisé pour la clé : $key");
|
|
final value = await _storage.read(key: key);
|
|
print("Valeur lue pour la clé $key : $value");
|
|
return value;
|
|
}
|
|
|
|
/// Supprime une entrée dans le stockage sécurisé pour la clé spécifiée.
|
|
Future<void> delete(String key) async {
|
|
print("Suppression dans le stockage sécurisé pour la clé : $key");
|
|
await _storage.delete(key: key);
|
|
print("Suppression réussie pour la clé : $key");
|
|
}
|
|
|
|
/// Sauvegarde l'identifiant utilisateur dans le stockage sécurisé.
|
|
Future<void> saveUserId(String userId) async {
|
|
print("Sauvegarde de l'userId dans le stockage sécurisé : $userId");
|
|
await write('user_id', userId);
|
|
print("Sauvegarde réussie de l'userId.");
|
|
}
|
|
|
|
/// Récupère l'identifiant utilisateur depuis le stockage sécurisé.
|
|
Future<String?> getUserId() async {
|
|
print("Récupération de l'userId depuis le stockage sécurisé.");
|
|
return await read('user_id');
|
|
}
|
|
|
|
/// Sauvegarde le nom d'utilisateur dans le stockage sécurisé.
|
|
Future<void> saveUserName(String userName) async {
|
|
print("Sauvegarde du userName dans le stockage sécurisé : $userName");
|
|
await write('user_name', userName);
|
|
print("Sauvegarde réussie du userName.");
|
|
}
|
|
|
|
/// Récupère le nom d'utilisateur depuis le stockage sécurisé.
|
|
Future<String?> getUserName() async {
|
|
print("Récupération du userName depuis le stockage sécurisé.");
|
|
return await read('user_name');
|
|
}
|
|
|
|
/// Sauvegarde le prénom de l'utilisateur dans le stockage sécurisé.
|
|
Future<void> saveUserLastName(String userLastName) async {
|
|
print("Sauvegarde du userLastName dans le stockage sécurisé : $userLastName");
|
|
await write('user_last_name', userLastName);
|
|
print("Sauvegarde réussie du userLastName.");
|
|
}
|
|
|
|
/// Récupère le prénom de l'utilisateur depuis le stockage sécurisé.
|
|
Future<String?> getUserLastName() async {
|
|
print("Récupération du userLastName depuis le stockage sécurisé.");
|
|
return await read('user_last_name');
|
|
}
|
|
|
|
/// Supprime toutes les informations utilisateur du stockage sécurisé.
|
|
Future<void> deleteUserInfo() async {
|
|
print("Suppression des informations utilisateur (userId, userName, userLastName).");
|
|
await delete('user_id');
|
|
await delete('user_name');
|
|
await delete('user_last_name');
|
|
print("Suppression réussie des informations utilisateur.");
|
|
}
|
|
}
|