Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
This page was translated by the Cloud Translation API.
Switch to English

Quyền của Android

Các quyền của Android cung cấp các biện pháp kiểm soát nhằm nâng cao nhận thức của người dùng và hạn chế quyền truy cập của ứng dụng vào dữ liệu nhạy cảm. Việc định cấu hình quyền trên Android 8.0 trở xuống bao gồm danh sách trắng, nếu không có ứng dụng đặc quyền nào sẽ bị tắt, ngay cả khi chúng nằm trong đường dẫn priv-app . Trên Android 9 trở lên, một thiết bị cố sử dụng các ứng dụng không có trong danh sách cho phép sẽ không khởi động được.

Cải thiện các biện pháp bảo vệ chống lại Ứng dụng có khả năng gây hại (PHA)

  • Minh bạch về hành vi ứng dụng có thể gây hại.
  • Kiểm soát của người dùng đối với hành vi ứng dụng.
  • Nhà phát triển ứng dụng có quyền quyết định khi sử dụng dữ liệu riêng tư, được bảo vệ bởi quyền.

Cài đặt gói và quyền

Trong Android 9 trở xuống, các chức năng kiểm soát quyền và cài đặt gói được chứa trong gói PackageInstaller ( //packages/apps/PackageInstaller ). Trong Android 10 trở lên, chức năng kiểm soát quyền nằm trong một gói riêng, PermissionController ( //packages/apps/PermissionController ). Hình 1 minh họa vị trí của hai gói trong Android 10.

Tách các chức năng cài đặt gói và kiểm soát quyền cho các ứng dụng hệ thống và như được sử dụng bởi các ứng dụng do người dùng cài đặt
Hình 1. Các chức năng kiểm soát quyền và cài đặt gói trong Android 10

Danh sách trắng và quyền truy cập

Trong Android 6.0 trở lên, các ứng dụng yêu cầu quyền truy cập vào các quyền nguy hiểm trong thời gian chạy . Android 10 bổ sung các quyền thời gian chạy nhận dạng hoạt động (AR), nhắc nhở người dùng sửa đổi hoặc cho phép các quyền nguy hiểm.

Android 8.0 yêu cầu bạn đưa các ứng dụng đặc quyền vào danh sách trắng rõ ràng trong các tệp XML cấu hình hệ thống trong thư mục /etc/permissions . Trong Android 9 trở lên, các quyền đặc quyền phải được đưa vào danh sách trắng nếu không thiết bị không thể khởi động.

Để hạn chế khả năng hiển thị API nội bộ và ngăn các ứng dụng vô tình truy cập vào thư viện nền tảng, Android 7.0 đã giới thiệu Không gian tên cho Thư viện gốc . Điều này tách thư viện hệ thống khỏi thư viện ứng dụng và các nhà sản xuất thiết bị có thể thêm thư viện gốc của riêng họ.

Bắt đầu từ các ứng dụng Android 10 phải có cả quyền chữ ký và sự đồng ý của người dùng để truy cập nội dung màn hình của thiết bị . Các ứng dụng đặc quyền dựa vào chức năng chụp im lặng, chẳng hạn như chụp ảnh màn hình, nên sử dụng lớp MediaProjection để thay thế.

Tính minh bạch và quyền riêng tư

Trong Android 6.0 trở lên, địa chỉ MAC của nhà sản xuất thiết bị được bảo vệ khỏi quyền truy cập của nhà cung cấp dịch vụ Wi-Fi và bộ phân tích gói. Các hạn chế bổ sung kể từ Android 10 hạn chế các ứng dụng truy cập vào số nhận dạng thiết bị bất biến (ID) trừ khi chúng được đưa vào danh sách trắng cho các quyền đặc quyền . (Phần Kết nối cung cấp một cuộc thảo luận liên quan về Số nhận dạng thiết bị , vì điều này ảnh hưởng đến nhà cung cấp dịch vụ.)

Trên Android 9 trở xuống, người dùng có những lựa chọn liên tục khi cấp quyền truy cập vị trí cho ứng dụng. Bắt đầu từ Android 10, tính năng cấp quyền vị trí ba giai đoạn cung cấp cho người dùng ba tùy chọn để cho phép ứng dụng truy cập vào vị trí của thiết bị. Các yêu cầu quyền này được áp dụng cho các ứng dụng trong Android 10 bất kể SDK mục tiêu là gì.

Định cấu hình quyền cho các tính năng bảo mật và minh bạch khác bắt đầu từ Android 10

  • Lời nhắc vị trí truy cập trong nền hiển thị cho người dùng khi một ứng dụng truy cập vào vị trí thiết bị của họ bằng quyền ACCESS_FINE_LOCATION trong nền.
  • Dữ liệu liên quan đến mối quan hệ liên hệ, được quản lý bởi thành phần Trình cung cấp danh bạ, được truy cập theo cách khác: Các ứng dụng không thể ghi hoặc đọc từ dữ liệu sở thích của liên hệ trong cơ sở dữ liệu. Điều này ảnh hưởng đến các API liên quan đến người gọi .

Cấu hình được sắp xếp hợp lý

Cấu hình quyền đã được sắp xếp hợp lý cho Android 6.0 trở lên.

  • Khả năng môi trường xung quanh cho các dịch vụ do init khởi chạy giữ tất cả các khía cạnh của cấu hình dịch vụ trong một tệp .rc duy nhất. Khi cài đặt khả năng cho các dịch vụ không do init khởi chạy, hãy định cấu hình các khả năng của hệ thống tệp bằng fs_config.c thay thế.
  • Android 7.x trở xuống mở rộng cơ chế Android ID (AID), sử dụng tệp android_filesystem_config.h dành riêng android_filesystem_config.h thiết bị để chỉ định khả năng của hệ thống tệp và / hoặc AID của nhà sản xuất thiết bị tùy chỉnh. Android 8.0 trở lên hỗ trợ một phương pháp mới để mở rộng khả năng của hệ thống tệp .
  • Trong Android 8.0, việc xử lý các lệnh USB được chuyển ra khỏi các tập lệnh init dành riêng cho thiết bị (sự thay thế cho các lớp HAL) và sang một trình nền USB gốc. Giao diện USB HAL phải được triển khai trên mọi thiết bị chạy trên Android 8.0 trở lên.