iOS SDK - Nettoyer les données sensibles
Composants d’interface
Section titled Composants d’interfaceLes vues nettoyées seront floutées dans la relecture résultante. Vous pouvez ajouter n’importe quel composant d’interface et il sera automatiquement supprimé (pour préserver la mémoire) dès qu’il n’est plus à l’écran.
SwiftUI
Section titled SwiftUIAjoutez simplement le modificateur .sensitive() au composant souhaité
import ORTracker
Text("Very important sensitive text")
.sensitive()
UIKit
Section titled UIKitimport ORTracker
ORTracker.shared.addIgnoredView(view)
Requêtes réseau
Section titled Requêtes réseauDeux clés sont exportées pour découper automatiquement les données de la requête/réponse : ignoredKeys pour le corps et ignoredHeaders pour les en-têtes. La requête et la réponse seront toutes deux nettoyées, mais le corps ne sera affecté que s’il s’agit d’un JSON valide.
Attribuez simplement une liste de chaînes que vous souhaitez nettoyer :
let networkListener = NetworkListener()
networkListener.ignoredHeaders = ["mySecretToken"]
networkListener.ignoredKeys = ["password"]
Il est également possible de modifier les données de la réponse avant de les transmettre au listener :
// ... request
var sanitizedData
if let data = data {
do {
let json = try JSONSerialization.jsonObject(with: data, options: [])
sanitizedData = customSanitizeFunction(data)
print(json)
} catch {
print("Error deserializing JSON: \(error)")
}
}
networkListener.finish(response: response, data: sanitizedData)