Mengonfigurasi akses ke sumber: Microsoft Azure Storage

Anda dapat mengonfigurasi akses ke data sumber di Microsoft Azure Storage menggunakan akses bersama tanda tangan (SAS).

Region yang didukung

Storage Transfer Service dapat mentransfer data dari region Microsoft Azure Storage berikut:
  • Amerika: East US, East US 2, West US, West US 2, West US 3, Amerika Serikat Bagian Tengah, Amerika Serikat Tengah Utara, Amerika Serikat Tengah Selatan, Amerika Serikat Tengah Barat, Canada Tengah, Canada Timur, Brasil Selatan
  • Asia Pasifik: Australia Tengah, Australia Timur, Australia Tenggara, India Tengah, India Selatan, India Barat, Asia Tenggara, Timur Asia, Jepang Timur, Jepang Barat, Korea Selatan, Korea Tengah
  • Eropa, Timur Tengah, Afrika (EMEA): Prancis Tengah, Jerman Barat Tengah, Norwegia Timur, Swedia Tengah, Swiss Utara, Eropa Utara, Eropa Barat, Inggris Raya Selatan, Inggris Raya Barat, Qatar Tengah, UEA Utara, Afrika Selatan Utara

Konfigurasi akses

Ikuti langkah-langkah berikut untuk mengonfigurasi akses ke container Microsoft Azure Storage:

  1. Membuat atau menggunakan pengguna Microsoft Azure Storage yang sudah ada untuk mengakses penyimpanan akun untuk container Microsoft Azure Storage Blob Anda.

  2. Buat token SAS di tingkat container. Lihat Memberikan akses terbatas ke resource Azure Storage menggunakan tanda tangan akses bersama untuk melihat petunjuk.

    1. Layanan yang diizinkan harus menyertakan Blob.

    2. Untuk Allowed resource types, pilih Container dan Object.

    3. Izin yang diizinkan harus mencakup Baca dan Daftar. Jika transfer dikonfigurasi untuk menghapus objek dari sumber, Anda juga harus menyertakan izin Hapus.

    4. Waktu habis masa berlaku default untuk token SAS adalah 8 jam. Menetapkan batasan yang wajar waktu habis masa berlaku agar Anda berhasil menyelesaikan transfer.

    5. Jangan tentukan alamat IP apa pun di kolom Alamat IP yang diizinkan. Storage Transfer Service menggunakan berbagai alamat IP dan tidak mendukung IP pembatasan alamat.

    6. Protokol yang diizinkan harus berupa HTTPS saja.

  3. Setelah token dibuat, catat nilai SAS token yang ditampilkan. Anda memerlukan nilai ini saat mengonfigurasi transfer dengan Storage Transfer Service.

Menyimpan kredensial Microsoft di Secret Manager

Secret Manager adalah layanan aman yang menyimpan dan mengelola data sensitif seperti sandi. Cloud SQL menggunakan enkripsi yang kuat, akses berbasis peran kontrol, dan log audit untuk melindungi rahasia Anda.

Storage Transfer Service dapat memanfaatkan Secret Manager untuk melindungi Azure Anda memiliki kredensial yang lengkap. Storage Transfer Service mendukung tanda tangan akses bersama token (SAS) dan Kunci Bersama Azure di Secret Manager.

Saat Anda menentukan Kunci Bersama, Storage Transfer Service menggunakan kunci tersebut untuk membuat layanan SAS yang cakupannya dibatasi ke container Azure yang ditentukan dalam pekerjaan.

Mengaktifkan API

Aktifkan API Secret Manager.

Mengaktifkan API

Mengonfigurasi izin tambahan

Izin pengguna

Pengguna yang membuat rahasia memerlukan peran berikut:

  • Secret Manager Admin (roles/secretmanager.admin)

Pelajari cara memberikan peran.

Izin agen layanan

Agen layanan Storage Transfer Service memerlukan peran IAM berikut:

  • Aksesor Rahasia Secret Manager (roles/secretmanager.secretAccessor)

Untuk memberikan peran kepada agen layanan Anda:

Cloud Console

  1. Ikuti petunjuk untuk ambil email agen layanan Anda.

  2. Buka halaman IAM di Konsol Google Cloud.

    Buka IAM

  3. Klik Grant access.

  4. Di kotak teks New principals, masukkan email agen layanan.

  5. Di drop-down Pilih peran, telusuri dan pilih Secret Manager Aksesor Rahasia.

  6. Klik Simpan.

gcloud

Menggunakan perintah gcloud projects add-iam-policy-binding untuk menambahkan IAM peran untuk agen layanan Anda.

  1. Ikuti petunjuk untuk ambil email agen layanan Anda.

  2. Dari command line, masukkan perintah berikut:

    gcloud projects add-iam-policy-binding PROJECT_ID \
      --member='serviceAccount:SERVICE_AGENT_EMAIL' \
      --role='roles/secretmanager.secretAccessor'
    

Membuat secret

Buat secret dengan Secret Manager:

Cloud Console

  1. Buka halaman Secret Manager di Konsol Google Cloud.

    Buka Secret Manager

  2. Klik Create secret.

  3. Masukkan nama.

  4. Di kotak teks Nilai rahasia, masukkan kredensial Anda di salah satu dalam format berikut.

    {
      "sas_token" : "SAS_TOKEN_VALUE"
    }
    

    Atau:

    {
      "access_key" : "ACCESS_KEY"
    }
    
  5. Klik Create secret.

  6. Setelah secret dibuat, catat nama resource lengkap rahasia tersebut:

    1. Pilih tab Ringkasan.

    2. Salin nilai ID Resource. Formatnya digunakan sebagai berikut:

      projects/1234567890/secrets/SECRET_NAME

gcloud

Untuk membuat secret baru menggunakan alat command line gcloud, teruskan Kredensial berformat JSON ke perintah gcloud secrets create:

printf '{
  "sas_token" : "SAS_TOKEN_VALUE"
}' | gcloud secrets create SECRET_NAME --data-file=-

Atau:

printf '{
  "access_key" : "ACCESS_KEY"
}' | gcloud secrets create SECRET_NAME --data-file=-

Ambil nama resource lengkap rahasia:

gcloud secrets describe SECRET_NAME

Perhatikan nilai name dalam respons. Formatnya digunakan sebagai berikut:

projects/1234567890/secrets/SECRET_NAME

Untuk detail selengkapnya tentang cara membuat dan mengelola secret, lihat Dokumentasi Secret Manager.

Teruskan rahasia Anda ke perintah pembuatan tugas

Menggunakan Secret Manager dengan Storage Transfer Service memerlukan penggunaan REST API untuk membuat tugas transfer.

Teruskan nama resource Secret Manager sebagai nilai Kolom transferSpec.azureBlobStorageDataSource.credentialsSecret:

POST https://storagetransfer.googleapis.com/v1/transferJobs

{
  "description": "Transfer with Secret Manager",
  "status": "ENABLED",
  "projectId": "PROJECT_ID",
  "transferSpec": {
    "azureBlobStorageDataSource": {
      "storageAccount": "AZURE_SOURCE_NAME",
      "container": "AZURE_CONTAINER",
      "credentialsSecret": "SECRET_RESOURCE_ID",
    },
    "gcsDataSink": {
      "bucketName": "CLOUD_STORAGE_BUCKET_NAME"
    }
  }
}

Pembatasan IP

Jika Anda membatasi akses ke resource Azure menggunakan firewall Azure Storage, Anda harus menambahkan rentang IP yang digunakan oleh pekerja Storage Transfer Service ke daftar IP yang diizinkan.

Karena rentang IP ini dapat berubah, kami memublikasikan nilai saat ini sebagai JSON file di alamat permanen:

https://www.gstatic.com/storage-transfer-service/ipranges.json

Saat rentang baru ditambahkan ke file, kita akan menunggu setidaknya 7 hari sebelum menggunakan rentang tersebut untuk permintaan dari Storage Transfer Service.

Sebaiknya ambil data dari dokumen ini minimal seminggu sekali untuk konfigurasi keamanan Anda tetap terbaru. Untuk contoh skrip Python yang mengambil Rentang IP dari file JSON, lihat artikel ini dari Virtual Private Cloud dokumentasi tambahan.

Untuk menambahkan rentang ini sebagai IP yang diizinkan, ikuti petunjuk di Microsoft Artikel Azure, Mengonfigurasi firewall dan jaringan virtual Azure Storage.