Đơn vị 9 / 11

Quyền riêng tư, quyền và sử dụng an toàn

Lợi nhuận:

  • Khả năng yêu cầu quyền với kịch bản biện minh, bối cảnh và từ chối, sử dụng nguyên tắc đặc quyền tối thiểu
  • Khả năng lưu trữ dữ liệu nhạy cảm được mã hóa bằng Chuỗi khóa/Kho khóa, áp dụng giảm thiểu dữ liệu và kiểm soát xu hướng trí tuệ nhân tạo thêm quá nhiều quyền
  • Khả năng quản lý luồng dữ liệu người dùng lên đám mây hoặc dịch vụ trí tuệ nhân tạo dưới dạng quyết định về quyền riêng tư, lấy sự đồng ý của người dùng và chỉ sử dụng các kỹ thuật bảo mật cho mục đích phòng thủ, được ủy quyền

Ứng dụng di động hoạt động trên thiết bị riêng tư nhất của người dùng: nó biết vị trí, danh bạ, ảnh, dữ liệu sức khỏe, micrô của người đó. Quyền truy cập này là sức mạnh to lớn, và sức mạnh có nghĩa là trách nhiệm. Quyền riêng tư và bảo mật không phải là một “tính năng bổ sung” trong quá trình phát triển thiết bị di động mà là một nguyên tắc được đưa vào kiến ​​trúc ngay từ đầu; Điều này được gọi là quyền riêng tư theo thiết kế. Hơn nữa, đây không chỉ là một lựa chọn có đạo đức mà còn là nghĩa vụ pháp lý (KVKK, GDPR) và cửa hàng (App Store, Google Play). Trong phần này, chúng ta sẽ tìm hiểu cách yêu cầu quyền chính xác, xử lý dữ liệu một cách an toàn, sử dụng AI làm trợ lý trong lĩnh vực này và bảo vệ bản thân khỏi những cạm bẫy của nó. Có một vấn đề quan trọng nữa trong bối cảnh AI: dữ liệu người dùng chuyển sang mô hình AI (đặc biệt là đám mây) bản thân nó là một quyết định về quyền riêng tư.

Nghệ thuật xin phép: đặc quyền tối thiểu

Nguyên tắc cơ bản của bảo mật là đặc quyền tối thiểu (không yêu cầu nhiều đặc quyền hơn mức yêu cầu của công việc). Ứng dụng của bạn chỉ nên yêu cầu quyền mà nó thực sự cần vào thời điểm nó cần. Nếu không có tính năng camera, quyền truy cập vào camera sẽ không được yêu cầu; Nếu vị trí chỉ được yêu cầu khi bản đồ được mở thì quyền "trong khi sử dụng" là đủ chứ không phải "luôn luôn". Quyền quá mức gây ra ba tác hại: làm suy yếu lòng tin của người dùng, dẫn đến việc cửa hàng từ chối và làm tăng nguy cơ rò rỉ dữ liệu.

Thời điểm thích hợp và lời giải thích về việc xin phép là rất quan trọng. Yêu cầu người dùng cấp quyền theo ngữ cảnh và có lý do chính đáng, chẳng hạn như "Cần có quyền truy cập vào máy ảnh để quét biên nhận của bạn". iOS yêu cầu mô tả này trong Info.plist; Mô tả trống hoặc gây hiểu lầm là từ chối của cửa hàng.

Loại quyền

cách tiếp cận tồi

cách tiếp cận tốt

thời gian

Yêu cầu tất cả khi ra mắt

nhắc nhở khi sử dụng tính năng

Phạm vi

"Luôn luôn có vị trí"

"vị trí trong khi sử dụng"

Mô tả

Trống hoặc chung chung

Căn cứ cụ thể, cụ thể

trạng thái từ chối

Sự cố/sự cố ứng dụng

Vui lòng cung cấp các lựa chọn thay thế

Mẹo: Ứng dụng của bạn có thể tiếp tục chạy khi quyền bị từ chối. Nếu người dùng từ chối máy ảnh, hãy cung cấp tùy chọn "đăng nhập thủ công". Việc áp đặt "cho phép nó hoặc ứng dụng sẽ không hoạt động" vừa là một trải nghiệm tồi vừa là một vấn đề của cửa hàng. Luôn yêu cầu kịch bản từ chối khi in mã cấp phép cho AI.

Mã đồng ý và quyền riêng tư với AI: những điều cần cân nhắc

AI nhanh chóng tạo mã yêu cầu quyền, nhưng nó có hai cạm bẫy điển hình. Đầu tiên, thêm nhiều quyền hơn mức cần thiết: ​​vị trí, danh bạ có thể đặt hàng loạt quyền lưu trữ "để đề phòng". Thứ hai, bỏ qua kịch bản từ chối: chỉ viết trạng thái "được phép" và bỏ qua lời từ chối. Đối với mỗi giấy phép được tạo, bạn sẽ được hỏi "điều này có thực sự cần thiết không?" và “điều gì xảy ra nếu bị từ chối?” Đặt câu hỏi của bạn.

Thận trọng: Mã mẫu do AI tạo ra có thể lưu trữ dữ liệu người dùng mà không mã hóa hoặc truyền dữ liệu một cách không an toàn. Dữ liệu nhạy cảm (mật khẩu, sức khỏe, tài chính) phải được lưu giữ trong bộ lưu trữ an toàn trên thiết bị (Keychain — iOS, Keystore — Android; khu vực kho tiền được mã hóa của hệ điều hành) và được truyền trên mạng thông qua kết nối được mã hóa (HTTPS/TLS). AI không phải lúc nào cũng làm điều này một cách tự nhiên; Hỏi rõ ràng và xác minh.

Giảm thiểu dữ liệu và gửi dữ liệu tới AI

Dữ liệu bạn không thu thập không thể bị rò rỉ. Giảm thiểu dữ liệu (chỉ thu thập dữ liệu thực sự cần thiết) là công cụ mạnh mẽ nhất để bảo vệ quyền riêng tư. Trong các tính năng AI, nguyên tắc này còn quan trọng gấp đôi: khi gửi dữ liệu tới LLM đám mây hoặc dịch vụ AI bên ngoài, dữ liệu đó nằm ngoài tầm kiểm soát của bạn. Trước khi gửi ghi chú sức khỏe, nội dung cuộc trò chuyện hoặc thông tin cá nhân của người dùng lên đám mây, hãy đặt ba câu hỏi: (1) Dữ liệu này có thực sự cần thiết không? (2) Có thể xử lý được trên thiết bị không? (3) Nếu nó được gửi đi, người dùng có biết và chấp thuận nó không? Yêu cầu cả về mặt pháp lý và đạo đức là phải thông báo rõ ràng cho người dùng rằng dữ liệu của họ sẽ được chuyển đến dịch vụ AI.

Sử dụng an toàn và tập trung phòng thủ

Cảnh báo từ góc độ CNTT và bảo mật: các kỹ thuật học được trong mô-đun này chỉ dành cho mục đích sử dụng được ủy quyền và phòng thủ. Việc kiểm tra tính bảo mật của ứng dụng của riêng bạn, bảo vệ dữ liệu người dùng và đóng các lỗ hổng là hợp pháp. Kỹ thuật đảo ngược ứng dụng của người khác mà không được phép, thu thập dữ liệu người dùng mà không có sự đồng ý hoặc sử dụng AI để tạo phần mềm độc hại là bất hợp pháp và phi đạo đức. Khi yêu cầu AI trợ giúp về bảo mật, hãy luôn ở trong khuôn khổ bảo vệ hệ thống của chính bạn.

ba trường hợp nhỏ

Trường hợp 1 - Từ chối nghỉ phép quá mức. Một ứng dụng ghi chú đã yêu cầu quyền truy cập vào máy ảnh, micrô, vị trí và liên hệ khi khởi động bằng mã do AI tạo ra. Google Play đã từ chối bản phát hành với lý do "các quyền không liên quan đến chức năng". Bản phát hành được phê duyệt khi nhóm chỉ phát hành quyền lưu trữ thực sự được sử dụng. Bài học: mỗi lần nghỉ phép thêm đều là một rủi ro.

Trường hợp 2 - Lưu trữ không có mật khẩu. Một ứng dụng sức khỏe đã lưu trữ số đo của người dùng trong một tệp văn bản thuần túy như trong ví dụ về AI. Một cuộc kiểm tra bảo mật cho thấy bất kỳ ai có được thiết bị đều có thể đọc tất cả dữ liệu sức khỏe. Dữ liệu được chuyển sang bộ lưu trữ được mã hóa bằng Keystore/Keychain. Bài học: dữ liệu nhạy cảm luôn được mã hóa.

Trường hợp 3 - Đẩy lên đám mây không báo trước. Một ứng dụng đang gửi ghi chú hàng ngày của người dùng tới LLM trên đám mây để tóm tắt chúng nhưng nó không thông báo cho người dùng. Khi nó được đưa tin trên báo chí, đã có sự mất lòng tin và sự giám sát pháp lý. Nhóm đã thêm thông báo và xác nhận rõ ràng cũng như tùy chọn trên thiết bị. Bài học: người dùng phải biết và xác nhận rằng dữ liệu sẽ được chuyển đến AI.

Dấu nhắc yếu / Dấu nhắc mạnh

Lời nhắc yếu: "Yêu cầu quyền truy cập vị trí."

Lời nhắc mạnh mẽ: "Yêu cầu quyền truy cập vị trí trên iOS/Swift với nguyên tắc đặc quyền tối thiểu. - Chỉ quyền 'khi đang sử dụng', không phải 'luôn luôn' - Mô tả Info.plist: 'Để hiển thị các cửa hàng lân cận' - Nếu quyền bị từ chối: cung cấp tùy chọn để chọn thành phố theo cách thủ công, gặp sự cố - Nếu quyền đã bị từ chối trước đó, hãy chuyển hướng đến cài đặt Không thêm nhiều quyền hơn mức cần thiết. Hãy viết cả quy trình từ chối."

Mẫu có thể sao chép

Mẫu yêu cầu quyền: "Yêu cầu quyền [loại quyền] cho [nền tảng].- Phạm vi tối thiểu (khi sử dụng/khi cần)- Trong bối cảnh, với lời giải thích hợp lý- Thay thế lịch sự trong trường hợp bị từ chối, không bao giờ gặp sự cố- Cung cấp cả mục nhập Info.plist / Manifest Đừng thêm các quyền bổ sung; biện minh cho từng quyền."

Mẫu kiểm tra quyền: "Kiểm tra các quyền mà ứng dụng của tôi yêu cầu: [danh sách quyền + thuộc tính]. Đối với mỗi quyền: nó có thực sự cần thiết không? Phạm vi hẹp hơn có đủ không? Việc này có dẫn đến việc cửa hàng từ chối không? Gắn cờ là không cần thiết."

Mẫu lưu trữ dữ liệu an toàn: "Lưu trữ an toàn dữ liệu nhạy cảm ([loại]) cho [nền tảng]:- Được mã hóa bằng Chuỗi khóa/Kho khóa- Không lưu trong bộ nhớ trong thời gian dài không cần thiết- Không rò rỉ vào nhật ký và bản sao lưu. Cung cấp mã và các bước xác minh."

Mẫu gửi dữ liệu tới AI: "Tôi đang xem xét gửi dữ liệu sau tới dịch vụ AI trên đám mây: [dữ liệu]. Đánh giá: nó có thực sự cần thiết không? Nó có thể được xử lý trên thiết bị không? Nếu được gửi, những trường nào sẽ bị che đi? Làm cách nào để có được sự đồng ý của người dùng? Đề xuất thiết kế an toàn nhất về mặt quyền riêng tư."

Những lỗi thường gặp

  • Yêu cầu nhiều sự cho phép hơn mức cần thiết. Nguy cơ gấp ba về niềm tin, sự chấp thuận của cửa hàng và bảo mật.
  • Yêu cầu quyền hàng loạt khi khởi động. Yêu cầu cấp phép không có ngữ cảnh sẽ bị từ chối; yêu cầu tính năng này ngay lập tức.
  • Không viết kịch bản từ chối Ứng dụng gặp sự cố khi quyền bị từ chối vừa xấu vừa bị từ chối.
  • Lưu trữ dữ liệu nhạy cảm mà không cần mật khẩu. Sức khỏe, tài chính và mật khẩu phải được lưu giữ ở nơi lưu trữ an toàn.
  • Gửi dữ liệu lên đám mây/AI mà không thông báo cho người dùng. Vi phạm pháp luật và đạo đức; Cần phải có thông báo và phê duyệt.
  • Sử dụng trái phép các kỹ thuật bảo mật. Nó chỉ hợp pháp cho mục đích phòng thủ trên hệ thống của riêng bạn.

Tóm lại

Quyền riêng tư và bảo mật được thiết kế ngay từ đầu, không được bổ sung sau. Nguyên tắc cơ bản là ít đặc quyền nhất: chỉ yêu cầu sự cho phép cần thiết, khi cần thiết, với lý do chính đáng và đưa ra giải pháp thay thế lịch sự trong trường hợp bị từ chối. Dữ liệu nhạy cảm được lưu trữ trong bộ lưu trữ được mã hóa và truyền qua kết nối được mã hóa. Giảm thiểu dữ liệu là cách bảo vệ mạnh mẽ nhất: dữ liệu bạn không thu thập sẽ không thể bị rò rỉ. Gửi dữ liệu tới AI, đặc biệt là lên đám mây, bản thân nó là một quyết định về quyền riêng tư; Sự cần thiết của nó được đặt ra, nếu có thể, ưu tiên sử dụng trên thiết bị, người dùng sẽ được thông báo và nhận được sự chấp thuận của họ. Mọi mã được tạo ra đều được kiểm tra theo xu hướng của AI nhằm thêm các quyền quá mức và lưu trữ không an toàn. Các kỹ thuật bảo mật chỉ được sử dụng cho mục đích được ủy quyền và phòng thủ.

Nhiệm vụ ứng dụng

Lập danh sách các quyền mà ứng dụng (dự án của riêng bạn hoặc dự án tưởng tượng) yêu cầu và yêu cầu AI kiểm tra những quyền nào là không cần thiết hoặc vượt quá mức độ bằng "Mẫu kiểm tra quyền". Tinh chỉnh hoặc xóa ít nhất một quyền và viết kịch bản từ chối cho tính năng đó. Ngoài ra, nếu bạn đang gửi dữ liệu người dùng lên đám mây, hãy xác định thiết kế an toàn nhất bằng "Mẫu quyết định gửi dữ liệu tới AI" và viết văn bản phê duyệt của người dùng.

danh sách kiểm tra

  • [ ] Tôi đã yêu cầu mỗi sự cho phép một cách chính đáng, với nguyên tắc ít đặc quyền nhất.
  • [ ] Tôi đã yêu cầu quyền theo ngữ cảnh, tại thời điểm triển khai tính năng chứ không phải hàng loạt khi ra mắt
  • [ ] Tôi đã viết kịch bản từ chối cho mỗi quyền, không gặp sự cố nào
  • [ ] Tôi đã lưu trữ dữ liệu nhạy cảm được mã hóa bằng Chuỗi khóa/Kho khóa
  • [ ] Tôi đã giảm thiểu dữ liệu được đưa lên đám mây/AI và thêm sự chấp thuận của người dùng
  • [ ] Tôi chỉ sử dụng các kỹ thuật bảo mật trên hệ thống của mình cho mục đích phòng thủ