Pengguna harus mengizinkan project skrip yang mengakses data mereka atau bertindak atas dasar nama Anda. Saat pengguna menjalankan skrip yang memerlukan otorisasi untuk sekali lagi, UI akan memberikan {i>prompt<i} untuk memulai alur otorisasi.
Selama alur ini, UI memberi tahu pengguna apa yang diminta skrip harus dilakukan. Misalnya, skrip mungkin meminta izin akses untuk membaca pesan email atau membuat acara di kalender mereka. Project skrip menentukan izin individual ini sebagai cakupan OAuth.
Untuk sebagian besar skrip, Apps Script otomatis mendeteksi cakupan apa yang diperlukan untuk Anda; Anda dapat melihat cakupan yang digunakan skrip kapan saja. Anda juga dapat menetapkan cakupan secara eksplisit di manifes Anda menggunakan string URL. Menetapkan cakupan secara eksplisit terkadang diperlukan untuk aplikasi tertentu seperti add-on, karena aplikasi yang dipublikasikan harus selalu menggunakan cakupan sempit.
Selama alur otorisasi, Apps Script menampilkan deskripsi cakupan yang diperlukan kepada pengguna dalam bentuk yang dapat dibaca manusia. Misalnya, jika skrip Anda
memerlukan akses hanya-baca ke spreadsheet, manifes mungkin memiliki cakupan
https://www.googleapis.com/auth/spreadsheets.readonly
. Selama
alur otorisasi, skrip dengan cakupan ini meminta pengguna untuk mengizinkan
aplikasi Anda ke "Melihat Google Spreadsheet Anda".
Beberapa cakupan menyertakan beberapa cakupan lainnya. Misalnya, jika diotorisasi, cakupan
https://www.googleapis.com/auth/spreadsheets
memungkinkan akses baca dan tulis ke
pada{i> spreadsheet.<i}
Melihat cakupan
Anda dapat melihat cakupan yang saat ini dibutuhkan project skrip Anda dengan melakukan berikut ini:
- Buka project skrip.
- Di sebelah kiri, klik Overview .
- Lihat cakupan di bagian Cakupan OAuth Project.
Menetapkan cakupan eksplisit
Apps Script secara otomatis menentukan cakupan yang diperlukan skrip dengan memindai kode untuk panggilan fungsi yang memerlukannya. Untuk sebagian besar skrip, hal ini cukup dan menghemat waktu Anda, tetapi untuk add-on yang dipublikasikan, aplikasi web, aplikasi Google Chat, dan panggilan ke Google Chat API, Anda harus menggunakan kontrol yang lebih langsung terhadap cakupan.
Apps Script terkadang secara otomatis menetapkan cakupan yang sangat permisif untuk project. Hal ini dapat berarti skrip Anda meminta lebih banyak dari yang diperlukan pengguna, yang merupakan praktik buruk. Untuk skrip yang diterbitkan, Anda harus mengganti cakupan luas dengan kumpulan lebih terbatas yang mencakup kebutuhan skrip dan tidak lebih.
Anda dapat secara eksplisit menetapkan cakupan yang digunakan project skrip dengan mengedit
file manifes. Kolom manifes
oauthScopes
adalah array dari semua cakupan yang digunakan oleh project. Untuk menyetel
cakupan proyek, lakukan hal berikut:
- Buka project skrip.
- Di sebelah kiri, klik Project Settings .
- Pilih kotak centang Tampilkan file manifes "appsscript.json" dalam editor.
- Di sebelah kiri, klik Editor .
- Di sebelah kiri, klik file
appsscript.json
. - Temukan kolom tingkat teratas berlabel
oauthScopes
. Jika tidak ada, Anda dapat menambahkannya. - Kolom
oauthScopes
menentukan array string. Untuk menetapkan cakupan yang digunakan project, ganti konten array ini dengan cakupan yang ingin menggunakannya. Contoh:{ ... "oauthScopes": [ "https://www.googleapis.com/auth/spreadsheets.readonly", "https://www.googleapis.com/auth/userinfo.email" ], ... }
- Di bagian atas, klik Simpan .
Verifikasi OAuth
Cakupan OAuth tertentu bersifat sensitif karena memungkinkan akses ke Data Pengguna. Jika project skrip Anda menggunakan cakupan yang mengizinkan akses ke data pengguna, proyek harus melalui Verifikasi klien OAuth sebelum Anda dapat mempublikasikannya secara publik sebagai aplikasi web atau add-on. Untuk informasi selengkapnya, lihat panduan berikut:
- Verifikasi klien OAuth untuk Apps Script
- Aplikasi yang belum diverifikasi
- FAQ verifikasi OAuth
- Layanan Google API: Kebijakan Data Pengguna
Cakupan yang dibatasi
Selain cakupan sensitif, cakupan tertentu diklasifikasikan sebagai dibatasi dan tunduk kepada aturan tambahan yang membantu melindungi data pengguna. Jika Anda bermaksud untuk memublikasikan aplikasi web atau add-on yang menggunakan satu atau beberapa cakupan yang dibatasi, aplikasi harus mematuhi semua pembatasan yang ditentukan sebelum dapat dipublikasikan.
Tinjau daftar lengkap cakupan yang dibatasi sebelum Anda mencoba memublikasikan. Jika aplikasi Anda menggunakan salah satunya, Anda harus mematuhi dengan Persyaratan Tambahan untuk cakupan API Tertentu sebelum dipublikasikan.