Phạm vi cấp phép

Người dùng phải ủy quyền cho các dự án tập lệnh truy cập 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 ủy 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 ủy 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 thực hiện quyền nào. Ví dụ: một tập lệnh có thể muốn có quyền đọc tin nhắn 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 là các phạm vi 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 phạm vi của tập lệnh bất cứ lúc nào. Bạn cũng có thể đặt phạm vi một cách 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 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 sử dụng phạm vi hẹp nhất có thể.

Trong quy trình uỷ quyền, Apps Script hiển thị cho người dùng các mô tả về phạm vi bắt buộc. Ví dụ: nếu tập lệnh của bạn cần quyền truy cập chỉ đọc vào bảng tính, 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 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 là các phạm vi khác. Ví dụ: khi được phép, phạm vi https://www.googleapis.com/auth/spreadsheets cho phép truy cập đọc và ghi vào bảng tính.

Phạm vi xem

Bạn có thể thấy 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 thực hiện các bước sau:

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

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

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

Đôi khi, Apps Script tự động gán các dự án có phạm vi rất rộng. Điều này có nghĩa là tập lệnh của bạn yêu cầu người dùng nhiều hơn mức cần thiết, đây là một phương pháp không hợp lệ. Đối với các tập lệnh đã xuất bản, bạn phải thay thế các phạm vi rộng bằng một tập hợp giới hạn hơn, bao gồm nhu cầu của tập lệnh và không bao gồm nhiều phạm vi 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. Trường tệp kê khai oauthScopes là một mảng gồm tất cả các phạm vi mà dự án sử dụng. Để đặt phạm vi của 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 Show "appsscript.json" tệp kê khai 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. Bạn có thể thêm thẻ nếu không có.
  7. Trường oauthScopes chỉ định một mảng chuỗi. Để đặt các 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 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ất định nhạy cảm vì chúng cho phép truy cập vào Dữ liệu người dùng của 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, dự án phải trải qua xác minh ứng dụng OAuth trước khi bạn có thể phát hành 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 phạm vi nhạy cảm, một số phạm vi nhất định được phân loại là bị hạn chế và phải 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 có ý đị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 hạn chế, thì ứng dụng đó phải tuân thủ tất cả các hạn chế đã chỉ định trước khi phát hành.

Hãy xem danh sách toàn bộ phạm vi bị hạn chế trước khi bạn phát hành. Nếu ứng dụng của bạn sử 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.