المكاسب:
- القدرة على طلب الأذونات مع التبرير والسياق وسيناريو الرفض باستخدام مبدأ الامتياز الأقل
- القدرة على تخزين البيانات الحساسة المشفرة باستخدام Keychain/Keystore، وتطبيق تقليل البيانات والتحكم في ميل الذكاء الاصطناعي لإضافة الكثير من الأذونات
- القدرة على إدارة تدفق بيانات المستخدم إلى السحابة أو خدمة الذكاء الاصطناعي كقرار يتعلق بالخصوصية، والحصول على موافقة المستخدم، واستخدام تقنيات الأمان فقط للأغراض الدفاعية المصرح بها
يعمل تطبيق الهاتف المحمول على الجهاز الأكثر خصوصية للمستخدم: فهو يعرف موقعه وجهات الاتصال والصور والبيانات الصحية والميكروفون. هذا الوصول هو قوة عظيمة، والقوة تعني المسؤولية. الخصوصية والأمان ليسا "ميزة إضافية" في تطوير الأجهزة المحمولة، بل مبدأ منسوج في البنية منذ البداية؛ وهذا ما يسمى الخصوصية حسب التصميم. علاوة على ذلك، فإن هذا ليس خيارًا أخلاقيًا فحسب، بل إنه التزام قانوني (KVKK، وGDPR) والتزام بالمتجر (App Store وGoogle Play). في هذه الوحدة، سوف نتعلم كيفية طلب الأذونات بشكل صحيح ومعالجة البيانات بشكل آمن واستخدام الذكاء الاصطناعي كمساعد في هذا المجال وحماية أنفسنا من فخاخه. هناك مشكلة إضافية حاسمة في سياق الذكاء الاصطناعي: انتقال بيانات المستخدم إلى نماذج الذكاء الاصطناعي (خاصة السحابة) هو قرار يتعلق بالخصوصية في حد ذاته.
فن طلب الإذن: أقل الامتيازات
المبدأ الأساسي للأمن هو أقل الامتيازات (عدم طلب امتيازات أكثر مما تتطلبه الوظيفة). يجب أن يطلب تطبيقك فقط الإذن الذي يحتاجه حقًا، في الوقت الذي يحتاج إليه. إذا لم تكن هناك ميزة الكاميرا، فلن يتم طلب إذن الكاميرا؛ إذا كان الموقع مطلوبًا فقط عندما تكون الخريطة مفتوحة، فسيكون إذن "أثناء الاستخدام" كافيًا، وليس "دائمًا". تتسبب الأذونات المفرطة في ضرر ثلاثي: فهي تقوض ثقة المستخدم، وتؤدي إلى رفض المتجر، وتزيد من خطر تسرب البيانات.
التوقيت المناسب وشرح طلب الإذن أمر بالغ الأهمية. اطلب من المستخدم الإذن في السياق وبتبرير، مثل "يلزم الوصول إلى الكاميرا لمسح إيصالك ضوئيًا". يتطلب iOS هذا الوصف في Info.plist؛ الوصف الفارغ أو المضلل هو رفض المتجر.
نوع الإذن
نهج سيء
نهج جيد
توقيت
اطلب كل شيء عند الإطلاق
المطالبة عند استخدام الميزة
النطاق
"الموقع دائمًا"
"الموقع أثناء الاستخدام"
الوصف
فارغة أو عامة
مبرر ملموس ومحدد
حالة الرفض
تعطل/تعطل التطبيق
يرجى تقديم البدائل
نصيحة: يجب أن يكون تطبيقك قادرًا على الاستمرار في التشغيل عند رفض الإذن. إذا رفض المستخدم الكاميرا، فاعرض خيار "تسجيل الدخول اليدوي". يعد فرض "السماح به وإلا فلن يعمل التطبيق" بمثابة تجربة سيئة ومشكلة في المتجر. اسأل دائمًا عن سيناريو الرفض عند طباعة رمز الإذن إلى الذكاء الاصطناعي.
الموافقة ورمز الخصوصية مع الذكاء الاصطناعي: الاعتبارات
يقوم الذكاء الاصطناعي بإنشاء تعليمات برمجية لطلب الإذن بسرعة، ولكن لديه مأزق نموذجي. أولاً، إضافة أذونات أكثر من اللازم: الموقع، يمكن لجهات الاتصال وضع أذونات التخزين بشكل مجمّع "في حالة حدوث ذلك". ثانيًا، تخطي سيناريو الرفض: فقط اكتب الحالة "مسموح به" وتجاهل الرفض. لكل تصريح يتم إنشاؤه، سيتم سؤالك "هل هذا ضروري حقًا؟" و"ماذا يحدث إذا تم الرفض؟" اطرح أسئلتك.
تحذير: قد يقوم نموذج التعليمات البرمجية الذي تم إنشاؤه بواسطة الذكاء الاصطناعي بتخزين بيانات المستخدم دون تشفير أو نقلها بشكل غير آمن. يجب الاحتفاظ بالبيانات الحساسة (كلمة المرور والصحة والمالية) في مخزن آمن على الجهاز (Keychain - iOS، Keystore - Android؛ منطقة قبو مشفرة لنظام التشغيل) ونقلها على الشبكة عبر اتصال مشفر (HTTPS/TLS). لا يقوم الذكاء الاصطناعي بذلك دائمًا بشكل عفوي؛ اسأل بوضوح وتحقق.
تقليل البيانات وإرسالها إلى الذكاء الاصطناعي
البيانات التي لا تجمعها لا يمكن أن تتسرب. يعد تقليل البيانات (جمع البيانات المطلوبة فعليًا فقط) أقوى أداة للخصوصية. في ميزات الذكاء الاصطناعي، يعد هذا المبدأ ذا أهمية مضاعفة: عند إرسال البيانات إلى LLM سحابية أو خدمة ذكاء اصطناعي خارجية، تكون هذه البيانات خارجة عن سيطرتك. قبل إرسال الملاحظة الصحية للمستخدم أو محتوى المحادثة أو المعلومات الشخصية إلى السحابة، اطرح ثلاثة أسئلة: (1) هل هذه البيانات ضرورية حقًا؟ (2) هل يمكن معالجتها على الجهاز؟ (3) إذا كان سيتم إرساله، فهل يعرفه المستخدم ويوافق عليه؟ من المتطلبات القانونية والأخلاقية إبلاغ المستخدم بوضوح بأن بياناته ستنتقل إلى إحدى خدمات الذكاء الاصطناعي.
الاستخدام الآمن والتركيز الدفاعي
تحذير من منظور تكنولوجيا المعلومات والأمن: التقنيات المستفادة في هذه الوحدة مخصصة للاستخدام المصرح به والدفاعي فقط. من المشروع اختبار أمان التطبيق الخاص بك، وحماية بيانات المستخدم، وإغلاق نقاط الضعف. إن إجراء هندسة عكسية لتطبيق شخص آخر دون إذن، أو جمع بيانات المستخدم دون موافقة، أو استخدام الذكاء الاصطناعي لإنشاء برامج ضارة هو أمر غير قانوني وغير أخلاقي. عند طلب المساعدة الأمنية من الذكاء الاصطناعي، ابق دائمًا ضمن إطار الدفاع عن نظامك الخاص.
ثلاث حالات صغيرة
الحالة 1 - رفض الإجازة الزائدة. طلب تطبيق ملاحظة أذونات الكاميرا والميكروفون والموقع والاتصال عند بدء التشغيل باستخدام الكود الذي ينتجه الذكاء الاصطناعي. رفض Google Play الإصدار، مشيرًا إلى "أذونات الوظيفة غير ذات الصلة". تمت الموافقة على الإصدار عندما أصدر الفريق فقط إذن التخزين الذي تم استخدامه بالفعل. الدرس المستفاد: كل إجازة إضافية هي مخاطرة.
الحالة 2 - التخزين بدون كلمة مرور. يقوم أحد التطبيقات الصحية بتخزين قياسات المستخدم في ملف نصي عادي كما في مثال الذكاء الاصطناعي. ووجد التدقيق الأمني أن أي شخص حصل على الجهاز يمكنه قراءة جميع البيانات الصحية. تم نقل البيانات إلى وحدة تخزين مشفرة باستخدام Keystore/Keychain. الدرس المستفاد: تظل البيانات الحساسة مشفرة دائمًا.
الحالة 3 - الدفع غير المعلن نحو السحابة. كان أحد التطبيقات يرسل الملاحظات اليومية للمستخدمين إلى سحابة LLM لتلخيصها، لكنه لم يخبر المستخدم. وعندما تم الإبلاغ عن ذلك في الصحافة، كان هناك فقدان للثقة والتدقيق القانوني. أضاف الفريق إشعارًا وتأكيدًا واضحين، بالإضافة إلى خيار على الجهاز. الدرس المستفاد: يجب أن يعرف المستخدم ويتأكد من أن البيانات ستذهب إلى الذكاء الاصطناعي.
موجه ضعيف / موجه قوي
المطالبة الضعيفة: "طلب إذن الموقع".
مطالبة قوية: "اطلب إذن تحديد الموقع على نظام iOS/Swift مع مبدأ الامتيازات الأقل. - إذن "عند الاستخدام" فقط، وليس "دائمًا" - وصف Info.plist: "لإظهار المتاجر القريبة" - إذا تم رفض الإذن: عرض خيار تحديد المدينة يدويًا، يتعطل - إذا تم رفض الإذن من قبل، فأعد التوجيه إلى الإعدادات، لا تضيف أذونات أكثر من اللازم. اكتب مسار الرفض أيضًا."
قوالب قابلة للنسخ
نموذج طلب الإذن: "اطلب إذن [نوع الإذن] لـ [النظام الأساسي]. - الحد الأدنى من النطاق (عند الاستخدام/حسب الحاجة) - في السياق، مع شرح مسبب - بديل مهذب في حالة الرفض، لا يتعطل أبدًا - أعط إدخال Info.plist / Manifest أيضًا لا تضيف أذونات إضافية؛ قم بتبرير كل إذن."
قالب تدقيق الأذونات: "تحقق من الأذونات التي يطلبها تطبيقي: [قائمة الأذونات + الخصائص]. لكل إذن: هل هناك حاجة إليه حقًا؟ هل سيكون النطاق الأضيق كافيًا؟ هل سيؤدي ذلك إلى رفض المتجر؟ ضع علامة غير ضرورية."
قالب آمن لتخزين البيانات: "تخزين البيانات الحساسة ([النوع]) بشكل آمن لـ [النظام الأساسي]: - مشفرة باستخدام Keychain/Keystore - لا تحتفظ بها في الذاكرة لفترة طويلة غير ضرورية - لا تتسرب إلى السجلات والنسخ الاحتياطية، قم بتوفير التعليمات البرمجية وخطوات التحقق."
نموذج لإرسال البيانات إلى الذكاء الاصطناعي: "أفكر في إرسال البيانات التالية إلى خدمة الذكاء الاصطناعي السحابية: [البيانات]. التقييم: هل هي ضرورية حقًا؟ هل يمكن معالجتها على الجهاز؟ إذا تم إرسالها، ما هي الحقول التي يجب إخفاؤها؟ كيف يجب الحصول على موافقة المستخدم؟ التوصية بالتصميم الأكثر أمانًا من حيث الخصوصية."
الأخطاء الشائعة
- طلب الإذن أكثر من اللازم. الخطر الثلاثي المتمثل في الثقة والموافقة على المتجر والأمان.
- طلب الأذونات بكميات كبيرة عند بدء التشغيل. يتم رفض طلب الإذن بدون سياق؛ اطلب الميزة على الفور.
- عدم كتابة سيناريو الرفض. يعد تعطل التطبيق عند رفض الإذن أمرًا سيئًا ومرفوضًا.
- تخزين البيانات الحساسة بدون كلمة مرور. يجب الاحتفاظ بالصحة والتمويل وكلمات المرور في مكان آمن.
- إرسال البيانات إلى السحابة/الذكاء الاصطناعي دون إبلاغ المستخدم. المخالفة القانونية والأخلاقية؛ مطلوب الإخطار والموافقة.
- الاستخدام غير المصرح به للتقنيات الأمنية. إنه مشروع فقط للأغراض الدفاعية على نظامك الخاص.
باختصار
الخصوصية والأمان مصممان منذ البداية، ولا تتم إضافتهما لاحقًا. المبدأ الأساسي هو أقل الامتيازات: اطلب فقط الإذن الضروري، عند الضرورة، مع التبرير، وقدم بديلاً مهذبًا في حالة الرفض. يتم تخزين البيانات الحساسة في مخزن مشفر ويتم نقلها عبر اتصال مشفر. إن تقليل البيانات هو أقوى حماية: فالبيانات التي لا تجمعها لا يمكن أن تتسرب. يعد إرسال البيانات إلى الذكاء الاصطناعي، وخاصة إلى السحابة، قرارًا يتعلق بالخصوصية في حد ذاته؛ يتم التشكيك في ضرورته، وإذا أمكن، يفضل استخدامه على الجهاز، ويتم إبلاغ المستخدم والحصول على موافقته. يتم فحص كل كود يتم إنتاجه وفقًا لميول الذكاء الاصطناعي لإضافة أذونات زائدة وتخزينها بشكل غير آمن. تُستخدم التقنيات الأمنية للأغراض المصرح بها والدفاعية فقط.
مهمة التطبيق
أنشئ قائمة بالأذونات التي يطلبها تطبيق (مشروعك الخاص أو مشروع وهمي) واطلب من الذكاء الاصطناعي التحقق من الأذونات غير الضرورية أو التي تتجاوز الحدود باستخدام "قالب تدقيق الأذونات". قم بتحسين إذن واحد على الأقل أو إزالته واكتب سيناريو الرفض لهذه الميزة. بالإضافة إلى ذلك، إذا كنت ترسل بيانات المستخدم إلى السحابة، فحدد التصميم الأكثر أمانًا باستخدام "قالب قرار إرسال البيانات إلى الذكاء الاصطناعي" واكتب نص موافقة المستخدم.
قائمة مرجعية
- [ ] لقد طلبت كل إذن مع مبرر، مع مبدأ الامتياز الأقل.
- [ ] لقد طلبت الأذونات في السياق، في وقت الميزة، وليس بشكل جماعي عند الإطلاق
- [ ] لقد قمت بكتابة نص رفض لكل إذن، دون أي أعطال
- [ ] لقد قمت بتخزين بيانات حساسة مشفرة باستخدام Keychain/Keystore
- [ ] لقد قمت بتقليل البيانات التي تنتقل إلى السحابة/الذكاء الاصطناعي وأضفت موافقة المستخدم
- [ ] لقد استخدمت تقنيات الأمان على نظامي فقط لأغراض دفاعية