Mengautentikasi konten

Cloud CDN menawarkan tiga cara untuk membantu Anda mengontrol akses ke konten yang di-cache:

  • Dengan URL bertanda tangan, Anda dapat menyajikan respons dari cache Google Cloudyang terdistribusi secara global saat Anda memerlukan otorisasi permintaan. Siapa pun yang memiliki URL bertanda tangan dapat mengakses resource untuk waktu terbatas.
  • Cookie bertanda tangan juga dapat Anda gunakan untuk mengakses resource untuk waktu terbatas. Metode ini berguna saat Anda perlu menandatangani puluhan atau ratusan URL untuk tiap pengguna.
  • Autentikasi server asal pribadi dapat Anda gunakan untuk membatasi koneksi ke bucket Amazon Simple Storage Service (Amazon S3) atau penyimpanan objek kompatibel lainnya dan mencegah pengguna mengaksesnya secara langsung.

URL bertanda tangan

URL bertanda tangan adalah URL yang memberikan izin berbatas waktu untuk membuat permintaan.

Kasus penggunaan

Dalam beberapa skenario, sebaiknya jangan mengharuskan pengguna memiliki Akun Google untuk mengakses konten Cloud CDN. Namun, sebaiknya tetap kontrol akses menggunakan logika khusus aplikasi.

Cara umum untuk mengatasi kasus penggunaan ini adalah dengan memberikan URL bertanda tangan kepada pengguna, sehingga pengguna tersebut dapat membaca, menulis, atau menghapus akses ke resource tersebut selama waktu terbatas. Anda perlu menentukan waktu habis masa berlaku saat membuat URL bertanda tangan. Siapa saja yang memiliki URL ini dapat mengakses resource hingga waktu habis masa berlaku untuk URL tercapai atau kunci yang digunakan untuk menandatangani URL dirotasikan.

Gunakan URL bertanda tangan dalam kasus berikut:

  • Untuk membatasi akses ke file individual, seperti download penginstalan.

  • Untuk melayani pengguna dengan aplikasi klien yang tidak mendukung cookie.

Cara kerja URL bertanda tangan

URL bertanda tangan memberikan akses sementara kepada klien ke resource pribadi tanpa memerlukan otorisasi tambahan. Untuk melakukannya, elemen permintaan yang dipilih akan di-hash dan ditandatangani secara kriptografis menggunakan kunci acak kuat yang Anda buat.

Saat suatu permintaan menggunakan URL bertanda tangan yang Anda berikan, permintaan tersebut dianggap diizinkan untuk menerima konten yang diminta. Jika Cloud CDN menerima permintaan dengan tanda tangan yang tidak valid untuk layanan diaktifkan, permintaan tersebut akan ditolak dan tidak akan pernah masuk ke backend Anda untuk ditangani.

Secara umum, URL bertanda tangan dapat digunakan oleh siapa saja yang memilikinya. Namun, URL bertanda tangan biasanya hanya dimaksudkan untuk digunakan oleh klien yang diberi URL tersebut. Untuk mengurangi risiko URL digunakan oleh klien lain, masa berlaku URL bertanda tangan akan berakhir pada waktu yang Anda pilih. Untuk meminimalkan risiko URL bertanda tangan dibagikan, tetapkan agar masa berlaku URL tersebut berakhir sesegera mungkin.

Cara URL ditandatangani

Sebelum dapat menandatangani URL, Anda harus membuat satu atau beberapa kunci kriptografi di layanan backend, bucket backend, atau keduanya. Kemudian, Anda akan menandatangani dan melakukan hashing kriptografis pada URL menggunakan Google Cloud CLI atau kode Anda sendiri.

Penanganan URL bertanda tangan

Jika penanganan URL bertanda tangan diaktifkan di backend, Cloud CDN akan memberikan penanganan khusus untuk permintaan dengan URL bertanda tangan. Secara khusus, permintaan dengan parameter kueri Signature akan dianggap bertanda tangan. Saat permintaan tersebut diterima, Cloud CDN akan memverifikasi hal-hal berikut:

  • Metode HTTP-nya adalah GET, HEAD, OPTIONS, atau TRACE.
  • Parameter