Google Chrome đang tiến hành triển khai phần tử HTML <permission>
mới gây tranh cãi bất chấp sự phản đối mạnh mẽ từ cả Mozilla Firefox và Apple Safari. Tính năng này, hiện đang trong giai đoạn thử nghiệm origin trials bắt đầu từ Chrome 122, nhằm thay thế các pop-up xin phép truyền thống bằng các phần tử HTML khai báo nội tuyến mà các trang web có thể nhúng trực tiếp vào trang của họ.
Phần tử mới cho phép các nhà phát triển yêu cầu quyền truy cập trình duyệt như camera, microphone và vị trí thông qua HTML markup thay vì các lệnh gọi JavaScript. Thay vì các hộp thoại modal quen thuộc làm gián đoạn việc duyệt web của người dùng, phần tử <permission>
hiển thị như một phần của nội dung trang web, thể hiện các trạng thái khác nhau dựa trên việc quyền được cấp, từ chối hay đang chờ xử lý.
Các Loại Quyền Được Hỗ Trợ ( Chrome 122 Trial )
- Truy cập camera
- Truy cập microphone
- Dữ liệu định vị địa lý
Lập Trường Của Các Nhà Cung Cấp Trình Duyệt
- ** Chrome **: Đang triển khai trong các thử nghiệm nguồn gốc
- ** Firefox **: Lập trường phản đối chính thức
- ** Safari / WebKit **: Lập trường phản đối chính thức
![]() |
---|
Hướng dẫn bật quyền truy cập microphone trong trình duyệt khi sử dụng Google Meet |
Tranh cãi về Quy trình Tiêu chuẩn
Mối quan ngại lớn nhất được cộng đồng nhà phát triển nêu ra tập trung vào quyết định của Google tiến hành triển khai bất chấp sự phản đối chính thức từ các nhà cung cấp trình duyệt lớn khác. Cả Mozilla và WebKit đều đã đưa ra lập trường tiêu chuẩn tiêu cực, nhưng Chrome vẫn tiếp tục phát triển thông qua origin trials. Cách tiếp cận này đã thu hút sự chỉ trích vì có khả năng phân mảnh các tiêu chuẩn web và tạo ra các tính năng chỉ dành riêng cho Chrome mà các trình duyệt khác có thể không bao giờ hỗ trợ.
Tình huống này làm nổi bật những căng thẳng đang diễn ra trong quản trị tiêu chuẩn web. Các nhà phê bình cho rằng thị phần thống trị của Chrome cho phép Google có thể buộc việc áp dụng các tính năng bất kể sự đồng thuận của ngành, làm suy yếu quy trình tiêu chuẩn hợp tác truyền thống đã chi phối việc phát triển web.
Mối quan ngại về Bảo mật và Trải nghiệm Người dùng
Các cuộc thảo luận của nhà phát triển cho thấy sự hoài nghi sâu sắc về những tác động bảo mật của việc chuyển các yêu cầu quyền vào nội dung trang web. Bản chất nội tuyến của phần tử này làm dấy lên lo ngại về các cuộc tấn công clickjacking, nơi các trang web độc hại có thể phủ các phần tử vô hình để lừa người dùng cấp quyền một cách vô tình.
Các hạn chế về styling áp dụng lên phần tử tạo ra những thách thức bổ sung. Trong khi Google đã hạn chế cách các trang web có thể tùy chỉnh giao diện để ngăn chặn lạm dụng, các nhà phát triển lo lắng điều này sẽ tạo ra trải nghiệm người dùng khó chịu khi các nút xin phép không khớp với thiết kế trang web. Các hạn chế này cũng có vẻ không đủ để ngăn chặn các cuộc tấn công social engineering tinh vi.
Nó làm cho việc người dùng kích hoạt quyền trở nên dễ dàng hơn, cũng như vô tình hơn, và do đó làm giảm bảo mật và quyền riêng tư. Các sản phẩm của Google được thiết kế để khai thác điều đó.
Vấn đề Triển khai Kỹ thuật
Cộng đồng đã xác định một số vấn đề kỹ thuật với đề xuất hiện tại. Hành vi của phần tử có vẻ không nhất quán với các mẫu HTML tiêu chuẩn, và bản chất khai báo của nó bị đặt câu hỏi vì các quyền cơ bản vẫn cần JavaScript để hoạt động có ý nghĩa.
Các nhà phát triển cũng lưu ý về chức năng bị thiếu so với các API quyền hiện có. Phiên bản thử nghiệm thiếu các tùy chọn để chặn quyền vĩnh viễn, chỉ cung cấp các lựa chọn cho phép mỗi lần truy cập và cho phép lần này. Sự bất đối xứng này cho thấy tính năng có thể được thiết kế để khuyến khích việc cấp quyền thay vì thực sự cải thiện quyền kiểm soát của người dùng.
Ví dụ về Cú pháp Phần tử Permission
<permission name="camera">
<span>Quyền đã được cấp.</span>
<span slot="denied">Quyền bị từ chối.</span>
<button slot="prompt">Yêu cầu cấp quyền</button>
</permission>
Các Thuộc tính Chính
name
: Loại quyền (camera, microphone, geolocation)granted
: Nội dung hiển thị khi quyền được cấpdenied
: Nội dung hiển thị khi quyền bị từ chốiprompt
: Nội dung hiển thị khi trạng thái quyền chưa xác định
Tác động Thị trường và Triển vọng Tương lai
Cuộc tranh cãi phản ánh những lo ngại rộng lớn hơn về ảnh hưởng của Google đối với các tiêu chuẩn web thông qua sự thống trị thị trường của Chrome. Nhiều nhà phát triển lo sợ rằng việc triển khai thành công các tính năng chỉ dành cho Chrome sẽ gây áp lực lên các trình duyệt khác phải triển khai chúng một cách hồi tố, bất kể giá trị kỹ thuật hay mối quan ngại bảo mật.
Tình huống này phản ánh các trường hợp trước đây khi Google giới thiệu các tính năng một cách đơn phương, sau đó buộc ngành phải áp dụng. Với các nhà phát triển web ngày càng phụ thuộc vào các API chỉ dành cho Chrome, phần tử permission có thể trở thành một ví dụ khác về việc tiêu chuẩn hóa de facto thông qua sức mạnh thị trường thay vì phát triển dựa trên sự đồng thuận.
Sự thành công cuối cùng của tính năng này có thể sẽ phụ thuộc vào việc liệu các nhà cung cấp trình duyệt khác cuối cùng có đảo ngược lập trường của họ hay liệu cộng đồng phát triển web có chấp nhận các triển khai chỉ dành cho Chrome bất chấp những lo ngại về phân mảnh.
Tham khảo: An origin trial for a new HTML element