Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengenkripsi paket deployment .zip Lambda
AWS Lambda selalu menyediakan enkripsi sisi server saat istirahat untuk paket penerapan .zip dan detail konfigurasi fungsi dengan file. AWS KMS key Secara default, Lambda menggunakan file. Kunci milik AWS Jika perilaku default ini sesuai dengan alur kerja Anda, Anda tidak perlu menyiapkan hal lain. AWS tidak membebankan biaya untuk menggunakan kunci ini.
Jika mau, Anda dapat memberikan kunci yang dikelola AWS KMS pelanggan sebagai gantinya. Anda dapat melakukan ini untuk memiliki kontrol atas rotasi kunci KMS atau untuk memenuhi persyaratan organisasi Anda untuk mengelola kunci KMS. Saat Anda menggunakan kunci yang dikelola pelanggan, hanya pengguna di akun Anda yang memiliki akses ke kunci KMS yang dapat melihat atau mengelola kode atau konfigurasi fungsi.
Kunci yang dikelola pelanggan dikenakan AWS KMS biaya standar. Untuk informasi selengkapnya, lihat harga AWS Key Management Service
Buat kunci terkelola pelanggan
Anda dapat membuat kunci terkelola pelanggan simetris dengan menggunakan Konsol Manajemen AWS, atau AWS KMS API.
Untuk membuat kunci terkelola pelanggan simetris
Ikuti langkah-langkah untuk Membuat enkripsi simetris Membuat kunci KMS simetris di Panduan Pengembang.AWS Key Management Service
Izin
Kebijakan utama
Kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Untuk informasi selengkapnya, lihat Cara mengubah kebijakan utama di Panduan AWS Key Management Service Pengembang.
Saat Anda menggunakan kunci yang dikelola pelanggan untuk mengenkripsi paket penyebaran .zip, Lambda tidak menambahkan hibah ke kunci tersebut. Sebagai gantinya, kebijakan AWS KMS utama Anda harus mengizinkan Lambda memanggil operasi AWS KMS API berikut atas nama Anda:
Contoh kebijakan kunci berikut memungkinkan semua fungsi Lambda di akun 111122223333 memanggil operasi yang diperlukan AWS KMS untuk kunci terkelola pelanggan yang ditentukan:
contoh AWS KMS kebijakan kunci
Untuk informasi selengkapnya tentang akses kunci pemecahan masalah, lihat Panduan AWS Key Management Service Pengembang.
Izin principal
Saat Anda menggunakan kunci yang dikelola pelanggan untuk mengenkripsi paket penyebaran .zip, hanya prinsipal dengan akses ke kunci tersebut yang dapat mengakses paket penyebaran .zip. Misalnya, prinsipal yang tidak memiliki akses ke kunci yang dikelola pelanggan tidak dapat mengunduh paket.zip menggunakan URL S3 yang telah ditetapkan sebelumnya yang disertakan dalam respons. GetFunction AccessDeniedExceptionAn dikembalikan di Code bagian respons.
contoh AWS KMS AccessDeniedException
{ "Code": { "RepositoryType": "S3", "Error": { "ErrorCode": "AccessDeniedException", "Message": "KMS access is denied. Check your KMS permissions. KMS Exception: AccessDeniedException KMS Message: User: arn:aws:sts::111122223333:assumed-role/LambdaTestRole/session is not authorized to perform: kms:Decrypt on resource: arn:aws:kms:us-east-1:111122223333:key/key-id with an explicit deny in a resource-based policy" }, "SourceKMSKeyArn": "arn:aws:kms:us-east-1:111122223333:key/key-id" }, ...
Untuk informasi selengkapnya tentang izin AWS KMS kunci, lihat Otentikasi dan kontrol akses untuk. AWS KMS
Menggunakan kunci terkelola pelanggan untuk paket penerapan.zip
Gunakan parameter API berikut untuk mengonfigurasi kunci terkelola pelanggan untuk paket penerapan.zip:
-
SourceKMSKeyArn: Mengenkripsi paket penyebaran sumber.zip (file yang Anda unggah).
-
KMSKeyArn: Mengenkripsi variabel lingkungan dan snapshot Lambda. SnapStart
-
DurableConfig.KMSKeyArn: Mengenkripsi data eksekusi yang tahan lama. Kunci ini tidak tergantung pada tingkat fungsi
KMSKeyArn.
Kapan SourceKMSKeyArn dan KMSKeyArn keduanya ditentukan, Lambda menggunakan KMSKeyArn kunci untuk mengenkripsi versi paket yang tidak di-zip yang digunakan Lambda untuk menjalankan fungsi tersebut. Kapan SourceKMSKeyArn KMSKeyArn ditentukan tetapi tidak, Lambda menggunakan Kunci yang dikelola AWSuntuk mengenkripsi versi paket yang tidak di-zip.
catatan
Untuk fungsi dan lapisan yang menggunakan penyimpanan kode S3 yang dikelola sendiri, Lambda tidak menyimpan salinan kode sumber Anda. Kode Anda tetap berada di bucket S3 Anda, dan enkripsi saat istirahat untuk kode sumber Anda dikelola oleh konfigurasi bucket S3 Anda. Lambda akan digunakan KMSKeyArn untuk mengenkripsi versi unzip dari paket yang digunakan Lambda untuk menjalankan fungsi. Untuk informasi selengkapnya, lihat Melindungi data dengan enkripsi sisi server di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.