Phạm vi uỷ quyền

Người dùng phải uỷ quyền cho các dự án tập lệnh truy cập vào dữ liệu của họ hoặc hành động thay mặt họ. Khi người dùng chạy một tập lệnh yêu cầu uỷ quyền lần đầu tiên, giao diện người dùng sẽ hiển thị lời nhắc để bắt đầu quy trình uỷ quyền.

Trong quy trình này, giao diện người dùng cho người dùng biết tập lệnh muốn có quyền làm gì. Ví dụ: một tập lệnh có thể muốn có quyền đọc email của người dùng hoặc tạo sự kiện trong lịch của họ. Dự án tập lệnh xác định các quyền riêng lẻ này dưới dạng các phạm vi của OAuth.

Đối với hầu hết các tập lệnh, Apps Script sẽ tự động phát hiện những phạm vi cần thiết cho bạn; bạn có thể xem các phạm vi mà một tập lệnh sử dụng bất cứ lúc nào. Bạn cũng có thể đặt phạm vi rõ ràng trong tệp kê khai bằng cách sử dụng chuỗi URL. Đôi khi, bạn bắt buộc phải đặt phạm vi rõ ràng cho một số ứng dụng nhất định như tiện ích bổ sung, vì các ứng dụng đã phát hành phải luôn dùng phạm vi hẹp nhất có thể.

Trong quy trình uỷ quyền, Apps Script hiển thị nội dung mô tả mà con người có thể đọc được về các phạm vi bắt buộc cho người dùng. Ví dụ: nếu tập lệnh của bạn cần quyền chỉ có thể đọc đối với bảng tính, thì tệp kê khai có thể có phạm vi https://www.googleapis.com/auth/spreadsheets.readonly. Trong quy trình uỷ quyền, một tập lệnh có phạm vi này sẽ yêu cầu người dùng cho phép ứng dụng này "Xem bảng tính Google của bạn".

Một số phạm vi bao gồm các phạm vi khác. Ví dụ: khi được uỷ quyền, phạm vi https://www.googleapis.com/auth/spreadsheets sẽ cho phép quyền đọc và ghi vào bảng tính.

Phạm vi xem

Bạn có thể xem các phạm vi mà dự án tập lệnh của bạn hiện yêu cầu bằng cách làm như sau:

  1. Mở dự án tập lệnh.
  2. Ở bên trái, hãy nhấp vào biểu tượng Tổng quan .
  3. Xem các phạm vi trong phần Project OAuth Scopes (Phạm vi của dự án OAuth).

Đặt phạm vi rõ ràng

Apps Script tự động xác định phạm vi mà một tập lệnh cần bằng cách quét mã của tập lệnh đó để tìm các lệnh gọi hàm yêu cầu các phạm vi đó. Đối với hầu hết các tập lệnh, cách này là đủ và giúp bạn tiết kiệm thời gian. Tuy nhiên, đối với các tiện ích bổ sung đã phát hành, ứng dụng web, ứng dụng Google Chat và các lệnh gọi đến API Google Chat, bạn phải kiểm soát trực tiếp các phạm vi hơn.

Đôi khi, Apps Script tự động chỉ định các phạm vi rất không bắt buộc cho dự án. Điều này có nghĩa là tập lệnh của bạn yêu cầu người dùng cung cấp nhiều hơn mức cần thiết, đây là một phương pháp sai. Đối với các tập lệnh đã xuất bản, bạn phải thay thế phạm vi rộng bằng một tập hợp hạn chế hơn, bao gồm cả nhu cầu của tập lệnh và không còn đáp ứng nào khác.

Bạn có thể đặt rõ phạm vi mà dự án tập lệnh của bạn sử dụng bằng cách chỉnh sửa tệp tệp kê khai của dự án đó. Trường tệp kê khai oauthScopes là một mảng gồm tất cả phạm vi mà dự án sử dụng. Để đặt phạm vi cho dự án, hãy làm như sau:

  1. Mở dự án tập lệnh.
  2. Ở bên trái, hãy nhấp vào biểu tượng Cài đặt dự án .
  3. Chọn hộp đánh dấu Hiển thị tệp kê khai "appsscript.json" trong trình chỉnh sửa.
  4. Ở bên trái, hãy nhấp vào biểu tượng Trình chỉnh sửa .
  5. Ở bên trái, hãy nhấp vào tệp appsscript.json.
  6. Tìm trường cấp cao nhất có nhãn oauthScopes. Nếu không thấy mã này, bạn có thể thêm.
  7. Trường oauthScopes chỉ định một mảng chuỗi. Để đặt phạm vi mà dự án của bạn sử dụng, hãy thay thế nội dung của mảng này bằng các phạm vi mà bạn muốn sử dụng. Ví dụ:
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
    
  8. Ở trên cùng, hãy nhấp vào Lưu .

Xác minh OAuth

Một số phạm vi OAuth nhạy cảm vì chúng cho phép truy cập vào Dữ liệu người dùng Google. Nếu dự án tập lệnh của bạn sử dụng các phạm vi cho phép truy cập vào dữ liệu người dùng, thì dự án phải trải qua bước xác minh ứng dụng OAuth trước khi có thể xuất bản công khai dưới dạng ứng dụng web hoặc tiện ích bổ sung. Để biết thêm thông tin chi tiết, vui lòng xem hướng dẫn dưới đây:

Phạm vi bị hạn chế

Ngoài các phạm vi nhạy cảm, một số phạm vi được phân loại là bị hạn chế và tuân theo các quy tắc bổ sung giúp bảo vệ dữ liệu người dùng. Nếu bạn dự định phát hành một ứng dụng web hoặc tiện ích bổ sung sử dụng một hoặc nhiều phạm vi bị hạn chế, thì ứng dụng đó phải tuân thủ tất cả các quy định hạn chế đã chỉ định thì mới có thể xuất bản.

Hãy xem danh sách đầy đủ các phạm vi bị hạn chế trước khi bạn thử xuất bản. Nếu ứng dụng của bạn dùng bất kỳ phạm vi nào trong số đó, bạn phải tuân thủ Các yêu cầu bổ sung đối với các phạm vi API cụ thể trước khi phát hành.