Memulai

Dokumen ini menjelaskan pengetahuan latar belakang yang Anda perlukan untuk menggunakan Google Site Verification API.

Pengantar

Google Site Verification API ditujukan untuk pengembang yang ingin membuat aplikasi atau layanan yang mengotomatiskan proses verifikasi kepemilikan situs atau domain. Ini penting, karena beberapa Layanan Google hanya dapat digunakan oleh pemilik situs atau domain. Anda dapat menggunakan Google Site Verification API untuk memvalidasi bahwa pengguna yang diautentikasi adalah pemilik domain atau situs, mungkin sebagai dalam menyediakan layanan Google lainnya secara terprogram.

Dokumen ini mengasumsikan bahwa Anda sudah familier dengan konsep pemrograman web, format data web, dan dapat mengubah file atau data DNS situs atau domain Anda secara terprogram.

Ringkasan

Anda dapat menggunakan Google Site Verification API untuk mengubah data verifikasi situs Google milik pengguna. Pengguna hanya dapat mengakses layanan Google tertentu jika data verifikasi mereka menunjukkan bahwa mereka adalah pemilik domain situs tertentu. Anda dapat menggunakan API untuk membuat token verifikasi untuk autentikasi yang dapat ditempatkan kode Anda dengan berbagai cara di situs atau data domain di nama Anda. Setelah token diterapkan, Anda melakukan panggilan ke API untuk meminta Google memeriksa sebelumnya yang benar. Jika menemukan token, Google akan mendaftarkan pengguna yang diautentikasi sebagai pemilik situs atau domain. Anda juga dapat menggunakan API untuk mengubah daftar kepemilikan atas nama pengguna, atau untuk menghapus kepemilikan situs sepenuhnya.

Semua panggilan API harus diotorisasi oleh pengguna yang terautentikasi, dan semua panggilan API dijalankan dalam konteks akun pengguna yang diotentikasi.

Sebagai contoh konkret kapan Anda mungkin menggunakan API ini, misalkan Anda menyediakan layanan hosting web. Pengguna Anda ingin dapat menggunakan Search Console Google untuk mendapatkan informasi tentang situs mereka. Agar mereka dapat melakukan ini, Google perlu mengetahui bahwa mereka benar-benar memilikinya. Jadi, Anda memberi pengguna antarmuka yang meminta mereka memverifikasi kepemilikan situs. Mereka memberi aplikasi Anda akses ke data verifikasi mereka, dan itu bisa sekarang mengeksekusi kode yang meminta token atas nama mereka, menempatkannya dalam file di situs mereka dan meminta Google untuk memeriksanya. Saat menemukan token, Google akan memberikan kepemilikan situs kepada pengguna dengan memperbarui data verifikasi mereka. Kini mereka dapat menggunakan Search Console untuk mendapatkan informasi yang mereka inginkan.

Sebelum memulai

Membuat Akun Google

Anda harus memastikan bahwa Anda telah menyiapkan Akun Google. Sebaiknya gunakan Akun Google terpisah untuk tujuan pengembangan dan pengujian guna melindungi diri Anda dari kehilangan data yang tidak disengaja.

Memahami Verifikasi Situs

Jika belum memahami konsep Google Site Verification API, Anda harus membaca dokumen ini, bereksperimen dengan antarmuka pengguna verifikasi, dan membaca dokumentasi bantuan terkait sebelum mulai membuat kode.

Pelajari cara mengizinkan permintaan

Setiap permintaan yang dikirimkan aplikasi Anda ke Google Site Verification API harus menyertakan token otorisasi. Token ini juga mengidentifikasi aplikasi Anda ke Google.

Tentang protokol otorisasi

Aplikasi Anda harus menggunakan OAuth 2.0 untuk mengizinkan permintaan. Tidak ada protokol otorisasi lain yang didukung. Jika aplikasi Anda menggunakan Login dengan Google, beberapa aspek otorisasi akan ditangani untuk Anda.

Mengizinkan permintaan dengan OAuth 2.0

Semua permintaan ke Google Site Verification API harus diizinkan oleh pengguna terautentikasi.

Detail proses otorisasi, atau "alur", untuk OAuth 2.0 bervariasi bergantung pada jenis aplikasi yang Anda tulis. Proses umum berikut berlaku untuk semua jenis aplikasi:

  1. Saat membuat aplikasi, Anda mendaftarkannya menggunakan Konsol Google API. Selanjutnya, Google menyediakan informasi yang akan Anda perlukan nanti, seperti ID klien dan rahasia klien.
  2. Aktifkan Google Site Verification API di Konsol API Google. (Jika API tidak tercantum di Konsol API, lewati langkah ini.)
  3. Saat memerlukan akses ke data pengguna, aplikasi Anda akan meminta cakupan akses tertentu kepada Google.
  4. Google menampilkan layar izin kepada pengguna, yang meminta mereka mengizinkan aplikasi Anda untuk meminta beberapa data.
  5. Jika pengguna menyetujui, Google akan memberikan token akses berumur singkat ke aplikasi Anda.
  6. Aplikasi Anda meminta data pengguna, dengan menambahkan token akses ke permintaan.
  7. Jika Google menentukan bahwa permintaan Anda dan token tersebut valid, data yang diminta akan ditampilkan.

Beberapa alur mencakup langkah tambahan, seperti penggunaan token refresh untuk memperoleh token akses baru. Informasi selengkapnya tentang alur untuk berbagai jenis aplikasi dapat dilihat di dokumentasi OAuth 2.0 Google.

Berikut adalah informasi cakupan OAuth 2.0 untuk Google Site Verification API:

Cakupan Arti
https://www.googleapis.com/auth/siteverification Akses baca penuh untuk situs terverifikasi yang sudah ada, kemampuan untuk memverifikasi situs baru.
https://www.googleapis.com/auth/siteverification.verify_only Kemampuan untuk memverifikasi situs baru, tidak ada akses baca untuk situs terverifikasi yang sudah ada.

Untuk meminta akses menggunakan OAuth 2.0, aplikasi Anda memerlukan informasi cakupan, serta informasi yang disediakan oleh Google saat Anda mendaftarkan aplikasi (seperti ID klien dan rahasia klien).

Tips: Library klien Google API dapat menangani beberapa proses otorisasi secara otomatis. Library klien ini tersedia untuk berbagai bahasa pemrograman. Periksa halaman yang menjelaskan library beserta contohnya untuk mendapatkan informasi lebih mendetail.

Latar belakang Google Site Verification API

Konsep

Anda dapat menggunakan Google Site Verification API untuk menetapkan kepemilikan pengguna atas jenis referensi web berikut:

  • Domain: Domain atau subdomain. Pemilik domain dianggap sebagai pemilik semua situs dan subdomain di bawah domain tersebut. Misalnya, pemilik langsung bar.com juga dianggap sebagai pemilik tidak langsung foo.bar.com.
  • Situs: URL yang sesuai dengan domain dasar dan jalur situs. Pemilik situs dianggap sebagai pemilik semua situs di bawahnya. Misalnya, pemilik “http://www.example.com/site” juga dianggap sebagai pemilik “http://www.example.com/site/subsite”.

Karena kepemilikan domain berlaku secara lebih luas dibandingkan kepemilikan situs, sebaiknya Anda melakukan verifikasi dengan domain jika memungkinkan.

Proses menetapkan kepemilikan dimulai dengan aplikasi Anda meminta “token verifikasi” atas nama pengguna. Token verifikasi adalah string khusus yang harus ditempatkan oleh kode Anda di situs atau domainnya. Setelah token diterapkan, aplikasi Anda dapat membuat permintaan ke Google Site Verification API untuk memeriksa token dan mencatat kepemilikan token tersebut saat ditemukan.

Batasan

Untuk alasan keamanan dan teknis, Google Site Verification API menerapkan beberapa batasan dalam cara penggunaannya:

  • Akses data hanya untuk pengguna yang diautentikasi: Semua operasi memerlukan autentikasi dan otorisasi pengguna.
  • Verifikasi hanya untuk pengguna yang diautentikasi: API hanya dapat memverifikasi kepemilikan situs atau domain untuk akun yang saat ini diautentikasi. Namun, pengguna yang diautentikasi dapat mendelegasikan kepemilikan kepada pengguna lain setelah kepemilikan situs mereka diverifikasi. Perhatikan bahwa semua pemilik akan diberi tahu melalui email setiap kali ada perubahan pada daftar kepemilikan.
  • Hanya URL dan nama domain yang dinormalkan. API Verifikasi Situs Google tidak mendukung pengkodean IDN (Nama Domain Internasional). Pastikan untuk menormalkan semua URL, nama domain, dan domain alamat email ke himpunan karakter nama domain standar (RFC 1034 §3.5) menggunakan Punycoding jika perlu.

Token dan metode verifikasi

API menyediakan panggilan untuk fase verifikasi terpisah:

  • Menempatkan token verifikasi: Ada panggilan API untuk mengambil token verifikasi yang akan ditempatkan di situs pengguna yang diautentikasi. Jika pengguna memiliki lebih dari satu situs, Anda harus mendapatkan token yang berbeda untuk setiap situs.
  • Memeriksa keberadaan token verifikasi: Terdapat panggilan API terpisah untuk meminta Google memeriksa token tersebut untuk memverifikasi bahwa pengguna yang diautentikasi memiliki situs.

Ada beberapa metode untuk memverifikasi situs atau domain yang dapat digunakan aplikasi Anda; yang Anda pilih bergantung pada apa yang paling sesuai dengan kebutuhan Anda. Tempat untuk meletakkan token, serta jenis token itu sendiri, bergantung pada metode verifikasi yang Anda pilih.

Metode verifikasi domain

Ada dua metode verifikasi yang tersedia untuk domain:

DNS_CNAME

Permohonan Anda membuat data CNAME baru untuk domain pemilik, mungkin melalui registrar domain, menggunakan token untuk data data. Token terdiri atas dua bagian yang dipisahkan oleh spasi: bagian pertama adalah nama data CNAME baru, bagian kedua adalah nilai data CNAME baru.

DNS_TXT

Permohonan Anda membuat data TXT baru untuk domain pemilik, mungkin melalui registrar domain, menggunakan token untuk data kumpulan data tersebut.

Lihat dokumentasi pusat bantuan tentang metode verifikasi DNS untuk informasi selengkapnya.

Metode verifikasi situs

Ada tiga metode verifikasi yang tersedia untuk situs:

File
Permohonan Anda menempatkan token, dalam bentuk file, di situs pemilik. Anda harus membuat file yang diberi nama agar sesuai dengan string token, dengan konten berikut:
google-site-verification: token

Misalnya, jika pengguna memiliki situs http://www.example.com/, dan token yang ditampilkan adalah google12cfc68677988bb4.html, Anda hanya perlu membuat file di http://www.example.com/google12cfc68677988bb4.html (di tingkat teratas situs mereka), dengan konten berikut:

google-site-verification: google12cfc8677988bb4.html

Lihat dokumentasi pusat bantuan tentang Metode verifikasi file untuk informasi selengkapnya.

Meta

Aplikasi Anda akan menyisipkan token tersebut, dalam bentuk tag <meta> HTML, dalam elemen <head> file default (index.html, default.html, dll.) di tingkat teratas situs pemilik. File HTML dengan token verifikasi Meta mungkin terlihat seperti ini:

<html>
  <head>
    <title>Awesome Dive Sites</title>
    <meta name="google-site-verification" content="-dhsoFQadgDKJR7BsB6bc1j5yfqjUpg_b-1pFjr7o3x" />
  </head>
  <body>
    ...

Lihat dokumentasi pusat bantuan tentang Metode verifikasi meta untuk informasi selengkapnya.

Analytics

Permohonan Anda menggunakan kode pelacakan Google Analytics yang ada yang sudah ada di situs pemilik. Kode pelacakan harus berasal dari akun Analytics mereka, dan cuplikan harus ditempatkan di tag HEAD agar dapat berfungsi. Lihat dokumentasi pusat bantuan tentang metode verifikasi Analytics untuk informasi lebih lanjut.

Tag Manager

Permohonan Anda menggunakan kode penampung Google Tag Manager yang ada yang sudah ada di situs pemilik. Kode penampung harus berasal dari akun Tag Manager mereka. Lihat dokumentasi pusat bantuan tentang metode verifikasi Tag Manager untuk informasi selengkapnya.

Hal ini dapat membantu pemahaman Anda tentang konsep inti dan alur kerja jika Anda pertama kali mencoba memverifikasi beberapa situs secara manual dengan antarmuka pengguna Verifikasi Situs.

Model data

Referensi Web

Google Site Verification API menerapkan semantik REST (HTTP GET, POST, dll.) ke entitas yang disebut resource web. Sumber Daya Web adalah situs web atau domain milik pengguna yang terautentikasi.

Berikut adalah contoh referensi web:

{
  "owners": [
    "myself@example.com",
    "another@example.com"
  ],
  "id": "http%3A%2F%2Fwww.example.com%2F",
  "site": {
    "identifier": "http://www.example.com/",
    "type": "SITE"
  }
}

Kolom id adalah ID unik untuk referensi web ini. Anda menggunakannya untuk mereferensikan referensi web khusus ini untuk pengambilan dan modifikasi. Simpan kolom id dari output operasi list untuk digunakan nanti sebagai ID.

Objek site berisi URL resource web atau nama domain, dan jenis resource. Situs ditentukan dengan jenis SITE; domain ditentukan dengan jenis INET_DOMAIN.

Array owners adalah daftar lengkap pemilik resource web, yang diwakili oleh alamat emailnya. Dengan menambahkan atau menghapus alamat email dari daftar pemilik, pengguna yang diautentikasi dapat memberikan kepemilikan bersama atau mencabut kepemilikan untuk pengguna lain. Pemilik tambahan yang telah menempatkan token sendiri di situs atau domain juga muncul di daftar pemilik, bersama dengan rekan pemilik mereka.

Pengguna yang telah diberi kepemilikan bersama juga dapat memberikan kepemilikan bersama, asalkan ada setidaknya satu pemilik terverifikasi dengan token di situs.

Pengumpulan Sumber Daya Web

Kumpulan referensi web adalah listingan lengkap dari semua referensi web milik pengguna terautentikasi. Anda dapat memverifikasi kepemilikan situs atau domain cukup dengan mencoba menambahkan referensi web baru ke kumpulan referensi web pengguna yang diautentikasi. Hanya situs atau domain terverifikasi yang berhasil ditambahkan ke koleksi mereka.

Seperti yang dinyatakan sebelumnya di bagian Batasan, resource web milik pengguna selain pengguna yang diautentikasi tidak dapat diakses melalui Site Verification API.