Bu belgede, Google Site Doğrulama API'sini kullanmak için ihtiyacınız olan arka plan bilgileri ayrıntılı bir şekilde açıklanmaktadır.
Giriş
Google Site Doğrulama API'si, Bir sitenin veya alanın sahipliğini doğrulama işlemini otomatikleştirme. Bu önemli çünkü Google hizmetleri yalnızca web sitesi veya alan adı sahipleri tarafından kullanılabilir. Google Site Doğrulama API'sini şu amaçlarla kullanabilirsiniz: kimliği doğrulanmış kullanıcının, alan adının veya sitenin sahibi olduğunu doğrulamanızı diğer Google hizmetlerinin temel hazırlığını programlı şekilde yapmanız gerekir.
Bu belgede web programlama kavramları, web veri biçimleri ve web sitenizin veya alanınızın dosyalarını ya da DNS kayıtlarını programatik olarak değiştirebildiğiniz için.
Genel Bakış
Bir kullanıcının Google site doğrulama verilerini değiştirmek için Google Site Doğrulama API'sini kullanabilirsiniz. Kullanıcılar şunları yapabilir: Doğrulama verileri, sitenin sahibi olduğunu gösteriyorsa belirli Google hizmetlerine erişebilir. web sitesi alanına dahil edilir. Kimlik doğrulaması için doğrulama jetonları oluşturmak üzere API'yi kullanabilirsiniz ve bu kodları kullanıcılarınızın web sitelerine ya da alan kayıtlarınıza anlamına gelir. Jeton sağlandıktan sonra, Google'dan kodu kontrol etmesini istemek için API'ye bir çağrı yaparsınız. jeton. Google jetonu bulursa kimliği doğrulanmış kullanıcıyı web sitesinin sahibi olarak kaydeder veya alan adıyla değiştirin. Ayrıca, API'yı kullanıcı adına sahiplik listesini değiştirmek veya site sahipliğini tamamen kaldırabilirsiniz.
Tüm API çağrılarının, kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmesi gerekir ve tüm API çağrıları yürütülür kimliği doğrulanmış kullanıcının hesabı bağlamında değerlendirilir.
Bu API'yi ne zaman kullanabileceğinize dair somut bir örnek olarak, bir web barındırma hizmeti sağladığınızı varsayalım. Kullanıcılarınız Google Search Console'u kullanabilmek istiyor web sitelerini ziyaret ediyor. Bunu yapabilmeleri için Google'ın, bu güncellemelerin o kadar iyi. Bu nedenle, kullanıcılarınıza alanlarını doğrulamalarını isteyen bir arayüz sunarsınız. sahibi olduğunuzu doğrulamaktır. Uygulamanızın doğrulama verilerine erişmesine izin verir ve artık kendisi adına bir jeton isteyen ve bunu sitelerindeki bir dosyaya yerleştiren bir kod yürütüyor kontrol eder ve Google'dan bunu kontrol etmesini ister. Google jetonu bulduğunda, doğrulama verilerini güncelleyerek siteyi kullanıcıya bildirir. Artık Search Console'u kullanarak kolayca bulabilir.
Başlamadan önce
Bir Google Hesabı edinin
Ayarlanmış bir Google Hesabınız olduğundan emin olmanız gerekir. Yanlışlıkla veri kaybına karşı kendinizi korumak amacıyla geliştirme ve test amacıyla ayrı bir Google Hesabı kullanmanızı öneririz.
Site Doğrulama hakkında bilgi edinin
Google Site Verification API'sı kavramlarına aşina değilseniz bu dokümanı okumalı, doğrulama kullanıcı arayüzü ile denemeler yapmalı ve koda başlamadan önce ilgili yardım belgelerini okumalısınız.
İstekleri nasıl yetkilendireceğinizi öğrenin
Uygulamanızın Google Site Doğrulama API'sine gönderdiği her isteğin bir yetkilendirme jetonu içermesi gerekir. 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 Site Doğrulama API'sine yapılan 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:
- 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.
- Google API Konsolu'nda Google Site Doğrulama API'sini etkinleştirin. (API, API Konsolu'nda listelenmemişse bu adımı atlayın.)
- Uygulamanız kullanıcı verilerine erişmesi gerektiğinde Google'dan belirli bir erişim kapsamı ister.
- Google, kullanıcıya uygulamanızı kullanıcının verilerinden bazılarını istemeye yetkilendirmesi için bir onay ekranı gösterir.
- Kullanıcı onaylarsa Google, uygulamanıza kısa süreli bir erişim jetonu verir.
- Uygulamanız, erişim jetonunu isteğe ekleyerek kullanıcı verileri için istekte bulunur.
- 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 Site Doğrulama API'si için OAuth 2.0 kapsam bilgileri aşağıda verilmiştir:
Kapsam | Anlamı |
---|---|
https://www.googleapis.com/auth/siteverification |
Mevcut doğrulanmış siteler için tam okuma erişimi ve yeni siteleri doğrulama yetkisi. |
https://www.googleapis.com/auth/siteverification.verify_only |
Yeni siteleri doğrulayabilir, mevcut doğrulanmış siteler için okuma erişimi yoktur. |
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.
Google Site Doğrulama API arka planı
Kavramlar
Bir kullanıcının aşağıdaki web kaynağı türleri üzerindeki sahipliğini belirlemek için Google Site Verification API'sını kullanabilirsiniz:
- Alan adı: Alan adı veya alt alan adı. Bir alan adının sahibi,
Söz konusu alan altındaki tüm sitelerin ve alt alanların sahibi olmalıdır. Örneğin,
bar.com
işletmesinin doğrudan sahibi aynı zamandafoo.bar.com
sitesinin dolaylı sahibi olarak da kabul edilir. - Site: Bir web sitesinin temel alan adına ve yoluna karşılık gelen URL. Bir sitenin sahibi, sitenin altındaki tüm sitelerin sahibi olarak kabul edilir. Örneğin, "http://www.example.com/site"nin sahibi, "http://www.example.com/site/altsite"nin de sahibi olarak kabul edilir.
Alan adı sahipliği, site sahipliğinden daha geniş kapsamda geçerli olduğundan, mümkün olduğunda alan adlarıyla doğrulama yapmanızı öneririz.
Sahiplik belirleme süreci, uygulamanızın kullanıcı adına bir "doğrulama jetonu" istemesiyle başlar. Doğrulama jetonu, kodunuzun daha sonra web sitesine veya alan adına yerleştirilmesi gereken özel bir dizedir. Jeton uygulandıktan sonra uygulamanız, Google Site Doğrulama API'sine istekte bulunabilir. Bu API, jetonu kontrol eden ve jeton bulunduğunda sahipliği kaydeden bir programdır.
Sınırlamalar
Google Site Verification API, güvenlikle ilgili ve teknik nedenlerle, kullanım şekline ilişkin bazı kısıtlamalar uygular:
- Yalnızca kimliği doğrulanmış kullanıcı için veri erişimi: Tüm işlemler için kullanıcının kimlik doğrulaması ve yetkilendirmesi gerekir.
- Yalnızca kimliği doğrulanmış kullanıcı için doğrulama: API yalnızca kimliği doğrulanmış geçerli hesaba ilişkin sitelerin veya alanların sahipliğini doğrulayabilir. Ancak, kimliği doğrulanmış kullanıcı bir sitenin sahipliği doğrulandıktan sonra başka kullanıcılara sahiplik yetkisi verebilir. Sahiplik listesinde değişiklik yapıldığında tüm sahiplerin e-postayla bilgilendirildiğini unutmayın.
- Yalnızca normalleştirilmiş URL'ler ve alan adları. Google Site Doğrulama API'si, IDN (Uluslararası Alan Adı) kodlamasını desteklemez. Gerekirse tüm URL'leri, alan adlarını ve e-posta adresi alanlarını, Punycoding özelliğini kullanarak standart alan adı karakter kümesine (RFC 1034 §3.5) göre normalleştirdiğinizden emin olun.
Doğrulama yöntemleri ve jetonlar
Bu API, doğrulamanın ayrı aşamaları için çağrı sağlar:
- Doğrulama jetonunu yerleştirme: Kimliği doğrulanmış kullanıcının sitesine yerleştirilecek bir doğrulama jetonunu almak için bir API çağrısı vardır. Bir kullanıcının birden fazla sitesi varsa her site için farklı bir jeton almanız gerekir.
- Doğrulama jetonunun olup olmadığını kontrol etme: Kimliği doğrulanan kullanıcının bir sitenin sahibi olduğunu doğrulamak için Google'ın jetonu kontrol etmesini isteyen ayrı bir API çağrısı vardır.
Uygulamanızda kullanabileceğiniz bir web sitesini veya alanı doğrulamak için çeşitli yöntemler vardır: ihtiyaçlarınıza en uygun olanı seçebilirsiniz. Jetonun nereye yerleştirileceği ve jetonun türü, hangi doğrulama yöntemini seçtiğinize bağlıdır.
Alan adı doğrulama yöntemi
Alanlar için iki doğrulama yöntemi vardır:
- DNS_CNAME
-
Uygulamanız, kayıt verilerinin jetonunu kullanarak alan sahibinin alanı için yeni bir CNAME kaydı oluşturur (muhtemelen kendi alan adı kayıt operatörü aracılığıyla). Jeton, boşlukla ayrılmış iki bölümden oluşur: İlk bölüm yeni CNAME kaydının adı, ikinci bölüm ise yeni CNAME kaydının değeridir.
- DNS_TXT
-
Uygulamanız, kayıt verilerinin jetonunu kullanarak alan sahibinin alanı için muhtemelen kullanıcının alan adı kayıt sitesi aracılığıyla yeni bir TXT kaydı oluşturur.
Daha fazla bilgi edinmek için DNS doğrulama yöntemi ile ilgili yardım merkezi dokümanlarına göz atın.
Site doğrulama yöntemleri
Siteler için üç doğrulama yöntemi kullanılabilir:
- Dosya
- Uygulamanız, jetonu dosya biçimindeki sahibinin web sitesine yerleştirir. Jeton dizesiyle eşleşecek şekilde adlandırılmış ve aşağıdaki içeriğe sahip bir dosya oluşturmanız gerekir:
google-site-verification: token
Örneğin, http://www.example.com/ sitesinin sahibi bir kullanıcıysa ve döndürülen jeton
google12cfc68677988bb4.html
ise http://www.example.com/google12cfc68677988bb4.html (sitenin en üst düzeyinde) adresinde aşağıdaki içeriğe sahip bir dosya oluşturmanız yeterlidir:google-site-verification: google12cfc8677988bb4.html
Daha fazla bilgi edinmek için Dosya doğrulama yöntemi ile ilgili yardım merkezi dokümanlarına göz atın.
- Meta
-
Uygulamanız, jetonu HTML
<meta>
etiketi biçiminde, varsayılan dosyanın (index.html, default.html vb.)<head>
öğesinin içine, sahibin sitesinin en üst düzeyinde ekler. Meta doğrulama jetonu içeren bir HTML dosyası aşağıdaki gibi görünebilir:<html> <head> <title>Awesome Dive Sites</title> <meta name="google-site-verification" content="-dhsoFQadgDKJR7BsB6bc1j5yfqjUpg_b-1pFjr7o3x" /> </head> <body> ...
Daha fazla bilgi edinmek için Meta doğrulama yöntemi ile ilgili yardım merkezi dokümanlarına göz atın.
- Analiz
-
Uygulamanız, zaten sahibinin web sitesinde bulunan mevcut bir Google Analytics izleme kodunu kullanıyorsa. İzleme kodunun Analytics hesabına ait olması ve snippet'in çalışması için HEAD etiketinin içinde olması gerekir. Daha fazla bilgi için Analytics doğrulama yöntemi ile ilgili yardım merkezi belgelerini inceleyin.
- Etiket Yöneticisi
-
Uygulamanız, halihazırda sahibinin web sitesinde bulunan mevcut bir Google Etiket Yöneticisi kapsayıcı kodunu kullanıyor. Kapsayıcı kodu, müşterinin Etiket Yöneticisi hesabına ait olmalıdır. Daha fazla bilgi edinmek için Etiket Yöneticisi doğrulama yöntemi ile ilgili yardım merkezi belgelerini inceleyin.
İlk önce Site Doğrulama kullanıcı arayüzü ile birkaç siteyi manuel olarak doğrulamayı denerseniz bu, temel kavramları ve iş akışını anlamanıza yardımcı olabilir.
Veri modeli
Web Kaynağı
Google Site Doğrulama API'si, web kaynakları adı verilen varlıklara REST semantiği (HTTP GET
, POST
vb.) uygular. Web Kaynağı, kimliği doğrulanmış kullanıcıya ait bir web sitesi veya alan adıdır.
Aşağıda bir web kaynağı örneği verilmiştir:
{ "owners": [ "myself@example.com", "another@example.com" ], "id": "http%3A%2F%2Fwww.example.com%2F", "site": { "identifier": "http://www.example.com/", "type": "SITE" } }
id
alanı, bu web kaynağının benzersiz tanımlayıcısıdır. Alma ve değiştirme amacıyla bu web kaynağına başvurmak için kullanırsınız. list işleminin çıkışındaki id
alanını daha sonra tanımlayıcı olarak kullanmak üzere saklayın.
site
nesnesi, web kaynağının URL'sini veya alan adını ve kaynağın türünü içerir. Siteler SITE
türüyle belirtilir; alan adları INET_DOMAIN
türüyle belirtilmiş.
owners
dizisi, web kaynağının e-posta adresleriyle gösterilen tam sahiplerinin listesidir. Kimliği doğrulanmış kullanıcı, sahipler listesine e-posta adresleri ekleyerek veya listeden e-posta adreslerini kaldırarak ortak sahiplik verebilir veya diğer kullanıcıların sahipliğini iptal edebilir. Siteye veya alana kendi jetonlarını yerleştiren ek sahipler de ortak sahipleriyle birlikte sahipler listesinde görünür.
Sitede jetonu olan en az bir doğrulanmış sahip olduğu sürece, ortak sahiplik verilen kullanıcılar da ortak sahiplik verebilir.
Web Kaynağı Koleksiyonu
Web kaynağı koleksiyonu, kimliği doğrulanmış kullanıcıya ait tüm web kaynaklarının eksiksiz bir listesidir. Sitelerin veya alan adlarının sahipliğini, kimliği doğrulanan kullanıcının web kaynağı koleksiyonuna yeni web kaynakları eklemeyi deneyerek doğrulayabilirsiniz. Yalnızca doğrulanmış siteler veya alan adları koleksiyonlarına başarıyla eklenir.
Daha önce Sınırlamalar bölümünde belirtildiği gibi, kimliği doğrulanmış kullanıcı dışındaki kullanıcılara ait web kaynaklarına Site Doğrulama API'si üzerinden erişilemez.