Yetkilendirme Kapsamları

Kullanıcılar, verilerine erişen veya kendi adlarına işlem yapan komut dosyası projelerini yetkilendirmelidir. Kullanıcı, yetkilendirme gerektiren bir komut dosyasını ilk kez çalıştırdığında kullanıcı arayüzünde yetkilendirme akışını başlatma istemi gösterilir.

Bu akış sırasında kullanıcı arayüzü, komut dosyasının ne yapmak için izin istediğini kullanıcıya bildirir. Örneğin, bir komut dosyası kullanıcının e-posta mesajlarını okumak veya takviminde etkinlik oluşturmak için izin isteyebilir. Komut dosyası projesi bu izinleri OAuth kapsamları olarak tanımlar.

Apps Komut Dosyası, çoğu komut dosyası için ihtiyacınız olan kapsamları otomatik olarak algılar. Bir komut dosyasının kullandığı kapsamları dilediğiniz zaman görüntüleyebilirsiniz. URL dizeleri kullanarak manifestinizde kapsamları açıkça da ayarlayabilirsiniz. Yayınlanan uygulamalar her zaman mümkün olan en dar kapsamları kullanması gerektiğinden, eklentiler gibi belirli uygulamalar için bazen kapsamları açıkça ayarlamak gerekir.

Apps Script, yetkilendirme akışı sırasında kullanıcıya gerekli kapsamların kullanıcı tarafından okunabilir açıklamalarını sunar. Örneğin, komut dosyanızın e-tablonuz için salt okuma erişimine ihtiyacı varsa manifest'in kapsamı https://www.googleapis.com/auth/spreadsheets.readonly olabilir. Yetkilendirme akışı sırasında, bu kapsama sahip bir komut dosyası kullanıcıdan bu uygulamanın "Google E-Tablolarınızı görüntülemesine" izin vermesini ister.

Bazı kapsamlar diğerlerini kapsar. Örneğin, yetkilendirildiğinde https://www.googleapis.com/auth/spreadsheets kapsamı e-tablolara okuma ve yazma erişimi sağlar.

Kapsamları görüntüleme

Aşağıdakileri yaparak komut dosyası projenizin şu anda ihtiyaç duyduğu kapsamları görebilirsiniz:

  1. Komut dosyası projesini açın.
  2. Sol tarafta Genel bakış'ı tıklayın.
  3. Kapsamları Proje OAuth Kapsamları bölümünde görüntüleyin.

Açık kapsamlar belirleme

Apps Komut Dosyası, bir komut dosyasının ihtiyaç duyduğu kapsamları, kodunu bu kapsamları gerektiren işlev çağrıları açısından tarayarak otomatik olarak belirler. Çoğu komut dosyası için bu yeterlidir ve size zaman kazandırır. Ancak yayınlanan eklentiler, web uygulamaları, Google Chat uygulamaları ve Google Chat API çağrıları için kapsamlar üzerinde daha doğrudan kontrol sahibi olmanız gerekir.

Apps Komut Dosyası bazen projelere otomatik olarak çok izin verici kapsamlar atar. Bu, komut dosyanızın kullanıcıdan ihtiyaç duyduğundan daha fazla bilgi istediği anlamına gelebilir. Bu, kötü bir uygulamadır. Yayınlanan komut dosyalarında, geniş kapsamları komut dosyasının ihtiyaçlarını karşılayan ve daha fazlasını kapsamayan daha sınırlı bir kümeyle değiştirmeniz gerekir.

Komut dosyası projenizin kullandığı kapsamları, manifest dosyasını düzenleyerek açıkça belirleyebilirsiniz. manifest alanı oauthScopes, proje tarafından kullanılan tüm kapsamların bir dizisidir. Projenizin kapsamlarını ayarlamak için aşağıdakileri yapın:

  1. Komut dosyası projesini açın.
  2. Sol tarafta Proje Ayarları'nı tıklayın.
  3. "appsscript.json" manifest dosyasını düzenleyicide göster onay kutusunu işaretleyin.
  4. Sol tarafta Düzenleyici'yi tıklayın.
  5. Sol tarafta appsscript.json dosyasını tıklayın.
  6. oauthScopes etiketli üst düzey alanı bulun. Bu seçenek yoksa ekleyebilirsiniz.
  7. oauthScopes alanı bir dize dizisi belirtir. Projenizin kullanacağı kapsamları ayarlamak için bu dizinin içeriğini, kullanmak istediğiniz kapsamlarla değiştirin. Örneğin:
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
  8. Üstte Kaydet'i tıklayın.

OAuth doğrulaması

Belirli OAuth kapsamları, Google Kullanıcı Verilerine erişim sağladığı için hassas olarak kabul edilir. Komut dosyası projenizde kullanıcı verilerine erişime izin veren kapsamlar kullanılıyorsa projeyi web uygulaması veya eklenti olarak herkese açık olarak yayınlayabilmeniz için OAuth istemci doğrulamasından geçmesi gerekir. Daha fazla bilgi için aşağıdaki kılavuzları inceleyin:

Kısıtlanmış kapsamlar

Hassas kapsamlara ek olarak belirli kapsamlar kısıtlanmış olarak sınıflandırılır ve kullanıcı verilerinin korunmasına yardımcı olan ek kurallara tabidir. Bir veya daha fazla kısıtlanmış kapsam kullanan bir web uygulaması ya da eklenti yayınlamayı planlıyorsanız uygulamanın yayınlanabilmesi için belirtilen tüm kısıtlamalara uyması gerekir.

Yayınlamayı denemeden önce kısıtlanmış kapsamların tam listesini inceleyin. Uygulamanızda bunlardan herhangi biri kullanılıyorsa yayınlamadan önce Belirli API Kapsamları İçin Ek Gereksinimler'e uymanız gerekir.