OAuth

Not: Bu dokümanda, diğer tarafların verilerine erişim isteğinde bulunmak için kullanılan üç aşamalı OAuth2 akışı açıklanmaktadır. Müşterilerinizin Merchant Center hesaplarına erişmesi gereken bir üçüncü taraf uygulaması geliştiriyorsanız bu kimlik doğrulama akışını kullanın. Yalnızca kendi Merchant Center hesabınıza erişecek bir şirket içi uygulama geliştiriyorsanız, lütfen Hizmet Hesapları kılavuzunu inceleyin.

Uygulamanızın Google Content API for Shopping'e 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 Content API for Shopping'e gönderilen tüm istekler, kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmelidir.

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 Alışveriş için Google Content 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.

Alışveriş için Google Content API için OAuth 2.0 kapsam bilgileri şöyledir:

Kapsam Anlamı
https://www.googleapis.com/auth/content Okuma/yazma erişimi.

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.

OAuth kapsamlarını al

Kapsam seçimiyle ilgili sorunları önlemek için ek yetkilendirme kullanmanızı öneririz.

Birden fazla istek gönderirseniz uygulamanızın izin ekranında OAuth kapsamları varsayılan olarak seçili olmaz. Uygulamanız izin ekranını kullanıcıya gösterdiğinde, kullanıcının erişimi yetkilendirmek için her kapsamı manuel olarak seçmesi gerekir.

Uygun kapsamları aldığınızı doğrulamak için bir OAuth isteğinin yanıtını kontrol edin.

Daha fazla bilgi için OAuth 2.0 Politikaları sayfasına bakın.

Uygulama doğrulama isteğinde bulunma

Content API'ye erişen tüm uygulamalar, OAuth doğrulama inceleme sürecinden geçmelidir. Content API'ye erişen doğrulanmamış uygulamaların kullanıcıları uyarı alır ve uygulamaları sınırlı işlevlere sahip olur. Bu bağlamda bir uygulama, Google Cloud'da benzersiz bir OAuth 2.0 İstemci Kimliği olarak tanımlanır.

Doğrulama işleminin tamamlanması genellikle 3-5 iş günü sürer. Süreç hakkında daha fazla bilgi edinmek ve doğrulama isteği göndermek için Uygulamalar için doğrulama bölümüne bakın.

Bu politika tüm uygulamalar için geçerlidir. İş kesintileri yaşamamak için tüm uygulamaların en kısa sürede Google OAuth doğrulama sürecinden geçmesini öneririz.

Yetkilendirme Örneği

Aşağıdaki kod, web uygulamaları için OAuth 2.0 kullanarak istemcinizi nasıl yapılandıracağınızı ve istekleri nasıl yetkilendireceğinizi göstermektedir. Diğer diller için Örnekler ve Kitaplıklar sayfamızı ziyaret edebilirsiniz.

PHP

Bu örnekte Web Uygulama akışı kullanılmıştır. Yönlendirme URI'si bu PHP sayfasının URI'si olmalıdır.

<?php
require_once 'Google/Client.php';

session_start();

$client = new Google_Client();
$client->setApplicationName('Sample Content API application');
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_CLIENT_SECRET');
$client->setRedirectUri('YOUR_REDIRECT_URI');
$client->setScopes('https://www.googleapis.com/auth/content');

if (isset($_SESSION['oauth_access_token'])) {
  $client->setAccessToken($_SESSION['oauth_access_token']);
} elseif (isset($_GET['code'])) {
  $token = $client->authenticate($_GET['code']);
  $_SESSION['oauth_access_token'] = $token;
} else {
  header('Location: ' . $client->createAuthUrl());
  exit;
}

Kimliğinizi doğruladığınıza göre API isteklerinde bulunmak için bir Hizmet nesnesi oluşturabilirsiniz.

require_once 'Google/Service/ShoppingContent.php';

$service = new Google_Service_ShoppingContent($client);