在基本資安檢測基準中,也包含與 App 備份資料相關的測項如下:
4.1.2.3.14. 行動裝置作業系統的備份資料中不應存有行動應用程式的敏感性資料
雖然此測項的技術要求十分明確,目的在於確保備份檔中未包含敏感性資料,但由於 Android 和 iOS 在備份機制上的特性不同,因此有必要加以說明。
以 Android 為例,官方開發者網站已說明其備份機制的特性(圖 1)。若在 App 的設定檔中將 android:allowBackup 屬性設為 false,就無法透過 adb backup 的方式取得備份資料;反之,若可進行備份,則需檢查備份檔中是否包含敏感性資料。
android:allowBackup
false
adb backup
▲ 圖 1
至於 iOS,與 Android 不同,其是否備份 App 資料並非透過設定檔中的屬性來判斷,而是須在程式碼中設定以下兩個屬性:
NSURLIsExcludedFromBackupKey
CFURLIsExcludedFromBackupKey
用以排除特定檔案或資料夾被備份(程式碼範例見圖 2)。
▲ 圖 2
當這些屬性設定完成後,無論是 iTunes 備份或 iCloud 備份,皆會跳過這些被標記的檔案或資料夾,不會將其納入備份範圍之內。
在基本資安檢測基準中,也包含與 App 備份資料相關的測項如下:
4.1.2.3.14. 行動裝置作業系統的備份資料中不應存有行動應用程式的敏感性資料
雖然此測項的技術要求十分明確,目的在於確保備份檔中未包含敏感性資料,但由於 Android 和 iOS 在備份機制上的特性不同,因此有必要加以說明。
以 Android 為例,官方開發者網站已說明其備份機制的特性(圖 1)。若在 App 的設定檔中將
android:allowBackup屬性設為false,就無法透過adb backup的方式取得備份資料;反之,若可進行備份,則需檢查備份檔中是否包含敏感性資料。▲ 圖 1
至於 iOS,與 Android 不同,其是否備份 App 資料並非透過設定檔中的屬性來判斷,而是須在程式碼中設定以下兩個屬性:
NSURLIsExcludedFromBackupKeyCFURLIsExcludedFromBackupKey用以排除特定檔案或資料夾被備份(程式碼範例見圖 2)。
▲ 圖 2
當這些屬性設定完成後,無論是 iTunes 備份或 iCloud 備份,皆會跳過這些被標記的檔案或資料夾,不會將其納入備份範圍之內。
近期文章