Khai báo quyền

Để sử dụng hầu hết các tính năng và API tiện ích, bạn phải khai báo ý định của tiện ích trong các trường quyền của tệp kê khai. Tiện ích có thể yêu cầu các danh mục quyền sau đây, được chỉ định bằng khoá tệp kê khai tương ứng:

"permissions"
Chứa các mục trong danh sách các chuỗi đã biết. Các thay đổi có thể kích hoạt cảnh báo.
"optional_permissions"
Được người dùng cấp trong thời gian chạy, thay vì tại thời điểm cài đặt.
"content_scripts.matches"
Chứa một hoặc nhiều mẫu so khớp, cho phép tập lệnh nội dung chèn vào một hoặc nhiều máy chủ lưu trữ. Các thay đổi có thể kích hoạt cảnh báo.
"host_permissions"
Chứa một hoặc nhiều mẫu trùng khớp cấp quyền truy cập vào một hoặc nhiều máy chủ lưu trữ. Các thay đổi có thể kích hoạt cảnh báo.
"optional_host_permissions"
Được người dùng cấp trong thời gian chạy, thay vì tại thời điểm cài đặt.

Quyền giúp hạn chế thiệt hại nếu tiện ích của bạn bị phần mềm độc hại xâm phạm. Một số cảnh báo về quyền sẽ hiển thị để người dùng đồng ý trước khi hoặc trong thời gian chạy, như đã nêu chi tiết trong phần Quyền kèm theo cảnh báo.

Cân nhắc sử dụng các quyền không bắt buộc ở bất cứ nơi nào chức năng của tiện ích cho phép, cung cấp cho người dùng quyền kiểm soát sáng suốt đối với quyền truy cập vào các tài nguyên và dữ liệu.

Nếu một API yêu cầu quyền, thì tài liệu về quyền đó sẽ giải thích cách khai báo quyền đó. Đối với ví dụ: hãy xem API Bộ nhớ.

Tệp kê khai

Sau đây là ví dụ về phần quyền trong tệp tệp kê khai:

manifest.json:

{
  "name": "Permissions Extension",
  ...
  "permissions": [
    "activeTab",
    "contextMenus",
    "storage"
  ],
  "optional_permissions": [
    "topSites",
  ],
  "host_permissions": [
    "https://www.developer.chrome.com/*"
  ],
  "optional_host_permissions":[
    "https://*/*",
    "http://*/*"
  ],
  ...
  "manifest_version": 3
}

Quyền của máy chủ

Quyền của máy chủ lưu trữ cho phép tiện ích tương tác với mẫu khớp của URL. Một số API Chrome yêu cầu quyền của máy chủ ngoài các quyền đối với API riêng, như trình bày trên từng trang tham khảo. Dưới đây là một số ví dụ:

Quyền có cảnh báo

Khi một tiện ích yêu cầu nhiều quyền và nhiều quyền trong số đó hiển thị cảnh báo khi cài đặt, người dùng sẽ thấy một danh sách các cảnh báo như trong ví dụ sau:

Cảnh báo về quyền của tiện ích khi cài đặt

Người dùng có nhiều khả năng sẽ tin tưởng những tiện ích có cảnh báo hạn chế hoặc khi có thông tin giải thích về quyền cho họ. Cân nhắc triển khai các quyền không bắt buộc hoặc một API kém mạnh mẽ hơn để tránh cảnh báo các cảnh báo. Để biết các phương pháp hay nhất về cảnh báo, hãy xem Nguyên tắc về cảnh báo về quyền. Cụ thể cảnh báo được liệt kê cùng với quyền truy cập tương ứng trong Danh sách tham khảo về Quyền.

Thêm hoặc thay đổi các mẫu so khớp trong "host_permissions""content_scripts.matches" các trường của tệp kê khai cũng sẽ kích hoạt cảnh báo. Để tìm hiểu thêm, hãy xem Cập nhật quyền.

Cho phép truy cập

Nếu tiện ích của bạn cần chạy trên URL file:// hoặc hoạt động ở chế độ ẩn danh, thì người dùng phải cấp cho tiện ích quyền truy cập trên trang chi tiết của tiện ích. Bạn có thể tìm thấy hướng dẫn mở trang chi tiết trong mục Quản lý tiện ích.

Cho phép truy cập vào URL của tệp và trang ẩn danh

  1. Nhấp chuột phải vào biểu tượng tiện ích trong Chrome.
  2. Chọn Quản lý tiện ích.

    Trình đơn theo bối cảnh của tiện ích
    Trình đơn tiện ích
  3. Di chuyển xuống để cho phép truy cập vào URL của tệp hoặc chế độ ẩn danh.

    Cho phép URL tệp và chế độ ẩn danh trên trang chi tiết về tiện ích
    Đã bật quyền truy cập vào URL của tệp và chế độ ẩn danh.

Để phát hiện xem người dùng có cho phép quyền truy cập hay không, bạn có thể gọi hàm extension.isAllowedIncognitoAccess() hoặc extension.isAllowedFileSchemeAccess().