Κέρδη:
- Δυνατότητα αίτησης αδειών με αιτιολόγηση, πλαίσιο και σενάριο απόρριψης, χρησιμοποιώντας την αρχή του ελάχιστου προνομίου
- Δυνατότητα αποθήκευσης ευαίσθητων δεδομένων κρυπτογραφημένων με Keychain/Keystore, εφαρμογή ελαχιστοποίησης δεδομένων και έλεγχος της τάσης της τεχνητής νοημοσύνης να προσθέτει πάρα πολλά δικαιώματα
- Δυνατότητα διαχείρισης της ροής δεδομένων χρήστη στο cloud ή στην υπηρεσία τεχνητής νοημοσύνης ως απόφαση απορρήτου, λήψη συναίνεσης χρήστη και χρήση τεχνικών ασφαλείας μόνο για εξουσιοδοτημένους, αμυντικούς σκοπούς
Η εφαρμογή για κινητά λειτουργεί στην πιο ιδιωτική συσκευή του χρήστη: γνωρίζει την τοποθεσία, τις επαφές, τις φωτογραφίες, τα δεδομένα υγείας, το μικρόφωνό του. Αυτή η πρόσβαση είναι μεγάλη δύναμη και δύναμη σημαίνει ευθύνη. Το απόρρητο και η ασφάλεια δεν αποτελούν «πρόσθετο χαρακτηριστικό» στην ανάπτυξη κινητών τηλεφώνων, αλλά μια αρχή που ενσωματώνεται στην αρχιτεκτονική από την αρχή. Αυτό ονομάζεται απόρρητο από το σχεδιασμό. Επιπλέον, αυτή δεν είναι μόνο μια ηθική επιλογή, είναι νομική (KVKK, GDPR) και υποχρέωση καταστήματος (App Store, Google Play). Σε αυτήν την ενότητα, θα μάθουμε πώς να ζητάμε άδειες σωστά, να επεξεργαζόμαστε δεδομένα με ασφάλεια, να χρησιμοποιούμε την τεχνητή νοημοσύνη ως βοηθό σε αυτόν τον τομέα και να προστατευόμαστε από τις παγίδες της. Υπάρχει ένα πρόσθετο κρίσιμο ζήτημα στο πλαίσιο της τεχνητής νοημοσύνης: τα δεδομένα χρήστη που μεταφέρονται σε μοντέλα τεχνητής νοημοσύνης (ειδικά στο cloud) είναι μια απόφαση απορρήτου από μόνη της.
Η τέχνη του να ζητάς άδεια: ελάχιστο προνόμιο
Η βασική αρχή της ασφάλειας είναι το ελάχιστο προνόμιο (όχι να ζητάς περισσότερα προνόμια από όσα απαιτεί μια δουλειά). Η εφαρμογή σας θα πρέπει να ζητά μόνο την άδεια που χρειάζεται πραγματικά, τη στιγμή που τη χρειάζεται. Εάν δεν υπάρχει δυνατότητα κάμερας, δεν θα ζητηθεί άδεια κάμερας. Εάν η τοποθεσία απαιτείται μόνο όταν ο χάρτης είναι ανοιχτός, η άδεια "κατά τη χρήση" είναι επαρκής και όχι "πάντα". Οι υπερβολικές άδειες προκαλούν τριπλή βλάβη: υπονομεύει την εμπιστοσύνη των χρηστών, οδηγεί σε απόρριψη καταστήματος και μεγεθύνει τον κίνδυνο διαρροής δεδομένων.
Ο σωστός χρόνος και η εξήγηση της αίτησης για άδεια είναι κρίσιμης σημασίας. Ζητήστε από τον χρήστη άδεια στο πλαίσιο και με αιτιολόγηση, όπως "Απαιτείται πρόσβαση στην κάμερα για τη σάρωση της απόδειξής σας". Το iOS απαιτεί αυτήν την περιγραφή στο Info.plist. Η κενή ή παραπλανητική περιγραφή είναι απόρριψη καταστήματος.
Τύπος άδειας
κακή προσέγγιση
καλή προσέγγιση
χρονοδιάγραμμα
Ζητήστε όλα κατά την εκκίνηση
όταν χρησιμοποιείτε τη δυνατότητα
Πεδίο εφαρμογής
"Πάντα τοποθεσία"
"τοποθεσία κατά τη χρήση"
Περιγραφή
Κενό ή γενικό
Συγκεκριμένη, συγκεκριμένη αιτιολόγηση
κατάσταση απόρριψης
Σφάλματα εφαρμογής/κολλήματα
Ευγενικά προσφέρει εναλλακτικές λύσεις
Συμβουλή: Η εφαρμογή σας θα πρέπει να μπορεί να συνεχίσει να εκτελείται όταν δεν επιτρέπεται η άδεια. Εάν ο χρήστης απορρίψει την κάμερα, προσφέρετε μια επιλογή "μη αυτόματη σύνδεση". Η επιβολή του "επιτρέψτε το ή η εφαρμογή δεν θα λειτουργήσει" είναι ταυτόχρονα κακή εμπειρία και πρόβλημα καταστήματος. Να ζητάτε πάντα το σενάριο απόρριψης όταν εκτυπώνετε έναν κωδικό άδειας στο AI.
Κωδικός συναίνεσης και απορρήτου με AI: ζητήματα
Το AI δημιουργεί γρήγορα κώδικα που ζητά άδεια, αλλά έχει δύο τυπικές παγίδες. Πρώτον, προσθέτοντας περισσότερα δικαιώματα από όσα χρειάζεται: η τοποθεσία, οι επαφές μπορούν να βάλουν μαζικά δικαιώματα αποθήκευσης "για κάθε περίπτωση". Δεύτερον, παρακάμπτοντας το σενάριο απόρριψης: απλώς γράψτε την κατάσταση "επιτρέπεται" και αγνοήστε την απόρριψη. Για κάθε άδεια που δημιουργείται θα ερωτηθείτε "είναι πραγματικά απαραίτητο;" και "τι θα συμβεί αν απορριφθεί;" Κάντε τις ερωτήσεις σας.
Προσοχή: Το δείγμα κώδικα που δημιουργείται από το AI μπορεί να αποθηκεύει δεδομένα χρήστη χωρίς κρυπτογράφηση ή να τα μεταδίδει με ασφάλεια. Τα ευαίσθητα δεδομένα (κωδικός πρόσβασης, υγεία, οικονομικά) θα πρέπει να φυλάσσονται σε ασφαλή αποθήκευση στη συσκευή (Keychain — iOS, Keystore — Android, κρυπτογραφημένη περιοχή αποθήκευσης του λειτουργικού συστήματος) και να μεταδίδονται στο δίκτυο μέσω κρυπτογραφημένης σύνδεσης (HTTPS/TLS). Η τεχνητή νοημοσύνη δεν το κάνει πάντα αυτό αυθόρμητα. Ρωτήστε ξεκάθαρα και επαληθεύστε.
Ελαχιστοποίηση δεδομένων και αποστολή δεδομένων σε AI
Τα δεδομένα που δεν συλλέγετε δεν μπορούν να διαρρεύσουν. Η ελαχιστοποίηση δεδομένων (συλλέγοντας μόνο τα δεδομένα που πραγματικά χρειάζονται) είναι το πιο ισχυρό εργαλείο για την προστασία της ιδιωτικής ζωής. Στις δυνατότητες τεχνητής νοημοσύνης, αυτή η αρχή είναι διπλά σημαντική: κατά την αποστολή δεδομένων σε μια υπηρεσία cloud LLM ή εξωτερική υπηρεσία τεχνητής νοημοσύνης, αυτά τα δεδομένα είναι εκτός ελέγχου. Πριν στείλετε το σημείωμα υγείας, το περιεχόμενο συνομιλίας ή τις προσωπικές πληροφορίες ενός χρήστη στο cloud, κάντε τρεις ερωτήσεις: (1) Είναι πραγματικά απαραίτητα αυτά τα δεδομένα; (2) Μπορεί να υποβληθεί σε επεξεργασία στη συσκευή; (3) Εάν πρόκειται να σταλεί, το γνωρίζει και το εγκρίνει ο χρήστης; Είναι τόσο νομική όσο και ηθική απαίτηση να ενημερώνεται με σαφήνεια ο χρήστης ότι τα δεδομένα του πηγαίνουν σε μια υπηρεσία τεχνητής νοημοσύνης.
Ασφαλής χρήση και εστίαση στην άμυνα
Μια προειδοποίηση από την άποψη της πληροφορικής και της ασφάλειας: οι τεχνικές που μαθαίνονται σε αυτήν την ενότητα προορίζονται μόνο για εξουσιοδοτημένη και αμυντική χρήση. Είναι θεμιτό να ελέγχετε την ασφάλεια της δικής σας εφαρμογής, να προστατεύετε δεδομένα χρήστη και να κλείνετε ευπάθειες. Η αντίστροφη μηχανική της εφαρμογής κάποιου άλλου χωρίς άδεια, η συλλογή δεδομένων χρήστη χωρίς συναίνεση ή η χρήση τεχνητής νοημοσύνης για τη δημιουργία κακόβουλου λογισμικού είναι παράνομη και ανήθικη. Όταν ζητάτε βοήθεια από την τεχνητή νοημοσύνη για την ασφάλεια, παραμένετε πάντα στο πλαίσιο της υπεράσπισης του δικού σας συστήματος.
τρεις μίνι θήκες
Περίπτωση 1 — Υπερβολική άρνηση άδειας. Μια εφαρμογή σημείωσης ζήτησε άδειες κάμερας, μικροφώνου, τοποθεσίας και επαφής κατά την εκκίνηση με τον κωδικό που παράγεται από το AI. Το Google Play απέρριψε την κυκλοφορία, επικαλούμενη "άσχετα με τη λειτουργία άδειες". Η κυκλοφορία εγκρίθηκε όταν η ομάδα κυκλοφόρησε μόνο την άδεια αποθήκευσης που χρησιμοποιήθηκε στην πραγματικότητα. Μάθημα: κάθε επιπλέον άδεια είναι ένα ρίσκο.
Περίπτωση 2 — Αποθήκευση χωρίς κωδικό πρόσβασης. Μια εφαρμογή υγείας αποθήκευσε τις μετρήσεις των χρηστών σε ένα αρχείο απλού κειμένου όπως στο παράδειγμα AI. Ένας έλεγχος ασφαλείας διαπίστωσε ότι όποιος έλαβε τη συσκευή μπορούσε να διαβάσει όλα τα δεδομένα υγείας. Τα δεδομένα μετακινήθηκαν σε κρυπτογραφημένη αποθήκευση με το Keystore/Keychain. Μάθημα: τα ευαίσθητα δεδομένα παραμένουν πάντα κρυπτογραφημένα.
Περίπτωση 3 — Απροειδοποίητη ώθηση στο σύννεφο. Μια εφαρμογή έστελνε καθημερινές σημειώσεις των χρηστών σε ένα cloud LLM για να τις συνοψίσει, αλλά δεν το έλεγε στον χρήστη. Όταν αναφέρθηκε στον Τύπο, υπήρξε απώλεια εμπιστοσύνης και νομικός έλεγχος. Η ομάδα πρόσθεσε μια σαφή ειδοποίηση και επιβεβαίωση, καθώς και μια επιλογή στη συσκευή. Μάθημα: ο χρήστης πρέπει να γνωρίζει και να επιβεβαιώσει ότι τα δεδομένα πηγαίνουν στο AI.
Αδύναμη προτροπή / Ισχυρή προτροπή
Αδύναμο μήνυμα: "Αίτημα άδειας τοποθεσίας."
Ισχυρή προτροπή: "Ζητήστε άδεια τοποθεσίας στο iOS/Swift με την αρχή του ελάχιστου προνομίου. - Μόνο άδεια "όταν χρησιμοποιείται", όχι "πάντα" - Περιγραφή Info.plist: "Για εμφάνιση κοντινών καταστημάτων" - Εάν δεν επιτρέπεται η άδεια: προσφέρετε επιλογή χειροκίνητης επιλογής πόλης, σύγκρουση - Εάν η άδεια έχει απορριφθεί από ό,τι απαιτείται, ανακατεύθυνση στις ρυθμίσεις. επίσης."
Αντιγράψιμα πρότυπα
Πρότυπο για αίτηση άδειας: "Αίτημα [τύπος άδειας] άδεια για [πλατφόρμα].- Ελάχιστο εύρος (κατά τη χρήση/όπως απαιτείται)- Στο πλαίσιο, με αιτιολογημένη εξήγηση- Ευγενική εναλλακτική σε περίπτωση απόρριψης, ποτέ μη συντριβή- Δώστε επίσης Info.plist / Καταχώρηση Manifest Μην προσθέτετε επιπλέον δικαιώματα, αιτιολογήστε κάθε άδεια."
Πρότυπο ελέγχου αδειών: "Ελέγξτε τα δικαιώματα που ζητά η εφαρμογή μου: [λίστα αδειών + ιδιότητες]. Για κάθε άδεια: χρειάζεται πραγματικά; Θα ήταν αρκετό ένα στενότερο εύρος; Θα οδηγούσε σε απόρριψη καταστήματος; Επισήμανση περιττή."
Πρότυπο ασφαλούς αποθήκευσης δεδομένων: "Ασφαλής αποθήκευση ευαίσθητων δεδομένων ([τύπος]) για [πλατφόρμα]:- Κρυπτογραφημένο με Keychain/Keystore- Μην διατηρείτε στη μνήμη για άσκοπα μεγάλο χρονικό διάστημα- Μην διαρρέετε σε αρχεία καταγραφής και αντίγραφα ασφαλείας Παρέχετε βήματα κώδικα και επαλήθευσης."
Πρότυπο αποστολής δεδομένων σε AI: "Σκέφτομαι να στείλω τα ακόλουθα δεδομένα σε μια υπηρεσία τεχνητής νοημοσύνης στο cloud: [data]. Αξιολογήστε: είναι πραγματικά απαραίτητο; Μπορεί να υποβληθεί σε επεξεργασία στη συσκευή; Εάν αποσταλεί, ποια πεδία πρέπει να καλύπτονται; Πώς πρέπει να λαμβάνεται η συναίνεση του χρήστη; Προτείνετε την πιο ασφαλή σχεδίαση όσον αφορά το απόρρητο."
Συνήθη λάθη
- Ζητώντας περισσότερη άδεια από όσο χρειάζεται. Τριπλός κίνδυνος εμπιστοσύνης, έγκρισης καταστήματος και ασφάλειας.
- Μαζική αίτηση αδειών κατά την εκκίνηση. Ένα αίτημα για άδεια χωρίς πλαίσιο απορρίπτεται. ζητήστε τη δυνατότητα αμέσως.
- Δεν γράφουμε το σενάριο απόρριψης. Η συντριβή της εφαρμογής όταν απορρίπτεται η άδεια είναι και κακή και απορρίπτεται.
- Αποθήκευση ευαίσθητων δεδομένων χωρίς κωδικό πρόσβασης. Η υγεία, τα οικονομικά και οι κωδικοί πρόσβασης πρέπει να φυλάσσονται σε ασφαλή αποθήκευση.
- Αποστολή δεδομένων στο cloud/AI χωρίς ενημέρωση του χρήστη. Νομική και ηθική παραβίαση. Απαιτείται ειδοποίηση και έγκριση.
- Μη εξουσιοδοτημένη χρήση τεχνικών ασφαλείας. Είναι θεμιτό μόνο για αμυντικούς σκοπούς στο δικό σας σύστημα.
Συνοπτικά
Το απόρρητο και η ασφάλεια έχουν σχεδιαστεί από την αρχή, δεν προστίθενται αργότερα. Η βασική αρχή είναι το λιγότερο προνόμιο: ζητήστε μόνο την απαραίτητη άδεια, όταν χρειάζεται, με αιτιολόγηση, και προσφέρετε μια ευγενική εναλλακτική σε περίπτωση άρνησης. Τα ευαίσθητα δεδομένα αποθηκεύονται σε κρυπτογραφημένη αποθήκευση και μεταδίδονται μέσω κρυπτογραφημένης σύνδεσης. Η ελαχιστοποίηση δεδομένων είναι η ισχυρότερη προστασία: τα δεδομένα που δεν συλλέγετε δεν μπορούν να διαρρεύσουν. Η αποστολή δεδομένων στην τεχνητή νοημοσύνη, ειδικά στο cloud, είναι από μόνη της μια απόφαση απορρήτου. Η αναγκαιότητά του αμφισβητείται, εάν είναι δυνατόν, προτιμάται on-device, ενημερώνεται ο χρήστης και λαμβάνεται η έγκρισή του. Κάθε κώδικας που παράγεται ελέγχεται έναντι των τάσεων της τεχνητής νοημοσύνης να προσθέτει υπερβολικά δικαιώματα και να αποθηκεύει με ανασφάλεια. Οι τεχνικές ασφαλείας χρησιμοποιούνται μόνο για εξουσιοδοτημένους και αμυντικούς σκοπούς.
Εργασία εφαρμογής
Δημιουργήστε μια λίστα με τα δικαιώματα που ζητά μια εφαρμογή (το δικό σας έργο ή φανταστικό) και ζητήστε από την τεχνητή νοημοσύνη να ελέγξει ποιες είναι περιττές ή υπερβαίνουν το "Πρότυπο ελέγχου άδειας". Κάντε πιο συγκεκριμένη ή καταργήστε τουλάχιστον ένα δικαίωμα και γράψτε το σενάριο άρνησης για αυτήν τη δυνατότητα. Επιπλέον, εάν στέλνετε δεδομένα χρήστη στο cloud, καθορίστε την πιο ασφαλή σχεδίαση με το "Πρότυπο απόφασης αποστολής δεδομένων στο AI" και γράψτε το κείμενο έγκρισης χρήστη.
λίστα ελέγχου
- [ ] Ζήτησα κάθε άδεια με αιτιολόγηση, με την αρχή του ελάχιστου προνομίου.
- [ ] Ζήτησα άδειες στο πλαίσιο, τη στιγμή της λειτουργίας, όχι μαζικά κατά την εκκίνηση
- [ ] Έγραψα ένα σενάριο απόρριψης για κάθε άδεια, χωρίς σφάλματα
- [ ] Αποθήκευσα ευαίσθητα δεδομένα κρυπτογραφημένα με Keychain/Keystore
- [ ] Ελαχιστοποίησα τα δεδομένα που πηγαίνουν στο cloud/AI και πρόσθεσα την έγκριση χρήστη
- [ ] Χρησιμοποίησα τεχνικές ασφαλείας μόνο στο δικό μου σύστημα για αμυντικούς σκοπούς