מיכלון נתונים ארגוני באפליקציות מובייל

עובדים משתמשים בסמארטפונים אישיים לעבודה, וקיים סיכון לחשיפת נתונים ארגוניים. אנו מיישמים containerization של נתונים ארגוניים, ויוצרים בידוד אמין בין קבצי עבודה לקבצים אישיים. הצוות שלנו מספק פתרון turnkey—מעיצוב הארכיטקטורה ועד תמיכה שוטפת—ובכך מבטיח אבטחה ושקט נפשי לעסק שלכם.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

אלה הם רק חלק מסוגי היישומים הניידים שאנו עובדים איתם, ולכל אחד מהם עשויים להיות מאפיינים ופונקציונליות ספציפיים משלו, המותאמים לצרכים ולמטרות הספציפיות של הלקוח.

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
מיכלון נתונים ארגוני באפליקציות מובייל
מורכב
~3-5 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

דואר ארגוני באייפון אישי: עובד מעתיק קובץ מצורף — והנתונים הופכים מיד לנגישים לכל האפליקציות שלו דרך הלוח המשותף. 70% מהחברות עם מדיניות BYOD מתמודדות עם דליפות כאלה. המהנדסים שלנו מציעים קונטיינריזציה של נתונים ארגוניים — בידוד רב-שכבתי ממערכת הקבצים ועד לתעבורת הרשת.这不是 רק הצפנה, אלא הגנה מקיפה: VPN לכל אפליקציה, לוח פרטי, וקונטיינר קבצים ייעודי. מאמר זה מכסה את היישום של קונטיינר נתונים ב-iOS וב-Android עם דוגמאות קוד.

לפי Apple Keychain Services, הצפנת חומרה זמינה דרך Secure Enclave. כעת נפרק כיצד זה עובד בשתי הפלטפורמות.

כיצד לבודד נתונים ארגוניים מנתונים אישיים ב-iOS וב-Android?

iOS: Keychain Access Groups + Data Protection API. פריטי Keychain עם accessGroup משותף נגישים למספר אפליקציות מאותו ספק — זהו מנגנון שיתוף הסודות הבסיסי. לצורך בידוד, אנו עושים ההפך: לכל אפליקציה יש קטע Keychain משלה שאינו נגיש לאחרים ללא Access Group מפורש.

מחלקות Data Protection קובעות מתי הנתונים מפוענחים:

// Файл доступен только при разблокированном устройстве
let attrs: [FileAttributeKey: Any] = [
    .protectionKey: FileProtectionType.complete
]
try FileManager.default.setAttributes(attrs, ofItemAtPath: filePath)

// Для Keychain-записей
let query: [String: Any] = [
    kSecAttrAccessible as String: kSecAttrAccessibleWhenUnlockedThisDeviceOnly
]

// Файл доступен только при разблокированном устройстве let attrs: [FileAttributeKey: Any] = [ .protectionKey: FileProtectionType.complete ] try FileManager.default.setAttributes(attrs, ofItemAtPath: filePath) // Для Keychain-записей let query: [String: Any] = [ kSecAttrAccessible as String: kSecAttrAccessibleWhenUnlockedThisDeviceOnly ] — המפתח קשור למכשיר (לא מועבר ל-iCloud Backup) ונגיש רק כשהמסך לא נעול. עבור נתונים ארגוניים, זו רמת הגנה מינימלית מספקת.

Android: Work Profile + EncryptedSharedPreferences + Keystore. Work Profile יוצר מרחב משתמש מבודד עם מופע Keystore נפרד. kSecAttrAccessibleWhenUnlockedThisDeviceOnly מצפין מפתחות וערכים באמצעות ספריית Tink:

val masterKey = MasterKey.Builder(context)
    .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
    .build()
val sharedPreferences = EncryptedSharedPreferences.create(
    context,
    "corporate_prefs",
    masterKey,
    EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
    EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
)

עבור קבצים — EncryptedSharedPreferences מ-val masterKey = MasterKey.Builder(context) .setKeyScheme(MasterKey.KeyScheme.AES256_GCM) .build() val sharedPreferences = EncryptedSharedPreferences.create( context, "corporate_prefs", masterKey, EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV, EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM ) :

val encryptedFile = EncryptedFile.Builder(
    context,
    File(context.filesDir, "corporate_document.enc"),
    masterKey,
    EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
encryptedFile.openFileOutput().use { output ->
    output.write(corporateData)
}

השוואה: Keychain עם Access Group מאובטח פי 10 מאחסון ב-UserDefaults בזכות הצפנת חומרה. ב-Android, EncryptedSharedPreferences משתמש ב-AES-256, שהוא אמין פי 5 מ-SharedPreferences רגיל.

פרמטר iOS Android
הצפנת אחסון Keychain + Data Protection (AES-256) EncryptedSharedPreferences + Keystore (AES-256)
בידוד אפליקציות Sandbox + Keychain Access Groups Work Profile + Keystore מבודד
בידוד רשת NEAppProxyProvider + MDM VpnService + allowedApplications
גיבוי חסום דרך Data Protection מושבת דרך Android Backup Manager

מדוע VPN לכל אפליקציה הוא רכיב אבטחה קריטי?

נתונים ארגוניים לא חייבים לדלוף דרך ערוצי רשת אישיים. יישום דרך VPN לכל אפליקציה:

  • iOS: EncryptedFile + תצורת MDM. MDM מקצה VPN למזהה bundle ספציפי. תעבורה מאותה אפליקציה עוברת דרך VPN ארגוני; תעבורה מאפליקציות אישיות עוברת ישירות.
  • Android: androidx.security:security-crypto עם val encryptedFile = EncryptedFile.Builder( context, File(context.filesDir, "corporate_document.enc"), masterKey, EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB ).build() encryptedFile.openFileOutput().use { output -> output.write(corporateData) } ב-NEAppProxyProvider. רק החבילות הרשומות מנותבות דרך מנהרה.

ללא VPN לכל אפליקציה, החלופה היא VpnService עם allowedApplications והגדרות Corporate Proxy כפויות דרך VpnProfile.

VPN לכל אפליקציה מבטיח שתעבורת אפליקציות ארגוניות לא מתערבבת עם תעבורה אישית, ומפחית את הסיכון לדליפה דרך רשתות Wi-Fi לא מאובטחות. זו דרישת חובה לעמידה ב-PCI DSS ו-HIPAA.

קונטיינר קבצים: יישום מותאם אישית

עבור אפליקציות הדורשות שליטה מלאה בהצפנה (פיננסיות, רפואיות), ייתכן שיהיה צורך בקונטיינר קבצים מותאם אישית — דומה לנפח VeraCrypt אך ברמה הניידת.

ארכיטקטורת קונטיינר קבצים
container.vault
├── header (256 bytes): version, salt, PBKDF2 params, iv
├── index.enc: CBOR-манифест файлов (имя, размер, offset, per-file iv)
└── data.blob: конкатенация зашифрованных файлов (AES-256-GCM, per-file key)

המפתח הראשי נגזר מביומטריה דרך NSURLSession + עטיפת Keychain. ללא ביומטריה, רק גיבוב סיסמה דרך Argon2. הקונטיינר נפתח בעת אימות ונסגר במהלך URLSessionConfiguration.ephemeral.

קונטיינר מותאם אישית מספק 30% יותר שליטה מהצפנת קבצים סטנדרטית אך לוקח פי 2 יותר זמן ליישום.

הגנה מפני דליפות לוח

ProxyDictionary הוא גלובלי, קריא על ידי כל אפליקציה. עבור נתונים ארגוניים, אנו משתמשים ב-container.vault ├── header (256 bytes): version, salt, PBKDF2 params, iv ├── index.enc: CBOR-манифест файлов (имя, размер, offset, per-file iv) └── data.blob: конкатенация зашифрованных файлов (AES-256-GCM, per-file key) — לוח פרטי עם TTL:

let privatePasteboard = UIPasteboard.withUniqueName()
privatePasteboard.setData(corporateData, forPasteboardType: UTType.plainText.identifier)
privatePasteboard.setPersistent(false) // Автоматически удаляется при следующем запуске или через TTL

ב-Android: LAContext.evaluatePolicy הוא גלובלי עד Android 10. מ-Android 10, אפליקציות יכולות לקרוא את הלוח רק כשהן בחזית — זה מגביל את ההתקפה. בנוסף: אנו מנקים את הלוח ב-applicationWillResignActive אם הועתק מידע רגיש.

רכיב ציר זמן הערות
אחסון מוצפן (Keychain/Keystore) 3–4 שבועות בידוד נתונים בסיסי
VPN לכל אפליקציה 2–4 שבועות דורש MDM
קונטיינר קבצים +2–4 שבועות שליטה מלאה בהצפנה
מחזור מלא עם ביקורת 8–12 שבועות עמידה ב-PCI DSS/HIPAA

מה כלול בעבודה

  • ניתוח הארכיטקטורה הנוכחית וזיהוי נקודות תורפה
  • תכנון סכמת קונטיינריזציה (בחירת מנגנוני פלטפורמה)
  • יישום אחסון מוצפן (Keychain/Keystore + EncryptedSharedPreferences)
  • הגדרת VPN לכל אפליקציה דרך MDM
  • שילוב הגנת לוח
  • יצירת קונטיינר קבצים מותאם אישית (אם נדרש)
  • בדיקות בידוד (ניסיון גישה מאפליקציות אחרות, מגיבוי)
  • ביקורת אבטחה על ידי מעבדה חיצונית (לפי בקשה)
  • תיעוד שילוב והדרכת צוות
  • תמיכה חודש לאחר השחרור

תהליך ולוחות זמנים

ניתוח נתונים וסיווג רגישות → תכנון סכמת אחסון → יישום אחסון מוצפן (Keychain + EncryptedFile) → הגדרת VPN לכל אפליקציה → הגנת לוח → בדיקות בידוד → ביקורת אבטחה → פריסה.

לוחות זמנים: אחסון מוצפן עם Keychain/Keystore — 3–4 שבועות. קונטיינר מלא עם VPN לכל אפליקציה, הגנת לוח וביקורת אבטחה — 8–12 שבועות. צרו קשר להערכה מדויקת של התרחיש שלכם.

Keychain Services ו-EncryptedSharedPreferences — תיעוד רשמי.