iOS SDK - Sanitizar dados sensíveis
Componentes de UI
Section titled Componentes de UIAs views sanitizadas serão desfocadas no replay resultante. Você pode adicionar qualquer componente de UI, e ele será removido automaticamente (para preservar memória) assim que não estiver mais na tela.
SwiftUI
Section titled SwiftUIBasta adicionar o modificador .sensitive() ao componente desejado
import ORTracker
Text("Very important sensitive text")
.sensitive()
UIKit
Section titled UIKitimport ORTracker
ORTracker.shared.addIgnoredView(view)
Requisições de rede
Section titled Requisições de redeDuas chaves são exportadas para remover automaticamente dados da requisição/resposta: ignoredKeys para o corpo e ignoredHeaders para os cabeçalhos. Tanto a requisição quanto a resposta serão sanitizadas, mas o corpo só será afetado se for um JSON válido.
Basta atribuir uma lista de strings que você deseja sanitizar:
let networkListener = NetworkListener()
networkListener.ignoredHeaders = ["mySecretToken"]
networkListener.ignoredKeys = ["password"]
Também é possível alterar os dados da resposta antes de passá-los ao 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)
Tem dúvidas?
Section titled Tem dúvidas?Se você tiver alguma dúvida sobre este processo, fale conosco no nosso Slack .