Chúng tôi sẽ thay đổi cách bật chrome.userScripts trong Tiện ích Chrome

Justin Lulejian
Justin Lulejian

Ngày xuất bản: 29 tháng 5 năm 2025

Kể từ Chrome 138, có một loạt thay đổi đối với tập lệnh người dùng (chrome.userScripts API) trong Tiện ích Chrome, tập trung vào việc tăng cường bảo mật và cung cấp cho người dùng quyền kiểm soát chi tiết hơn. Bản cập nhật này giải quyết các ý kiến phản hồi có giá trị nhận được từ cộng đồng nhà phát triển và người dùng của họ.

Trước đây, để bật tập lệnh của người dùng, bạn phải bật nút bật/tắt Chế độ cho nhà phát triển chung trong Chrome. Chúng tôi đã nhận được ý kiến phản hồi của bạn rằng phương pháp này có một số giới hạn chính liên quan đến bảo mật, chức năng và doanh nghiệp.

Cụ thể, việc dựa vào nút bật/tắt Chế độ dành cho nhà phát triển chung đã gây ra các vấn đề sau:

  • Rủi ro bảo mật: Sau khi chế độ nhà phát triển được bật, các tiện ích mới yêu cầu quyền userScripts sẽ tự động có khả năng chạy tập lệnh của người dùng, có thể là mà không cần người dùng đồng ý rõ ràng hoặc nhận biết được các rủi ro liên quan đến từng tiện ích mới.
  • Tải quá tải chức năng: Nút bật/tắt Chế độ nhà phát triển kiểm soát một số quyền khác dành cho nhà phát triển, khiến việc quản lý quyền cụ thể để chạy tập lệnh của người dùng trở nên kém chính xác.
  • Thách thức đối với doanh nghiệp: Nhiều doanh nghiệp không muốn bật chế độ nhà phát triển trên các thiết bị được quản lý. Điều này ngăn họ triển khai hoặc sử dụng các tiện ích dựa vào API chrome.userScripts một cách hiệu quả.

Để giải quyết những mối lo ngại này cũng như cải thiện tính bảo mật và khả năng hữu dụng của các tiện ích Chrome, chúng tôi sẽ chuyển từ nút bật/tắt Chế độ nhà phát triển chung sang nút bật/tắt Cho phép tập lệnh của người dùng mới cho mỗi tiện ích.

Nút bật/tắt mới này (có thể truy cập trên trang chi tiết về tiện ích từ Chrome 138 (chrome://extensions/?id=<your_extension_id>)) cho phép người dùng kiểm soát rõ ràng khả năng của tiện ích để chạy tập lệnh của người dùng trên cơ sở từng tiện ích. Điều này giúp bạn kiểm soát chặt chẽ hơn và giảm các rủi ro bảo mật tiềm ẩn.

Hộp thoại cho phép tập lệnh của người dùng.

Trong thời gian chuyển đổi, các phiên bản Chrome trước phiên bản 138 sẽ tiếp tục sử dụng nút bật/tắt Chế độ nhà phát triển, trong khi các phiên bản từ phiên bản 138 trở lên sẽ sử dụng nút bật/tắt Cho phép tập lệnh của người dùng mới cho mỗi tiện ích. Trong lần chạy đầu tiên của phiên bản 138 trở lên, quá trình di chuyển một lần sẽ tự động bật nút bật/tắt mới cho các tiện ích hiện có đã được cấp quyền userScripts nếu bạn bật nút bật/tắt Chế độ nhà phát triển. Theo mặc định, tất cả tiện ích mới được cài đặt sau khi di chuyển sẽ chuyển nút bật/tắt Allow User Scripts (Cho phép tập lệnh của người dùng) sang trạng thái tắt.

Ngoài ra, để kiểm tra xem API tập lệnh người dùng có hoạt động hay không, trước đây các tiện ích phải cố gắng truy cập vào chrome.userScripts. Thao tác này sẽ gây ra lỗi nếu chế độ nhà phát triển bị tắt. Kể từ Chrome 138, hành vi này sẽ phù hợp với các API khác và API sẽ không được xác định nếu không có sẵn. Tuy nhiên, bạn nên kiểm tra để xác định xem API có hoạt động hay không vì API này bao gồm tất cả các phiên bản Chrome:

function isUserScriptsAvailable() {
  try {
    // Method call which throws if API permission or toggle is not enabled.
    chrome.userScripts.getScripts();
    return true;
  } catch {
    // Not available.
    return false;
  }
}

Những quản trị viên trước đây quản lý tập lệnh của người dùng bằng cách tắt chế độ nhà phát triển hiện nên sử dụng chính sách blocked_permissions hoặc Bảng điều khiển dành cho quản trị viên của Google để kiểm soát các tiện ích sử dụng API chrome.userScripts. Chúng tôi đang đánh giá thêm các thay đổi đối với cách kiểm soát quyền truy cập chrome.userScripts cho các tiện ích được cài đặt bắt buộc. Vì vậy, hãy theo dõi ghi chú phát hành dành cho quản trị viên để biết thông tin cập nhật.

Chúng tôi tin rằng thay đổi này sẽ giúp người dùng kiểm soát chính xác hơn các tính năng của tiện ích, nhờ đó tăng cường bảo mật và mang lại trải nghiệm minh bạch hơn. Nhà phát triển tiện ích nên cập nhật tài liệu để phản ánh sự thay đổi này và đảm bảo quá trình chuyển đổi suôn sẻ cho người dùng.

Bạn có thể tìm hiểu thêm về những thay đổi và hành vi mới trong tài liệu của chúng tôi.

Chúng tôi cảm ơn ý kiến phản hồi của cộng đồng nhà phát triển đã giúp cải thiện tính năng này. Chúng tôi vẫn cam kết mang đến trải nghiệm an toàn và thân thiện với người dùng cho tất cả mọi người.