Ieguvumi:
- Iespēja pieprasīt atļaujas ar pamatojumu, kontekstu un noraidīšanas scenāriju, izmantojot mazāko privilēģiju principu
- Iespēja uzglabāt sensitīvus datus, kas šifrēti ar Keychain/Keystore, piemērot datu minimizēšanu un kontrolēt mākslīgā intelekta tendenci pievienot pārāk daudz atļauju
- Iespēja pārvaldīt lietotāja datu plūsmu uz mākoņa vai mākslīgā intelekta pakalpojumu kā privātuma lēmumu, iegūt lietotāja piekrišanu un izmantot drošības metodes tikai autorizētiem, aizsardzības mērķiem
Mobilā aplikācija darbojas lietotāja privātākajā ierīcē: zina viņa atrašanās vietu, kontaktus, fotogrāfijas, veselības datus, mikrofonu. Šī pieeja ir liela vara, un vara nozīmē atbildību. Privātums un drošība nav “papildu funkcija” mobilajā attīstībā, bet gan princips, kas arhitektūrā ieausts jau no paša sākuma; To sauc par izstrādātu privātumu. Turklāt tā nav tikai ētiska izvēle, tā ir juridiska (KVKK, GDPR) un veikala (App Store, Google Play) pienākums. Šajā nodaļā mēs iemācīsimies pareizi pieprasīt atļaujas, droši apstrādāt datus, izmantot AI kā palīgu šajā jomā un pasargāt sevi no tā slazdiem. AI kontekstā ir vēl viena kritiska problēma: lietotāju datu nokļūšana AI modeļos (jo īpaši mākonī) pats par sevi ir lēmums par privātumu.
Māksla lūgt atļauju: mazākā privilēģija
Drošības pamatprincips ir mazākās privilēģijas (neprasīt vairāk privilēģiju, nekā prasa darbs). Jūsu lietotnei ir jāprasa tikai tai patiešām nepieciešamā atļauja tajā laikā, kad tā ir nepieciešama. Ja kameras funkcijas nav, kameras atļauja netiks pieprasīta; Ja atrašanās vieta ir nepieciešama tikai tad, kad karte ir atvērta, pietiek ar atļauju "lietošanas laikā", nevis "vienmēr". Pārmērīgas atļaujas rada trīskāršu kaitējumu: grauj lietotāju uzticību, noved pie veikala noraidīšanas un palielina datu noplūdes risku.
Pareizs laiks un paskaidrojums atļaujas pieprasīšanai ir ļoti svarīgs. Lūdziet lietotājam atļauju kontekstā un ar pamatojumu, piemēram, "Lai skenētu kvīti, ir nepieciešama piekļuve kamerai". iOS pieprasa šo aprakstu Info.plist; Tukšs vai maldinošs apraksts ir veikala noraidīšana.
Atļaujas veids
slikta pieeja
laba pieeja
laika noteikšana
Pieprasīt visu palaišanas laikā
uzvedne, izmantojot funkciju
Darbības joma
"Vienmēr atrašanās vieta"
"atrašanās vieta lietošanas laikā"
Apraksts
Tukšs vai vispārīgs
Konkrēts, konkrēts pamatojums
noraidījuma statuss
Lietotņu avārijas/avārijas
Laipni piedāvā alternatīvas
Padoms. Ja atļauja ir liegta, jūsu lietotnei vajadzētu turpināt darboties. Ja lietotājs noraida kameru, piedāvājiet opciju "manuāla pieteikšanās". Uzspiešana "atļaujiet, pretējā gadījumā lietotne nedarbosies" ir gan slikta pieredze, gan veikala problēma. Drukājot AI atļaujas kodu, vienmēr pieprasiet noraidīšanas scenāriju.
Piekrišana un privātuma kods ar AI: apsvērumi
AI ātri ģenerē atļaujas pieprasīšanas kodu, taču tam ir divas tipiskas nepilnības. Pirmkārt, pievienojot vairāk atļauju nekā nepieciešams: atrašanās vieta, kontaktpersonas var lielapjomā ievietot krātuves atļaujas "katram gadījumam". Otrkārt, izlaižot noraidījuma scenāriju: vienkārši ierakstiet statusu "atļauts" un ignorējiet noraidījumu. Par katru iegūto atļauju jums tiks jautāts: "Vai tas tiešām ir nepieciešams?" un "Kas notiek, ja tiek noraidīts?" Uzdodiet savus jautājumus.
Uzmanību: AI ģenerētais parauga kods var saglabāt lietotāja datus bez šifrēšanas vai pārsūtīt tos nedroši. Sensitīvie dati (parole, veselība, finanses) ir jāglabā drošā ierīces krātuvē (Keychain — iOS, Keystore — Android; operētājsistēmas šifrēta glabātuves zona) un jāpārsūta tīklā, izmantojot šifrētu savienojumu (HTTPS/TLS). AI ne vienmēr to dara spontāni; Skaidri jautājiet un pārbaudiet.
Datu minimizēšana un datu nosūtīšana uz AI
Dati, kurus jūs neapkopojat, nevar noplūst. Datu minimizēšana (ievācot tikai tos datus, kas faktiski ir nepieciešami) ir visspēcīgākais privātuma rīks. AI funkcijās šis princips ir divtik svarīgs: sūtot datus mākoņa LLM vai ārējam AI pakalpojumam, šie dati ir ārpus jūsu kontroles. Pirms lietotāja veselības piezīmes, sarunas satura vai personas informācijas nosūtīšanas uz mākoni, uzdodiet trīs jautājumus: (1) Vai šie dati patiešām ir nepieciešami? (2) Vai to var apstrādāt ierīcē? (3) Ja tas ir jānosūta, vai lietotājs to zina un apstiprina? Tā ir gan juridiska, gan ētiska prasība skaidri informēt lietotāju, ka viņa dati tiek nodoti AI pakalpojumam.
Droša lietošana un aizsardzības fokuss
Brīdinājums no IT un drošības viedokļa: šajā modulī apgūtās metodes ir paredzētas tikai autorizētai un aizsardzības nolūkiem. Ir likumīgi pārbaudīt savas lietojumprogrammas drošību, aizsargāt lietotāja datus un novērst ievainojamības. Kādas citas lietojumprogrammas reversā inženierija bez atļaujas, lietotāju datu vākšana bez piekrišanas vai AI izmantošana ļaunprātīgas programmatūras izveidei ir nelikumīga un neētiska. Lūdzot AI palīdzību drošības jomā, vienmēr ievērojiet savas sistēmas aizsardzību.
trīs mini futrāļi
1. gadījums — pārmērīga atvaļinājuma atteikums. Piezīmju lietojumprogramma startēšanas laikā pieprasīja kameras, mikrofona, atrašanās vietas un kontaktpersonu atļaujas, izmantojot AI izveidoto kodu. Google Play noraidīja izlaidumu, atsaucoties uz "funkcijām neatbilstošām atļaujām". Izlaidums tika apstiprināts, kad komanda izlaida tikai faktiski izmantoto krātuves atļauju. Mācība: katrs papildu atvaļinājums ir risks.
2. gadījums — krātuve bez paroles. Veselības lietotne saglabāja lietotāja mērījumus vienkārša teksta failā, piemēram, AI piemērā. Drošības audits atklāja, ka ikviens, kurš ieguva ierīci, var nolasīt visus veselības datus. Dati pārvietoti uz šifrētu krātuvi, izmantojot Keystore/Keychain. Nodarbība: sensitīvie dati vienmēr paliek šifrēti.
3. gadījums — nepieteikta pārsūtīšana uz mākoni. Lietotne sūtīja lietotāju ikdienas piezīmes uz mākoņa LLM, lai tās apkopotu, taču tā lietotājam to neinformēja. Kad tas tika ziņots presē, tika zaudēta uzticība un juridiskā kontrole. Komanda pievienoja skaidru paziņojumu un apstiprinājumu, kā arī opciju ierīcē. Nodarbība: lietotājam ir jāzina un jāapstiprina, ka dati tiek nosūtīti uz AI.
Vāja uzvedne / spēcīga uzvedne
Vāja uzvedne: “Pieprasīt atrašanās vietas atļauju”.
Spēcīga uzvedne: "Pieprasiet atrašanās vietas atļauju operētājsistēmā iOS/Swift, izmantojot mazāko privilēģiju principu. - Atļauja tikai "kad tiek lietota", nevis "vienmēr" - Info.plist apraksts: "Lai rādītu tuvumā esošos veikalus" - Ja atļauja ir liegta: piedāvājiet iespēju manuāli atlasīt pilsētu, avāriju - Ja atļauja ir bijusi liegta iepriekš, pievienojiet vairāk atļauju, nekā nepieciešams.
Kopējamas veidnes
Atļaujas pieprasīšanas veidne: "Pieprasīt [atļaujas veids] atļauju [platformai].- Minimālais tvērums (izmantojot/pēc vajadzības)- Kontekstā, ar argumentētu skaidrojumu- Pieklājīga alternatīva noraidījuma gadījumā, nekad neavārē- Sniedziet Info.plist / Manifesta ierakstu arī Nepievienojiet papildu atļaujas; pamatojiet katru atļauju."
Atļauju audita veidne: "Pārbaudiet manas lietotnes pieprasītās atļaujas: [atļauju saraksts + rekvizīti]. Katrai atļaujai: vai tā patiešām ir nepieciešama? Vai pietiktu ar šaurāku tvērumu? Vai tas novestu pie veikala noraidīšanas? Atzīmējiet nevajadzīgu."
Drošas datu glabāšanas veidne: "Droši glabājiet sensitīvos datus ([tips]) [platformai]: - šifrēti ar atslēgu piekariņu/atslēgu krātuvi - Neglabājiet atmiņā nevajadzīgi ilgu laiku - Neievietojiet žurnālos un dublējumkopijās Norādiet kodu un verifikācijas darbības."
Veidne datu nosūtīšanai uz mākslīgo intelektu: "Es apsveru šādu datu sūtīšanu uz mākoņa AI pakalpojumu: [dati]. Novērtējiet: vai tas tiešām ir nepieciešams? Vai to var apstrādāt ierīcē? Ja nosūtīts, kuri lauki ir jāmaskē? Kā iegūt lietotāja piekrišanu? Iesakiet visdrošāko dizainu privātuma ziņā."
Biežas kļūdas
- Prasa vairāk atļaujas nekā nepieciešams. Trīskāršs uzticības, veikala apstiprinājuma un drošības apdraudējums.
- Atļauju lielapjoma pieprasīšana startēšanas laikā. Atļaujas pieprasījums bez konteksta tiek noraidīts; nekavējoties pieprasiet šo funkciju.
- Neraksta noraidījuma skriptu. Lietojumprogramma, kas avarē, ja atļauja tiek liegta, ir gan slikta, gan noraidīta.
- Sensitīvu datu glabāšana bez paroles. Veselība, finanses un paroles ir jāglabā drošā krātuvē.
- Datu sūtīšana uz mākoni/AI, neinformējot lietotāju. Juridisks un ētisks pārkāpums; Nepieciešams paziņojums un apstiprinājums.
- Neatļauta drošības tehnikas izmantošana. Tas ir likumīgs tikai aizsardzības nolūkos jūsu sistēmā.
Rezumējot
Privātums un drošība ir izstrādāti no paša sākuma, nevis pievienoti vēlāk. Pamatprincips ir mazākā privilēģija: prasiet tikai nepieciešamo atļauju, ja nepieciešams, ar pamatojumu un piedāvājiet pieklājīgu alternatīvu atteikuma gadījumā. Sensitīvie dati tiek glabāti šifrētā krātuvē un pārsūtīti, izmantojot šifrētu savienojumu. Datu minimizēšana ir spēcīgākā aizsardzība: dati, kurus jūs neapkopojat, nevar noplūst. Datu sūtīšana uz AI, jo īpaši uz mākoni, pats par sevi ir lēmums par privātumu; Tā nepieciešamība tiek apšaubīta, ja iespējams, priekšroka tiek dota uz ierīci, lietotājs tiek informēts un tiek saņemta viņa piekrišana. Katrs radītais kods tiek pārbaudīts pret AI tieksmi pievienot pārmērīgas atļaujas un uzglabāt nedrošu. Drošības tehnikas tiek izmantotas tikai autorizētiem un aizsardzības mērķiem.
Lietojumprogrammas uzdevums
Izveidojiet sarakstu ar atļaujām, kuras pieprasa lietojumprogramma (savs projekts vai iedomāts), un ļaujiet AI pārbaudīt, kuras no tām ir nevajadzīgas vai pārmērīgas, izmantojot “Atļauju audita veidni”. Uzlabojiet vai noņemiet vismaz vienu atļauju un uzrakstiet šīs funkcijas atteikuma scenāriju. Turklāt, ja sūtāt lietotāja datus uz mākoni, nosakiet drošāko dizainu, izmantojot “Datu nosūtīšanas lēmuma veidni AI” un uzrakstiet lietotāja apstiprinājuma tekstu.
kontrolsaraksts
- [ ] Es prasīju katru atļauju ar pamatojumu, ievērojot mazāko privilēģiju principu.
- [ ] Es prasīju atļaujas kontekstā, funkcijas laikā, nevis lielapjoma palaišanas laikā
- [ ] Katrai atļaujai uzrakstīju noraidīšanas skriptu, bez avārijām
- [ ] Es saglabāju sensitīvus datus, kas šifrēti ar Keychain/Keystore
- [ ] Es samazināju datus, kas nonāk mākonī/AI, un pievienoju lietotāja apstiprinājumu
- [ ] Es izmantoju drošības metodes tikai savā sistēmā aizsardzības nolūkos