Google Cloud projesi yapılandırması

Bu sayfada, Classroom eklentileri için Google Cloud projeleri oluşturma ve yapılandırma hakkında bilmeniz gereken bilgiler yer almaktadır. Google Cloud projeleri, OAuth 2.0 (Google TOA) üzerinden Google Tek Oturum Açma'yı uygulamak, eklentiniz tarafından yapılan istekleri yetkilendirmek ve Google Workspace Marketplace mağazasındaki eklenti listelemelerini yönetmek için kullanılır.

Bir eklentiyi Marketplace'te yayınlama hakkında daha genel bilgi için Uygulama yayınlama başlıklı makaleyi inceleyin.

Google Cloud projesi oluşturma

Oluşturulabilecek iki tür proje vardır: geliştirme için kullanılan özel proje ve son kullanıcıların erişebileceği herkese açık proje. "Herkese açık" ve "gizli" etiketleri, uygulamanızın Google Workspace Marketplace'teki görünürlüğünü ifade eder. Gizli bir Marketplace uygulaması yalnızca oluşturulduğu alan içindeki kullanıcılar tarafından yüklenebilirken herkese açık bir Marketplace uygulaması herhangi bir Google Workspace alanında kullanılabilir. Bir proje hem herkese açık hem de özel olamayacağından bunlar iki ayrı uygulama olmalıdır. Herkese açık uygulamaların, Marketplace'te kullanıma sunulmadan önce incelenip onaylanması gerekir.

Google Cloud projesi oluşturma hakkında genel bilgi için Google Cloud projesi oluşturma başlıklı makaleyi inceleyin.

Herkese açık bir Google Cloud projesi oluşturun

Bu proje, yöneticiler, öğretmenler ve öğrenciler tarafından erişilebilen eklenti uygulamasını temsil eder. Herkese açık bir projenin başlatılabilmesi veya yüklenebilmesi için Google Workspace Marketplace ekibi tarafından incelenip onaylanması gerekir.

  1. Üretim alanınızda yeni bir Google Cloud projesi oluşturun.

    Google Cloud projesi oluşturma

  2. Cloud projenizde Classroom API'yi etkinleştirin.

    Classroom API'yi etkinleştirme

  3. Cloud projenizde Google Workspace Marketplace SDK'sını etkinleştirin.

    Google Workspace Marketplace SDK'sını etkinleştirme

  4. Marketplace SDK Uygulama Yapılandırması Uygulama Görünürlüğü'nü Herkese açık olarak ayarlayın ve Liste dışı kutusunu işaretleyin.

  5. Marketplace SDK'sındaki zorunlu alanları doldurun. Mağaza Girişi sayfasında YAYINLA'yı tıklayın.

  6. Uygulamanız Google Workspace Marketplace ekibi tarafından incelenir. Bu ekip, Marketplace SDK'sında belirtilen geliştirici e-posta adresini kullanarak sizinle iletişim kurar. Uygulama onaylandıktan sonra öğretmenlerin ve yöneticilerin uygulamayı Marketplace'te bulabilmesi için Listelenmemiş kutusunun işaretini kaldırın.

Özel bir Google Cloud projesi oluşturun

Bu özel proje, geliştirme için kullanılan eklenti uygulamasını temsil eder. Oluşturulduğu alanın dışındaki kullanıcılar tarafından erişilemez ancak yüklenmeden önce onaylanması gerekmez. Bu nedenle Google, eklentinizi kontrollü bir ortamda geliştirmek ve test etmek için bu projeyi kullanmanızı önerir.

Özel proje oluşturmak için Teaching & Learning veya Plus lisansına sahip bir Google Workspace for Education alanına erişmeniz gerekir. Böyle bir alan adına erişiminiz yoksa Google Workspace for Education demo alanını kurmak, Plus lisansına yükseltmek ve Classroom eklentileri API'sine erişmesine izin vermek için aşağıdaki adımları uygulayın:

  1. Geliştirici test alanı alma adımlarını tamamlayın.
  2. Demo alanında yönetici olarak oturum açmışken yeni bir Google Cloud projesi oluşturun.

    Google Cloud projesi oluşturma

    Google Cloud Console'a erişemiyorsanız veya Cloud projeleri oluşturamıyorsanız Yönetici Konsolu'nda aşağıdakileri kontrol edin:

    • Hesap ayarları > Yaşa bağlı erişim ayarları sayfasına gidin ve Bu gruptaki veya kuruluş birimindeki tüm kullanıcılar 18 yaşında ya da daha büyük seçeneğini belirleyin.
    • Uygulamalar > Ek Google hizmetleri bölümünde:
    • Google Cloud Platform herkes için ETKİN'dir.
    • Proje oluşturma ayarları Kullanıcıların proje oluşturmasına izin ver şeklindedir.
    • Cloud Shell erişim ayarları Cloud Shell'e erişime izin ver olarak ayarlanmalıdır.
  3. Demo alan adı yükseltme isteği formunu doldurup gönderin. Bu formu göndererek Google'dan demo alanınızı on lisanslı Google Workspace for Education Plus'a yükseltmesini ve Cloud projenizin Classroom eklentileri API'sine erişmesine izin vermesini istersiniz.

    Yükseltme ve izin verilenler listesi işlemleri tamamlandığında e-posta alırsınız. Yönetici Konsolu'nda test öğretmen hesaplarınıza Plus lisansları atayın. Dizin > Kullanıcılar bölümünde test öğretmen hesaplarınızı oluşturun veya seçin. Her öğretmenin Lisanslar bölümünde Google Workspace for Education Plus'ın Atandı olarak göründüğünü doğrulayın.

  4. Cloud projenizde Classroom API'yi etkinleştirin.

    Classroom API'yi etkinleştirme

  5. Cloud projenizde Google Workspace Marketplace SDK'sını etkinleştirin.

    Google Workspace Marketplace SDK'sını etkinleştirme

  6. Marketplace SDK Uygulama Yapılandırması Uygulama Görünürlüğü'nü özel olarak ayarlayın.

  7. Marketplace SDK'sındaki zorunlu alanları doldurun. Mağaza Girişi sayfasında YAYINLA'yı tıklayın. Uygulama girişi yayınlandıktan sonra, alandaki kullanıcılar uygulamayı Google Workspace Marketplace'te veya Mağaza Girişi sayfasında gösterilen Uygulama URL'sini ziyaret ederek bulup yükleyebilir.

OAuth 2.0

Classroom API'ye erişmek için kullanıcı verilerine erişim izni gerekir. Bunlar, oturum açmış kullanıcı için OAuth kapsamlarına Google erişimi isteğinde bulunularak ve Google Classroom'a API çağrıları yapmak için kullanılabilecek bir jeton alınarak elde edilir. Kapsamlar, Google Workspace Marketplace mağaza listesinde yapılandırılmalıdır. Böylece alan yöneticisi, eklentiyi yükleyen alan kullanıcıları adına izin verebilir.

Classroom kapsamları hassas olduğundan eklentinizi başlatmadan önce OAuth doğrulaması isteğinde bulunmanız gerekir. Aksi takdirde kullanıcılar, uygulamanın doğrulanmadığına dair bir uyarı mesajı görür ve yalnızca az sayıda kullanıcı ürününüze erişebilir. Doğrulama hakkında daha fazla bilgi için inceleme sırasına genel bakış konusunu inceleyin.

Mevcut tüm kapsamların ve bunların kullanım alanlarının ayrıntılı listesi için Google API'leri için OAuth Kapsamları sayfasına bakın. Genel OAuth yapılandırma bilgileri için Workspace belgelerindeki OAuth sayfasını yapılandırma başlıklı makaleye bakın.

Kullanıcı izinleri

Web uygulamanız aşağıdaki kapsamların en az birini istemelidir:

  • https://www.googleapis.com/auth/userinfo.email, kullanıcının e-posta adresinin bir uygulama tarafından görüntülenmesine olanak tanır.
  • https://www.googleapis.com/auth/userinfo.profile, bu izin sayesinde uygulamalar; portre, ad ve soyad gibi kişisel bilgilerin yanı sıra kullanıcının herkese açık hale getirdiği diğer kişisel bilgilere erişebilir.

Bir kullanıcı, eklentinizde bu kapsamlardan birini yetkilendirdikten sonra login_hint sorgu parametresiyle tanımlanır. Bu parametre, bir iframe açıldığında web uygulamanızın URL'lerine iletilir. Kullanıcı bu kapsamların birini yetkilendirmediyse login_hint gönderilmez.

login_hint, Google ile Oturum Açma'yı kullanırken veya OAuth jetonu isterken Google'a isteğe bağlı olarak iletebileceğiniz standart bir OpenID Connect parametresidir. Bu, son kullanıcı için yetkilendirme deneyimini daha sorunsuz hale getirmeyi amaçlar.

Classroom eklentilerinin kapsamları

Aşağıdaki kapsamlar Classroom eklentilerine özeldir:

  • https://www.googleapis.com/auth/classroom.addons.teacher, tüm API yöntemlerine erişime izin verir.
  • https://www.googleapis.com/auth/classroom.addons.student, bu da başlatma doğrulama ve ek okuma işlemlerine erişime izin verir.

Kullanıcının kimlik bilgilerini belirten geçerli bir OAuth erişim jetonu olsa bile API çağrıları ek şartlara tabidir:

  • Tüm yöntemler, kullanıcının istekte courseId ile belirtilen kursta öğretmen veya öğrenci olmasını gerektirir.
  • Ek oluşturma, güncelleme, silme ve not aktarma işlemleri için kullanıcının öğretmen olması gerekir.
  • Belirli bir Google Classroom yayınına yapılan çağrılar aşağıdaki kontrollerle sınırlanır.
    • Bir eklenti, yayında en az bir ek içeriyorsa şu isteklerde bulunabilir:
      • iframe başlatma doğrulama
      • Ek okuma, güncelleme ve silme işlemleri
      • İlgili yayındaki not güncellemeleri
    • Ek Bulma iFrame'i ilk kez açıldığında, eklentinin henüz yayında eki olmayabilir. Aşağıdaki istekleri yapmak için kullanılabilecek bir addOnToken sorgu parametresi sağlanır:
      • Yayın altında ek oluşturma (addOnToken gereklidir)
      • Başlatma doğrulaması (addOnToken sağlanırsa doğrulanır ve eklentinin yayında mevcut bir eki yoksa gereklidir)

OAuth doğrulaması

Classroom eklentileri, Google kullanıcılarının verilerine erişmek için Google API'lerini kullanır.

Doğrulama süreci hakkında daha fazla bilgi için OAuth API doğrulamasıyla ilgili SSS başlıklı makaleyi inceleyin.

Google Workspace Marketplace listelemesi

Genel Google Workspace Marketplace SDK yapılandırma bilgileri için Google Workspace Marketplace SDK'sını etkinleştirme ve yapılandırma ile Google Workspace Marketplace'te mağaza girişi oluşturma başlıklı makaleleri inceleyin.

Listelemeyle ilgili dikkat edilmesi gereken noktalar

Herkese açık Google Cloud projenizin Marketplace SDK Store Girişi, uygulamanızın adını ve son kullanıcılara yönelik açıklamalarını belirtir. Bu bilgileri Uygulama Ayrıntıları bölümünde birden fazla dilde sağlayabilirsiniz.

Listelemelerinizde aşağıdaki yönergeleri uygulayın:

  • Uygulama Ayrıntıları bölümünde:
    • Uygulama adında noktalama işaretleri kullanmayın. Örneğin, "My Company: My Add-on" veya "My Add-on, by My Company" yerine "My Add-on by My Company" ifadesini kullanın.
    • Kısa Açıklama ve Ayrıntılı Açıklama aynı metni içermemelidir.
    • Fiyatlandırma alanı için bir değer seçtiğinizden emin olun. Bu alanda Ücretsiz, Ücretsiz denemesi olan ücretli uygulama, Ücretsiz özellikleri olan ücretli uygulama ve Ücretli fiyatlandırma seçenekleri bulunur. Marketplace girişinde maliyet tutarını belirtmeniz gerekmez.
    • Kategori alanı için bir değer seçtiğinizden emin olun. Akademik Kaynaklar veya Öğretmen ve Yönetici Araçları, Classroom eklentisi için iyi seçenekler olabilir.
    • Daha fazla bilgi için Marketplace'in Uygulama ayrıntıları açıklaması bölümünde listelenen öğelere bakın.

Google'ın lisanslama ve faturalandırma hizmetleriyle entegrasyon

Google Workspace Marketplace uygulamalarınızın Google'ın lisanslama ve faturalandırma hizmetleriyle entegre olmasını istiyorsanız Marketplace API'yi ziyaret edin.

Yükleme ayarları

Eklentiler, yönetici yüklemesinin yanı sıra bireysel yüklemeye de izin verebilir. Bu sayfada, iki yükleme türü arasındaki bazı farklar vurgulanmaktadır. Amaç, yükleme türlerinden birini tanıtmak değildir. Google Workspace Marketplace SDK Uygulama Yapılandırması sayfasında bireysel yüklemeye izin verip vermeyeceğinizi seçebilirsiniz.

Yönetici yüklemesi

Yönetici yüklemeleri, yöneticilerin bir eklentiyi bir alandaki tüm hesaplara veya belirli erişim gruplarına ya da kuruluş birimlerine eklemesine olanak tanır. Yalnızca alan yöneticisi, yönetici yüklemesi yapabilir. Yönetici, isteğe bağlı olarak alandaki tüm kullanıcılar adına tüm erişim kapsamlarını onaylayabilir. Yönetici bunu yapmayı seçerse kullanıcılardan herhangi bir erişim kapsamını onaylamaları istenmez.

Yönetici yüklemesiyle ilgili olarak göz önünde bulundurmanız gereken bazı noktalar aşağıda verilmiştir.

  • Daha sıkı kontroller. Yöneticiler, hangi kullanıcıların eklentiye erişebileceğini kısıtlayabilir.
  • Lisanslama ile uyumluluk. Uygulamanız için lisans gerekiyorsa yüklemeleri bir yönetici üzerinden yönlendirmek, lisansların ilgili kurumda uygun şekilde dağıtılıp kullanılmasını sağlamaya yardımcı olabilir.
  • Son kullanıcıların yükünü azaltır. Yönetici tarafından yapılan yükleme, öğretmenler ve öğrenciler için kurulum yükünü azaltır. Bu durum, daha az tıklama ve daha az kafa karışıklığı fırsatıyla daha sorunsuz bir kullanıcı deneyimi sunabilir.

Yönetici yüklemelerini gerçekleştirme hakkında daha fazla bilgi için Marketplace uygulamalarını alanınıza yükleme, kuruluş birimleri ve erişim grupları hakkında daha fazla bilgi için Kuruluş yapısının işleyiş şekli başlıklı makaleyi inceleyin.

Bağımsız yükleme

Bireysel yüklemeler, kullanıcının kendi hesabına bir eklenti ekler. Kullanıcıdan, yükleme sırasında eklentinin erişim kapsamlarına izin vermesi istenir.

Aşağıda, tek tek yükleme ile ilgili bazı hususlar verilmiştir.

  • Benimsemeyi kolaylaştırın. Daha fazla kullanıcı, Google Workspace Marketplace'ten eklentinizi görebilir ve yükleyebilir. Eklentilerin tek tek yüklenmesine izin vermek, daha fazla öğretmenin ürününüzü kullanmasını veya önermesini sağlayabilir.
  • Yönetici testi. Bir yönetici, eklentiyi daha geniş bir grup için onaylamadan veya yüklemeden önce test etmek ya da değerlendirmek amacıyla tek tek yükleyebilir.

Yöneticiler, kullanıcılar adına eklenti yüklemenin yanı sıra kullanıcıların tek tek yüklemeye izin veren eklentileri yüklemesine olanak tanıyan bir izin verilenler listesi de tutabilir. Bir eklenti izin verilenler listesinde değilse kullanıcılar eklentinin Google Workspace Marketplace'teki girişini görmeye devam edebilir ancak eklentiyi yükleyemez. Bunun yerine, eklentinin bir alan yöneticisi tarafından yüklenmesine izin verilmediğini açıklayan bir mesaj görürler. Bu davranış hakkında daha fazla bilgi edinmek için İzin verilenler listenizdeki Google Workspace Marketplace uygulamalarını yönetme başlıklı makaleyi inceleyin.

Daha fazla bilgi için Google Workspace Marketplace yükleme ayarları dokümanlarına göz atın.

Uygulama Entegrasyonu

Ek Kurulum URI'si alanına bir başlatma iframe URL'si sağlamanız gerekir. Bu URL, Ek Bulma iframe'i için iframe src değeri olarak kullanılır. Ek Bulma iframe'i, öğretmenler tarafından ödevlerine ekleyecekleri içerikleri veya etkinlikleri bulmak için kullanılır. Google Cloud projesi konsolunda ayarlanabilir.

iFrame URI yapılandırması

İzin Verilen Ek URI Önekleri, *.addOnAttachments.create ve *.addOnAttachments.patch yöntemleri kullanılarak bir AddOnAttachment içinde ayarlanan URI'leri doğrulamak için kullanılır. Doğrulama, tam dize önek eşleşmesidir ve joker karakterlerin kullanılmasına izin vermez.

Ayrıca, eklentinizden eklerin alınmasına izin verilen tüm URI ön eklerini de belirtmeniz gerekir. Bu özellik, yetkisiz kaynaklardan gelen ekleri engelleyerek güvenliği artırır.

Bu değerlerin her ikisini de Google Cloud projenizin Marketplace SDK Uygulama Yapılandırması sayfasında ayarlayın.

Test hesapları

Özel eklentinizin doğru şekilde çalıştığını doğrulamak için demo alanınızda test hesapları oluşturun. Öğrenci Çalışması İnceleme iFrame'inde öğrenciler arasında geçişi test etmek için iki öğrenci hesabı gerekir.

Önerilen test hesapları:

  • Tammy Teacher, tammy.teacher@<your demo domain>
  • Öğrenci Sam, sam.student@<your demo domain>
  • Öğrenci Sema, sally.student@<your demo domain>

Yeni bir test hesabı oluşturmak için aşağıdaki prosedürü uygulayın:

  1. Yönetici Konsolunuza giriş yapın.
  2. Kullanıcılar'a gidin.
  3. Yeni kullanıcı ekle'yi tıklayın (Şekil 1'e bakın).
  4. Kullanıcının bilgilerini girin ve uygun rolleri atayın.

Yeni kullanıcı ekle&#39;yi tıklayın. 1.Şekil Yönetici Konsolu'ndaki Yeni kullanıcı ekle bağlantısının konumu.

Yeni bir test grubu oluşturmak için aşağıdaki prosedürü uygulayın:

  1. Yönetici Konsolunuza giriş yapın.
  2. Gruplar'a gidin.
  3. Grup oluştur'u tıklayın (Şekil 2'ye bakın).
  4. Grubun üyelerini ve sahiplerini girin.

Grup oluştur&#39;u tıklayın. Şekil 2. Yönetici Konsolu'ndaki Grup oluştur bağlantısının konumu.