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ü, yetkilendirme akışını başlatmasını isteyen bir istem gösterir.

Bu akış sırasında kullanıcı arayüzü, kullanıcıya komut dosyasının ne yapmak için izin istediğini belirtir. Örneğin, bir komut dosyası kullanıcının e-posta iletilerini okumak veya takvimlerinde 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 hangi kapsamların gerekli olduğunu otomatik olarak tespit eder. Bir komut dosyasının kullandığı kapsamları istediğiniz zaman görüntüleyebilirsiniz. Ayrıca, URL dizelerini kullanarak manifest dosyanızda kapsamları açıkça ayarlayabilirsiniz. Yayınlanan uygulamaların her zaman mümkün olan en dar kapsamları kullanması gerektiğinden, bazen eklentiler gibi belirli uygulamalar için kapsamların açıkça belirlenmesi gerekir.

Yetkilendirme akışı sırasında Apps Komut Dosyası, gerekli kapsamların kullanıcılar tarafından okunabilen açıklamalarını kullanıcıya sunar. Örneğin, komut dosyanızın e-tablolarınıza salt okuma erişimine ihtiyacı varsa manifest kapsamı https://www.googleapis.com/auth/spreadsheets.readonly olabilir. Yetkilendirme akışı sırasında, bu kapsama sahip bir komut dosyası, kullanıcıdan bu uygulamaya "Google E-Tablolarınızı Görüntüleme" izni vermesini ister.

Bazı kapsamlar diğerlerini kapsar. Örneğin, https://www.googleapis.com/auth/spreadsheets kapsamı yetkilendirildiğinde 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. Solda Genel Bakış tıklayın.
  3. Kapsamları Proje OAuth Kapsamları bölümünde görüntüleyin.

Açık kapsamları ayarlama

Apps Komut Dosyası, bir komut dosyasının hangi kapsamlara ihtiyaç duyduğunu otomatik olarak belirlemek için kodunu, bunları gerektiren işlev çağrılarına karşı tarar. Bu, çoğu komut dosyası için yeterlidir ve size zaman kazandırır ancak yayınlanan eklentiler, web uygulamaları, Google Chat uygulamaları ve Google Chat API'ye yapılan çağrılar için kapsamları daha doğrudan kontrol etmeniz gerekir.

Apps Komut Dosyası bazen projelere çok geniş kapsamlı kapsamlar atar. Bu durum, komut dosyanızın kullanıcıdan gereğinden fazlasını istediği anlamına gelebilir. Bu da hatalı bir uygulamadır. Yayınlanan komut dosyaları için geniş kapsamları, komut dosyasının ihtiyaçlarını karşılayan daha sınırlı bir kümeyle değiştirmeniz gerekir.

manifest dosyasını düzenleyerek komut dosyası projenizin kullandığı kapsamları açıkça ayarlayabilirsiniz. Manifest alanı oauthScopes, proje tarafından kullanılan tüm kapsamları içeren bir dizidir. Projenizin kapsamlarını ayarlamak için şunları yapın:

  1. Komut dosyası projesini açın.
  2. Solda Proje Ayarları'nı tıklayın.
  3. "appsscript.json" manifest dosyasını düzenleyicide göster onay kutusunu işaretleyin.
  4. Sol kısımdan Düzenleyici'yi tıklayın.
  5. Soldaki appsscript.json dosyasını tıklayın.
  6. oauthScopes etiketli üst düzey alanı bulun. Dosya yoksa ekleyebilirsiniz.
  7. oauthScopes alanı bir dize dizisi belirtir. Projenizin kullandığı kapsamları ayarlamak için bu dizinin içeriğini, kullanmasını 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ı

Google Kullanıcı Verileri'ne erişime izin verdikleri için belirli OAuth kapsamları hassastır. Komut dosyası projenizde kullanıcı verilerine erişim sağlayan kapsamlar kullanılıyorsa projeyi web uygulaması veya eklenti olarak herkese açık bir şekilde yayınlayabilmek için önce OAuth istemci doğrulamasından geçmesi gerekir. Daha fazla bilgi için aşağıdaki kılavuzlara bakın:

Kısıtlanmış kapsamlar

Hassas kapsamların yanı sıra belirli kapsamlar kısıtlı 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ınlanmadan önce belirtilen tüm kısıtlamalara uyması gerekir.

Yayınlamayı denemeden önce kısıtlanmış kapsamların tam listesini inceleyin. Uygulamanız bunlardan herhangi birini kullanıyorsa yayınlamadan önce Belirli API kapsamları için Ek Şartlar'a uymanız gerekir.