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.

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. Cấu hình quyền trên Android 8.0 và thấp hơn bao gồm danh sách trắng, mà không có ứng dụng đặc quyền bị vô hiệu hóa, ngay cả khi họ đang ở trong priv-app con đường. Trên Android 9 trở lên, một thiết bị cố gắng 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ác biện pháp bảo vệ chống lại tăng gây hại Apps (PHAs) cải thiện

  • 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 của ứ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 các quyền.

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

Trong Android 9 và thấp hơn, các gói cài đặt và chức năng kiểm soát sự cho phép được chứa trong PackageInstaller gói ( //packages/apps/PackageInstaller ). Trong Android 10 và cao hơn, cư trú chức năng kiểm soát sự cho phép trong một gói riêng biệt, PermissionController ( //packages/apps/PermissionController ). Hình 1 minh họa nơi hai gói cư trú 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. Gói cài đặt và cho phép điều khiển các chức năng trong Android 10

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

Trong Android 6.0 và cao hơn, ứng dụng yêu cầu truy cập đến quyền nguy hiểm tại 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), điều này nhắc người dùng sửa đổi hoặc cho phép các quyền nguy hiểm.

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

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

Bắt đầu từ Android 10 ứng dụng phải có cả chữ ký quyền sử dụng và đồng ý để truy cập nội dung màn hình của thiết bị . Ứng dụng đặc quyền dựa trên các chức năng chụp im lặng, chẳng hạn như tham gia một ảnh chụp màn hình, nên sử dụng MediaProjection lớp để 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. Hạn chế bổ sung như Android 10 ứng dụng giới hạn truy cập vào các nhận dạng thiết bị không thay đổi (ID) , trừ khi họ đang trong danh sách trắng cho phép đặc quyền . (Các kết nối phần cung cấp một cuộc thảo luận liên quan về nhận dạng thiết bị , vì điều này ảnh hưởng hãng.)

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 các ứng dụng. Bắt đầu từ Android 10, một điều khoản vị trí tristate tính năng cho phép người dùng ba tùy chọn để cho phép truy cập ứng dụng 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

  • Các truy cập nền vị trí người sử dụng nhắc nhở chương trình khi một ứng dụng truy cập vị trí thiết bị của họ sử dụng ACCESS_FINE_LOCATION phép ở chế độ nền.
  • Liên hệ ái lực dữ liệu liên quan, bởi các thành phần hệ nhà cung cấp quản lý, được truy cập khác nhau: Apps không thể ghi vào hoặc đọc từ ái lực liên lạc dữ liệu trong cơ sở dữ liệu. Tác động này API gọi liên quan đến .

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ụ đưa ra bởi init giữ tất cả các khía cạnh của cấu hình dịch vụ trong một đơn .rc tập tin. Khi thiết lập khả năng cho các dịch vụ không đưa ra bởi init , khả năng hệ thống tập tin cấu hình sử dụng fs_config.c để thay thế.
  • 7.x Android và giảm mở rộng cơ chế Android ID (AIDS), sử dụng một thiết bị cụ thể android_filesystem_config.h tập tin để xác định khả năng hệ thống tập tin và / hoặc tùy chỉnh AIDs thiết bị sản xuất. Android 8.0 và cao hơn hỗ trợ một phương pháp mới để mở rộng khả năng hệ thống tập tin .
  • Trong Android 8.0, xử lý lệnh USB di chuyển ra khỏi điện thoại cụ thể init script (thay một cho các lớp HAL) và vào một daemon USB mẹ đẻ. Các HAL USB giao diện phải được thực hiện trên tất cả các thiết bị ra mắt trên Android 8.0 và cao hơn.