Menyimpan informasi sensitif seperti AccessKey atau kata sandi dalam teks biasa selama pengembangan data dan eksekusi tugas menimbulkan risiko keamanan. Fitur manajemen ciphertext memungkinkan Anda mengenkripsi dan menyimpan informasi sensitif tersebut. Anda dapat mereferensikan informasi terenkripsi secara dinamis selama pengembangan data dan konfigurasi sesi, membantu mencegah kebocoran data serta meningkatkan efisiensi pemeliharaan.
Buat sebuah ciphertext
Buka halaman Manajemen Ciphertext.
Masuk ke Konsol E-MapReduce.
Di panel navigasi sebelah kiri, pilih EMR Serverless > Spark.
Pada halaman Spark, klik nama ruang kerja target.
Pada halaman EMR Serverless Spark, klik Manajemen Ciphertext di panel navigasi sebelah kiri.
Pada halaman Manajemen Ciphertext, klik Tambah Ciphertext.
Pada halaman Tambah Ciphertext, konfigurasikan parameter yang diperlukan, lalu klik Konfirmasi.
Parameter
Deskripsi
Variable Name
Nama variabel harus unik dalam ruang kerja yang sama. Tidak dapat dimodifikasi setelah dibuat.
Ciphertext
Ciphertext bersifat peka huruf besar-kecil. Tidak dapat dimodifikasi atau dilihat kembali setelah dibuat.
Gunakan sebuah ciphertext
Gunakan dalam Notebook
Dalam pekerjaan Notebook, Anda dapat menggunakan ciphertext melalui pustaka emrssutils.utils. Versi Mesin DPI harus esr-2.8.0, esr-3.4.0, esr-4.4.0, atau versi lebih baru.
Contoh
Impor pustaka dan muat ciphertext.
# Contoh kode untuk mendapatkan ciphertext import emrssutils.utils # Dapatkan nilai terdekripsi secara dinamis password = emrssutils.utils.get_secret(key='<variable_name>')Referensikan ciphertext.
# Contoh kode untuk mereferensikan ciphertext df = spark.read \ .format("jdbc") \ .option("url", "jdbc:mysql://<jdbc_url>") \ .option("dbtable", "<db>.<table>") \ .option("user", "<username>") \ .option("password", password) \ # Referensikan ciphertext .load() df.show()
Gunakan dalam konfigurasi Spark
Dalam konfigurasi Spark untuk sesi atau pekerjaan batch, gunakan format ${secret_values.variable_name} untuk ciphertext.
Contoh
Saat membaca atau menulis data dari/ke MaxCompute, tambahkan terlebih dahulu AccessKey ke Manajemen Ciphertext. Kemudian, gunakan ciphertext dalam konfigurasi Spark dari sesi SQL. Untuk informasi lebih lanjut, lihat Baca dari dan tulis ke MaxCompute.
spark.sql.catalog.odps org.apache.spark.sql.execution.datasources.v2.odps.OdpsTableCatalog
spark.sql.extensions org.apache.spark.sql.execution.datasources.v2.odps.extension.OdpsExtensions
spark.sql.sources.partitionOverwriteMode dynamic
spark.hadoop.odps.tunnel.quota.name pay-as-you-go
spark.hadoop.odps.project.name <project_name>
spark.hadoop.odps.end.point https://service.cn-hangzhou-vpc.maxcompute.aliyun-inc.com/api
spark.hadoop.odps.access.id <accessId>
# Referensikan ciphertext
spark.hadoop.odps.access.key ${secret_values.AccessKey} Gunakan dalam pekerjaan batch atau stream
Untuk parameter runtime pekerjaan batch atau stream, Anda dapat menggunakan ciphertext dalam format ${secret_values.variable_name}.
Contoh
Saat membuat pekerjaan batch JAR, tambahkan informasi sensitif terkait ke Manajemen Ciphertext. Kemudian, referensikan ciphertext dalam parameter runtime menggunakan format ${secret_values.variable_name}.
