Penyedia Kredensial Secret Manager

Dokumen ini menjelaskan cara menggunakan Secret Manager sebagai penyimpanan kredensial dengan Dataproc Serverless untuk menyimpan dan mengakses data sensitif yang diproses oleh workload serverless dengan aman.

Ringkasan

Secret Manager dapat melindungi data sensitif Anda, seperti kunci API, sandi, dan sertifikat. Anda dapat menggunakannya untuk mengelola, mengakses, dan mengaudit secret di seluruhGoogle Cloud.

Saat menjalankan beban kerja batch Dataproc Serverless, Anda dapat mengonfigurasinya untuk menggunakan secret Secret Manager menggunakan Penyedia Kredensial Secret Manager Dataproc.

Ketersediaan

Fitur ini tersedia untuk versi runtime utama Dataproc Serverless untuk Spark versi runtime 1.2.29+, 2.2.29+, atau yang lebih baru.

Terminologi

Tabel berikut menjelaskan istilah yang digunakan dalam dokumen ini.

Istilah Deskripsi
Secret Secret Secret Manager adalah objek project global yang berisi kumpulan metadata dan versi secret. Anda dapat menyimpan, mengelola, dan mengakses secret sebagai blob biner atau string teks.
Credential Di Hadoop dan workload Dataproc lainnya, kredensial terdiri dari nama kredensial (ID) dan nilai kredensial (sandi). ID dan nilai kredensial dipetakan ke ID secret dan nilai secret (versi secret) Secret Manager.

Penggunaan

Anda dapat mengonfigurasi Hadoop yang didukung dan komponen OSS lainnya agar berfungsi dengan Pengelola Secret dengan menetapkan properti berikut saat Anda mengirimkan workload Dataproc Serverless:

  • Jalur penyedia (wajib): Properti jalur penyedia, hadoop.security.credential.provider.path, adalah daftar URI penyedia kredensial yang dipisahkan koma dari satu atau beberapa URI yang dilalui untuk me-resolve kredensial.

    --properties=hadoop.security.credential.provider.path=gsm://projects/PROJECT_ID
    
    • scheme di jalur penyedia menunjukkan jenis penyedia kredensial. Skema Hadoop mencakup jceks://, user://,localjceks://. Gunakan skema gsm:// untuk menelusuri kredensial di Secret Manager.
  • Ganti operator titik : Layanan Secret Manager tidak mengizinkan titik (.) dalam nama secret. Namun, beberapa komponen software open source (OSS) menggunakan titik dalam kunci kredensialnya. Untuk memperbaiki batasan ini, aktifkan properti ini untuk mengganti titik (.) dengan tanda hubung (-) dalam nama kredensial. Tindakan ini memastikan bahwa kredensial OSS dengan titik dalam namanya dapat disimpan dan diambil dengan benar dari Pengelola Secret.

    Misalnya, Jika kunci kredensial OSS adalah a.b.c, Anda harus mengubahnya menjadi a-b-c saat menyimpannya di Secret Manager.

    --properties=hadoop.security.credstore.google-secret-manager.secret-id.substitute-dot-operator=true
    

    Ini adalah properti opsional. Secara default, nilainya adalah false. Untuk kunci kredensial yang tidak memiliki operator titik (.) dalam nama kredensialnya, properti ini dapat diabaikan dengan aman.

  • Versi secret : Secret di Secret Manager dapat memiliki beberapa versi (nilai). Gunakan properti ini untuk mengakses versi secret tertentu guna mendapatkan akses yang stabil di lingkungan produksi.

    --properties=hadoop.security.credstore.google-secret-manager.secret-version=1
    

    Ini adalah properti opsional. Secara default, Secret Manager mengakses versi LATEST, yang me-resolve ke nilai terbaru secret saat runtime. Jika kasus penggunaan Anda adalah selalu mengakses versi LATEST secret, properti ini dapat diabaikan dengan aman.

Menjalankan workload batch dengan Penyedia Kredensial Secret Manager

Untuk mengirim beban kerja batch yang menggunakan Penyedia Kredensial Pengelola Secret, jalankan perintah berikut secara lokal atau di Cloud Shell.

gcloud dataproc batches submit spark \
    --region=REGION \
    --jars=JARS \
    --class=MAIN_CLASS \
    --properties="spark.hive.hadoop.security.credential.provider.path=gsm://projects/PROJECT_ID,spark.hive.hadoop.security.credstore.google-secret-manager.secret-id.substitute-dot-operator=true" \
    ...other flags as needed...

Ganti kode berikut: