Panduan memulai: Mengamankan traffic ke layanan dengan gcloud CLI

Halaman ini menunjukkan cara men-deploy API di API Gateway untuk mengamankan traffic ke layanan backend.

Gunakan langkah-langkah berikut untuk men-deploy API baru guna mengakses layanan backend di fungsi Cloud Run menggunakan Google Cloud CLI. Panduan memulai ini juga menjelaskan cara menggunakan kunci API untuk melindungi backend Anda dari akses tanpa izin.

Sebelum memulai

  1. Di konsol Google Cloud , buka halaman Dasbor, lalu pilih atau buat project Google Cloud .

    Buka Dasbor

  2. Konfirmasi bahwa penagihan diaktifkan untuk project Anda.

    Mengaktifkan penagihan

  3. Pastikan Google Cloud CLI telah didownload dan diinstal di komputer Anda.

    Download gcloud CLI

  4. Perbarui komponen gcloud:

    gcloud components update
  5. Tetapkan project default. Ganti PROJECT_ID dengan project ID Google Cloud Anda.

    gcloud config set project PROJECT_ID

Mengaktifkan layanan yang diperlukan

API Gateway mengharuskan Anda mengaktifkan layanan Google Cloud berikut:

Nama Nama layanan
API Gateway API apigateway.googleapis.com
Service Management API servicemanagement.googleapis.com
Service Control API servicecontrol.googleapis.com

Untuk mengaktifkan layanan yang diperlukan:

Konsol Google Cloud

  1. Di konsol Google Cloud , buka halaman APIs & Services > API Library.

    Buka Library API

  2. Di halaman API Library, masukkan nama API yang diperlukan ke dalam kotak penelusuran.
  3. Di hasil penelusuran, pilih halaman API.
  4. Di halaman API, klik Enable.
  5. Ulangi langkah-langkah ini untuk setiap layanan yang tercantum dalam tabel sebelumnya.

Google Cloud CLI

Gunakan perintah berikut untuk mengaktifkan layanan:

gcloud services enable apigateway.googleapis.com
gcloud services enable servicemanagement.googleapis.com
gcloud services enable servicecontrol.googleapis.com

Untuk mengetahui informasi selengkapnya tentang layanan gcloud, lihat Layanan gcloud.

Men-deploy backend API

Gateway API berada di depan layanan backend yang di-deploy dan menangani semua permintaan masuk. Dalam panduan memulai ini, API Gateway merutekan panggilan masuk ke backend fungsi Cloud Run bernama helloGET yang berisi fungsi Node.js yang ditunjukkan di bawah.

const functions = require('@google-cloud/functions-framework');

// Register an HTTP function with the Functions Framework that will be executed
// when you make an HTTP request to the deployed function's endpoint.
functions.http('helloGET', (req, res) => {
  res.send('Hello World!');
});

Ikuti langkah-langkah di Panduan memulai: Men-deploy fungsi Cloud Run menggunakan Google Cloud CLI untuk mendownload kode contoh fungsi Cloud Run dan men-deploy layanan backend fungsi Cloud Run. Administrator Anda harus memberikan peran tambahan ke akun Anda dan ke akun layanan Cloud Build, seperti yang dijelaskan dalam panduan memulai ini.

Salin Service URL yang ditampilkan saat fungsi Cloud Run di-deploy. Anda akan membutuhkannya saat membuat konfigurasi API pada langkah berikutnya.

Membuat API

Sekarang Anda siap membuat API di API Gateway.

  1. Masukkan perintah berikut, dengan:

    • API_ID menentukan nama API Anda. Lihat persyaratan ID API untuk mengetahui pedoman penamaan API.
      gcloud api-gateway apis create API_ID 

    Contoh:

    gcloud api-gateway apis create my-api
  2. Setelah berhasil diselesaikan, Anda dapat menggunakan perintah berikut untuk melihat detail tentang API baru:

    gcloud api-gateway apis describe API_ID 

    Contoh:

    gcloud api-gateway apis describe my-api 

    Perintah ini menampilkan hal berikut:

      createTime: '2020-02-29T21:52:20.297426875Z'
      displayName: my-api
      managedService: my-api-123abc456def1.apigateway.my-project.cloud.goog
      name: projects/my-project/locations/global/apis/my-api
      state: ACTIVE
      updateTime: '2020-02-29T21:52:20.647923711Z'

Salin nilai properti managedService. Nilai ini digunakan untuk mengaktifkan API Anda pada langkah berikutnya.

Membuat konfigurasi API

Sebelum API Gateway dapat digunakan untuk mengelola traffic ke backend API yang di-deploy, API Gateway memerlukan konfigurasi API.

Anda dapat membuat konfigurasi API menggunakan deskripsi OpenAPI yang berisi anotasi khusus untuk menentukan perilaku API Gateway yang dipilih. Untuk mengetahui detail selengkapnya tentang ekstensi OpenAPI yang didukung, lihat artikel berikut:

Deskripsi OpenAPI yang digunakan untuk panduan memulai ini berisi petunjuk perutean ke backend fungsi Cloud Run kami:

OpenAPI 2.0

# openapi-functions.yaml
swagger: '2.0'
info:
  title: API_ID optional-string
  description: Sample API on API Gateway with a Google Cloud Functions backend
  version: 1.0.0
schemes:
  - https
produces:
  - application/json
paths:
  /hello