App 備份功能在雙平台的特性不同
在行動應用程式開發中,備份功能是一個常被忽略但非常重要的安全考量。iOS 與 Android 兩大平台在備份機制上有著顯著的差異,開發者必須了解這些差異才能正確保護使用者的敏感資料。
iOS 備份機制
iOS 系統提供兩種備份方式:iCloud 備份和 iTunes/Finder 備份。預設情況下,App 的資料會被包含在備份中,除非開發者明確將特定檔案標記為不可備份。
- 使用
NSURLIsExcludedFromBackupKey可以排除特定檔案 - Keychain 資料有額外的保護等級設定
- 加密備份會保護大部分敏感資料
Android 備份機制
Android 系統從 6.0 版本開始支援自動備份功能。開發者可以透過 AndroidManifest.xml 中的設定來控制備份行為。
android:allowBackup屬性控制是否允許備份- 可使用
backup_rules.xml精細控制備份內容 - 建議敏感資料存放在
no_backup目錄
安全建議
為確保應用程式的安全性,我們建議開發者採取以下措施:
- 明確評估哪些資料需要備份,哪些應該排除
- 敏感資料如密碼、Token 等絕對不應該被備份
- 使用平台提供的安全儲存機制(如 iOS Keychain、Android Keystore)
- 定期進行資安檢測以確保備份設定正確