iOS SDK - 脱敏处理敏感数据
UI 组件
Section titled UI 组件脱敏后的视图会在生成的回放中被模糊处理。你可以添加任意 UI 组件,一旦它不再显示在屏幕上,就会被自动移除(以节省内存)。
SwiftUI
Section titled SwiftUI只需为目标组件添加 .sensitive() 修饰符
import ORTracker
Text("Very important sensitive text")
.sensitive()
UIKit
Section titled UIKitimport ORTracker
ORTracker.shared.addIgnoredView(view)
导出了两个键用于自动裁剪请求/响应数据:ignoredKeys 用于请求体,ignoredHeaders 用于请求头。请求和响应都会被脱敏处理,但请求体只有在它是有效的 JSON 时才会受到影响。
只需赋值一个你希望脱敏的字符串列表:
let networkListener = NetworkListener()
networkListener.ignoredHeaders = ["mySecretToken"]
networkListener.ignoredKeys = ["password"]
也可以在将响应数据传递给监听器之前对其进行修改:
// ... 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)