Yetkilendirme kapsamları

Google Photos Library API, medya öğelerine ve albümlere erişmek için kullanılan birden çok kapsam içerir. Çeşitli çağrılardan döndürülen yanıtlar, geliştiricinin istediği kapsamlara göre farklılık gösterir.

Uygulamanızın Google Photos Library API'ye gönderdiği her istek bir yetkilendirme jetonu içermelidir. Bu jeton ayrıca uygulamanızı Google'a tanıtır.

Yetkilendirme protokolleri hakkında

Uygulamanız, istekleri yetkilendirmek için OAuth 2.0 kullanmalıdır. Başka hiçbir yetkilendirme protokolü desteklenmez. Uygulamanız Google ile Oturum Açma özelliğini kullanıyorsa yetkilendirme işleminin bazı kısımları sizin adınıza gerçekleştirilir.

OAuth 2.0 kullanarak istekleri yetkilendirme

Google Photos Library API'ye yapılan tüm isteklerin, kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmesi gerekir.

OAuth 2.0 ile yetkilendirme işleminin ("akış") ayrıntıları, yazdığınız uygulamanın türüne bağlı olarak değişiklik gösterir. Aşağıdaki genel işlem tüm uygulama türleri için geçerlidir:

  1. Uygulamanızı oluştururken Google API Konsolu'nu kullanarak kaydedersiniz. Ardından Google, daha sonra ihtiyaç duyacağınız bilgiler (ör. istemci kimliği ve istemci gizli anahtarı) sağlar.
  2. Google API Konsolu'nda Google Photos Library API'yi etkinleştirin. (API, API Konsolu'nda listelenmemişse bu adımı atlayın.)
  3. Uygulamanız kullanıcı verilerine erişmesi gerektiğinde Google'dan belirli bir erişim kapsamı ister.
  4. Google, kullanıcıya uygulamanızı kullanıcının verilerinden bazılarını istemeye yetkilendirmesi için bir onay ekranı gösterir.
  5. Kullanıcı onaylarsa Google, uygulamanıza kısa süreli bir erişim jetonu verir.
  6. Uygulamanız, erişim jetonunu isteğe ekleyerek kullanıcı verileri için istekte bulunur.
  7. Google, isteğinizin ve jetonun geçerli olduğuna kanaat getirirse istenen verileri döndürür.

Bazı akışlarda başka adımlar da yer alır. Örneğin, yeni erişim jetonları almak için yenileme jetonları kullanmak. Farklı uygulama türlerine yönelik akışlar hakkında ayrıntılı bilgi için Google'ın OAuth 2.0 dokümanlarına bakın.

Google Photos Library API için OAuth 2.0 kapsam bilgileri aşağıda verilmiştir:

Kapsam Anlamı
https://www.googleapis.com/auth/photoslibrary.readonly

Salt okuma erişimi.

Kitaplıktaki ve tüm albümlerdeki öğeleri listeleyin, paylaşılanlar da dahil kullanıcıya ait tüm medya öğelerine erişin ve albümleri listeleyin.

Kullanıcı tarafından paylaşılan albümlerde paylaşım özellikleri , yalnızca photoslibrary.sharing kapsamı da verilmişse döndürülür.

Albümler için shareInfo ve mediaItems için contributorInfo yalnızca photoslibrary.sharing kapsamı da verilmişse kullanılabilir.

Daha fazla bilgi için Medya paylaşma başlıklı makaleyi inceleyin.

https://www.googleapis.com/auth/photoslibrary.appendonly

Yalnızca yazma erişimi.

Bayt yükleme, medya öğeleri oluşturma, albüm oluşturma ve zenginleştirme ekleme erişimi. Yalnızca kullanıcının kitaplığında ve uygulama tarafından oluşturulan albümlerde yeni medya oluşturulmasına izin verir.

https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata

Geliştirici tarafından oluşturulan medya öğelerine ve albümlere okuma erişimi. Daha fazla bilgi için bkz. Medya öğelerine erişme ve Kitaplık içeriklerini, albümleri ve medya öğelerini listeleme.

photoslibrary.appendonly kapsamıyla birlikte istenmesi amaçlanmıştır.

https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata

Yalnızca düzenleme erişimi.

Geliştirici tarafından oluşturulan albümler ve medya öğeleri için bu ayrıntıları değiştirme erişimi:

https://www.googleapis.com/auth/photoslibrary.sharing

Aramaları paylaşma erişimi.

Albüm oluşturma, paylaşma, albüme medya öğeleri yükleme ve paylaşılan bir albüme katılma erişimi.

https://www.googleapis.com/auth/photoslibrary

Önerilmez. Artımlı yetkilendirme ile yalnızca ihtiyaç duyduğunuz kapsamlara erişim isteyin.

Hem photoslibrary.appendonly hem de photoslibrary.readonly kapsamlarına erişim. photoslibrary.sharing veya photoslibrary.edit erişimini içermez.

Uygulamanızın OAuth 2.0 kullanarak erişim isteğinde bulunabilmesi için hem kapsam bilgilerine hem de uygulamanızı kaydederken Google tarafından sağlanan bilgilere (ör. istemci kimliği ve istemci gizli anahtarı) ihtiyacı vardır.

İpucu: Google API'leri istemci kitaplıkları, yetkilendirme işleminin bazı adımlarını sizin yerinize gerçekleştirebilir. Bu kitaplıklar çeşitli programlama dilleri için kullanıma sunulmuştur. Ayrıntılar için kitaplıkların ve örneklerin bulunduğu sayfayı inceleyin.

Kapsamları seçme

Genel kural olarak mümkün olan en kısıtlayıcı kapsamı seçin ve uygulamanızın ihtiyaç duymadığı kapsamları istemekten kaçının. Kullanıcılar sınırlı, net bir şekilde açıklanan kapsamlara daha kolay bir şekilde erişim izni verir. Kullanıcılar, uygulamanıza güvenmedikleri ve neden bu bilgiye ihtiyaç duyduklarını anlamadıkları takdirde medyalarına geniş kapsamlı erişim izni vermekte tereddüt edebilir.

Kademeli olarak kapsam isteme

Yetkilendirmeyle ilgili en iyi uygulamaları izleyerek uygulamanız, yalnızca ihtiyaç duyulan kapsamları istemelidir. Oturum açarken uygulamanız için tüm kapsamları önceden istemekten kaçının. Bunun yerine, gerekçenizi açıklayın ve isteği bağlama uygun şekilde yapın. Bildirimde bulunmak ve izin istemek için Kullanıcı Deneyimi Yönergeleri ve en iyi uygulamalar uyarınca kullanıcılarınızın verileriyle ne yapacağınızı ve erişim izni vererek nasıl fayda sağlayacaklarını net bir şekilde açıklayın.

Hizmet hesapları

Library API, hizmet hesaplarını desteklemez. Uygulamanız, web sunucusu uygulamaları için OAuth 2.0 veya mobil ve masaüstü uygulamaları için OAuth 2.0 gibi mevcut diğer OAuth 2.0 akışlarını kullanmalıdır.