Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Mengenkripsi paket penyebaran Lambda.zip

Mode fokus
Mengenkripsi paket penyebaran Lambda.zip - AWS Lambda

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

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 terkelola 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 AWS Management Console, atau. AWS KMS APIs

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
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id", "Condition": { "StringLike": { "kms:EncryptionContext:aws:lambda:FunctionArn": "arn:aws:lambda:us-east-1:111122223333:function:*" } } } ] }

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:

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.

Lambda console
Untuk menambahkan enkripsi kunci terkelola pelanggan saat Anda membuat fungsi
  1. Buka halaman Fungsi di konsol Lambda.

  2. Pilih Buat fungsi.

  3. Pilih Author dari awal atau gambar Container.

  4. Di bagian Informasi dasar, lakukan hal berikut:

    1. Untuk Nama fungsi, masukkan nama fungsi.

    2. Untuk Runtime, pilih versi bahasa yang akan digunakan untuk fungsi Anda.

  5. Perluas Pengaturan lanjutan, lalu pilih Aktifkan enkripsi dengan kunci yang dikelola AWS KMS pelanggan.

  6. Memilih kunci yang dikelola pelanggan.

  7. Pilih Buat fungsi.

Untuk menghapus enkripsi kunci terkelola pelanggan, atau menggunakan kunci yang berbeda, Anda harus mengunggah paket deployment .zip lagi.

Untuk menambahkan enkripsi kunci terkelola pelanggan ke fungsi yang ada
  1. Buka Halaman fungsi di konsol Lambda.

  2. Pilih nama sebuah fungsi.

  3. Di panel Sumber kode, pilih Unggah dari.

  4. Pilih file.zip atau lokasi Amazon S3.

    Unggah file.zip dari panel sumber kode
  5. Unggah file atau masukkan lokasi Amazon S3.

  6. Pilih Aktifkan enkripsi dengan kunci yang dikelola AWS KMS pelanggan.

  7. Memilih kunci yang dikelola pelanggan.

  8. Pilih Simpan.

AWS CLI

Untuk menambahkan enkripsi kunci terkelola pelanggan saat Anda membuat fungsi

Dalam contoh create-function berikut:

  • --zip-file: Menentukan jalur lokal ke paket.zip deployment.

  • --source-kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi versi zip dari paket penyebaran.

  • --kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi variabel lingkungan dan versi paket penyebaran yang tidak di-zip.

aws lambda create-function \ --function-name myFunction \ --runtime nodejs22.x \ --handler index.handler \ --role arn:aws:iam::111122223333:role/service-role/my-lambda-role \ --zip-file fileb://myFunction.zip \ --source-kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key-id \ --kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key2-id

Dalam contoh create-function berikut:

  • --code: Menentukan lokasi file.zip di bucket Amazon S3. Anda hanya perlu menggunakan S3ObjectVersion parameter untuk objek berversi.

  • --source-kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi versi zip dari paket penyebaran.

  • --kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi variabel lingkungan dan versi paket penyebaran yang tidak di-zip.

aws lambda create-function \ --function-name myFunction \ --runtime nodejs22.x --handler index.handler \ --role arn:aws:iam::111122223333:role/service-role/my-lambda-role \ --code S3Bucket=amzn-s3-demo-bucket,S3Key=myFileName.zip,S3ObjectVersion=myObjectVersion \ --source-kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key-id \ --kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key2-id

Untuk menambahkan enkripsi kunci terkelola pelanggan ke fungsi yang ada

Dalam update-function-codecontoh berikut:

  • --zip-file: Menentukan jalur lokal ke paket.zip deployment.

  • --source-kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi versi zip dari paket penyebaran. Lambda menggunakan kunci yang AWS dimiliki untuk mengenkripsi paket unzip untuk pemanggilan fungsi. Jika Anda ingin menggunakan kunci yang dikelola pelanggan untuk mengenkripsi versi paket yang tidak di-zip, jalankan update-function-configurationperintah dengan opsi. --kms-key-arn

aws lambda update-function-code \ --function-name myFunction \ --zip-file fileb://myFunction.zip \ --source-kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key-id

Dalam update-function-codecontoh berikut:

  • --s3-bucket: Menentukan lokasi file.zip di bucket Amazon S3.

  • --s3-key: Menentukan kunci Amazon S3 dari paket penyebaran.

  • --s3-object-version: Untuk objek berversi, versi objek paket penyebaran yang akan digunakan.

  • --source-kms-key-arn: Menentukan kunci yang dikelola pelanggan untuk mengenkripsi versi zip dari paket penyebaran. Lambda menggunakan kunci yang AWS dimiliki untuk mengenkripsi paket unzip untuk pemanggilan fungsi. Jika Anda ingin menggunakan kunci yang dikelola pelanggan untuk mengenkripsi versi paket yang tidak di-zip, jalankan update-function-configurationperintah dengan opsi. --kms-key-arn

aws lambda update-function-code \ --function-name myFunction \ --s3-bucket amzn-s3-demo-bucket \ --s3-key myFileName.zip \ --s3-object-version myObject Version --source-kms-key-arn arn:aws:kms:us-east-1:111122223333:key/key-id

Untuk menghapus enkripsi kunci terkelola pelanggan dari fungsi yang ada

Dalam update-function-codecontoh berikut, --zip-file menentukan path lokal ke paket deployment .zip. Saat Anda menjalankan perintah ini tanpa --source-kms-key-arn opsi, Lambda menggunakan kunci yang AWS dimiliki untuk mengenkripsi versi zip dari paket penyebaran.

aws lambda update-function-code \ --function-name myFunction \ --zip-file fileb://myFunction.zip
Untuk menambahkan enkripsi kunci terkelola pelanggan saat Anda membuat fungsi
  1. Buka halaman Fungsi di konsol Lambda.

  2. Pilih Buat fungsi.

  3. Pilih Author dari awal atau gambar Container.

  4. Di bagian Informasi dasar, lakukan hal berikut:

    1. Untuk Nama fungsi, masukkan nama fungsi.

    2. Untuk Runtime, pilih versi bahasa yang akan digunakan untuk fungsi Anda.

  5. Perluas Pengaturan lanjutan, lalu pilih Aktifkan enkripsi dengan kunci yang dikelola AWS KMS pelanggan.

  6. Memilih kunci yang dikelola pelanggan.

  7. Pilih Buat fungsi.

Untuk menghapus enkripsi kunci terkelola pelanggan, atau menggunakan kunci yang berbeda, Anda harus mengunggah paket deployment .zip lagi.

Untuk menambahkan enkripsi kunci terkelola pelanggan ke fungsi yang ada
  1. Buka Halaman fungsi di konsol Lambda.

  2. Pilih nama sebuah fungsi.

  3. Di panel Sumber kode, pilih Unggah dari.

  4. Pilih file.zip atau lokasi Amazon S3.

    Unggah file.zip dari panel sumber kode
  5. Unggah file atau masukkan lokasi Amazon S3.

  6. Pilih Aktifkan enkripsi dengan kunci yang dikelola AWS KMS pelanggan.

  7. Memilih kunci yang dikelola pelanggan.

  8. Pilih Simpan.

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.