

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

# Menyebarkan fungsi Lambda sebagai arsip file.zip
<a name="configuration-function-zip"></a>

Saat Anda membuat fungsi Lambda, Anda mengemas kode fungsi Anda ke dalam paket penerapan. Lambda mendukung dua tipe paket deployment: gambar kontainer dan arsip file .zip. Alur kerja untuk membuat fungsi tergantung pada jenis paket penyebaran. Untuk mengonfigurasi fungsi yang didefinisikan sebagai gambar kontainer, lihat[Buat fungsi Lambda menggunakan gambar kontainer](images-create.md).

Anda dapat menggunakan konsol Lambda dan API Lambda untuk membuat fungsi yang ditentukan dengan arsip file.zip. Anda juga dapat mengunggah file.zip yang diperbarui untuk mengubah kode fungsi. 

**catatan**  
Anda tidak dapat mengubah [jenis paket penerapan](https://docs.aws.amazon.com/lambda/latest/api/API_CreateFunction.html#lambda-CreateFunction-request-PackageType) (.zip atau image kontainer) untuk fungsi yang ada. Misalnya, Anda tidak dapat mengonversi fungsi gambar kontainer untuk menggunakan arsip file.zip. Anda harus membuat fungsi baru.

**Topics**
+ [

## Membuat fungsi
](#configuration-function-create)
+ [

## Menggunakan editor kode konsol
](#configuration-functions-console-update)
+ [

## Memperbarui kode fungsi
](#configuration-function-update)
+ [

## Mengubah runtime
](#configuration-function-runtime)
+ [

## Mengubah arsitektur
](#configuration-function-arch)
+ [

## Menggunakan API Lambda
](#configuration-function-api)
+ [

## Mengunduh kode fungsi Anda
](#configuration-function-download)
+ [

## CloudFormation
](#configuration-function-cloudformation)
+ [

# Mengenkripsi paket deployment .zip Lambda
](encrypt-zip-package.md)

## Membuat fungsi
<a name="configuration-function-create"></a>

Saat Anda membuat fungsi yang ditentukan dengan arsip file.zip, Anda memilih templat kode, versi bahasa, dan peran eksekusi untuk fungsi tersebut. Anda menambahkan kode fungsi Anda setelah Lambda membuat fungsi.

**Untuk membuat fungsi**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih **Buat fungsi**.

1. Pilih **Penulis dari awal** atau **Gunakan cetak biru** untuk membuat fungsi Anda. 

1. Di bagian **Informasi dasar**, lakukan hal berikut:

   1. Untuk **Nama fungsi**, masukkan nama fungsi. Nama fungsi dibatasi hingga 64 karakter panjangnya.

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

   1. (Opsional) Untuk **Arsitektur**, pilih arsitektur set instruksi yang akan digunakan untuk fungsi Anda. Arsitektur defaultnya adalah x86\$164. Ketika Anda membangun paket deployment untuk fungsi Anda, pastikan bahwa itu kompatibel dengan [arsitektur set instruksi](foundation-arch.md) ini.

1. (Opsional) Di bagian **Izin**, luaskan **Ubah peran eksekusi default**. Anda dapat membuat peran **Eksekusi baru atau menggunakan peran** yang sudah ada.

1. (Opsional) Perluas **pengaturan lanjutan**. Anda dapat memilih **konfigurasi penandatanganan Kode** untuk fungsi tersebut. Anda juga dapat mengonfigurasi (Amazon VPC) agar fungsi dapat diakses.

1. Pilih **Buat fungsi**.

Lambda menciptakan fungsi baru. Anda sekarang dapat menggunakan konsol untuk menambahkan kode fungsi dan mengkonfigurasi parameter dan fitur fungsi lainnya. Untuk petunjuk penerapan kode, lihat halaman handler untuk runtime yang digunakan fungsi Anda. 

------
#### [ Node.js ]

[Deploy fungsi Lambda Node.js dengan arsip file .zip](nodejs-package.md) 

------
#### [ Python ]

 [Bekerja dengan arsip file.zip untuk fungsi Python Lambda](python-package.md) 

------
#### [ Ruby ]

 [Deploy fungsi Lambda Ruby dengan arsip file .zip](ruby-package.md) 

------
#### [ Java ]

 [Deploy fungsi Java Lambda dengan arsip file .zip atau JAR](java-package.md) 

------
#### [ Go ]

 [Deploy fungsi Go Lambda dengan arsip file .zip](golang-package.md) 

------
#### [ C\$1 ]

 [Bangun dan terapkan fungsi C\$1 Lambda dengan arsip file.zip](csharp-package.md) 

------
#### [ PowerShell ]

 [Menyebarkan fungsi PowerShell Lambda dengan arsip file.zip](powershell-package.md) 

------

## Menggunakan editor kode konsol
<a name="configuration-functions-console-update"></a>

Konsol membuat fungsi Lambda dengan satu file sumber. Untuk bahasa scripting, Anda dapat mengedit file ini dan menambahkan lebih banyak file menggunakan editor kode bawaan. Untuk menyimpan perubahan Anda, pilih **Simpan**. Selanjutnya, untuk menjalankan kode, pilih **Uji**.

Saat Anda menyimpan kode fungsi, konsol Lambda membuat paket penyebaran arsip file.zip. Saat Anda mengembangkan kode fungsi di luar konsol (menggunakan IDE), Anda perlu [membuat paket penerapan](nodejs-package.md) untuk mengunggah kode Anda ke fungsi Lambda.

## Memperbarui kode fungsi
<a name="configuration-function-update"></a>

Untuk bahasa scripting (Node.js, Python, dan Ruby), Anda dapat mengedit kode fungsi Anda di editor kode tertanam. Jika kode lebih besar dari 3MB, atau jika Anda perlu menambahkan pustaka, atau untuk bahasa yang tidak didukung editor (Java, Go, C \$1), Anda harus mengunggah kode fungsi Anda sebagai arsip.zip. Jika arsip file.zip lebih kecil dari 50 MB, Anda dapat mengunggah arsip file.zip dari mesin lokal Anda. Jika file lebih besar dari 50 MB, unggah file ke fungsi dari bucket Amazon S3.

**Untuk mengunggah kode fungsi sebagai arsip.zip**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih fungsi yang akan diperbarui dan pilih tab **Kode**.

1. Di bagian **Sumber kode**, pilih **Unggah dari**.

1. Pilih **file.zip**, lalu pilih **Unggah**. 

   1. Di pemilih file, pilih versi gambar baru, pilih **Buka**, lalu pilih **Simpan**.

1. (Alternatif untuk langkah 4) Pilih lokasi **Amazon S3**.

   1. **Di kotak teks, masukkan URL tautan S3 dari arsip file.zip, lalu pilih Simpan.**

## Mengubah runtime
<a name="configuration-function-runtime"></a>

Jika Anda memperbarui konfigurasi fungsi untuk menggunakan runtime baru, Anda mungkin perlu memperbarui kode fungsi agar kompatibel dengan runtime baru. Jika Anda memperbarui konfigurasi fungsi untuk menggunakan runtime yang berbeda, Anda **harus** memberikan kode fungsi baru yang kompatibel dengan runtime dan arsitektur. Untuk petunjuk tentang cara membuat paket deployment untuk kode fungsi, lihat halaman handler untuk runtime yang digunakan fungsi.

Gambar dasar Node.js 20, Python 3.12, Java 21, .NET 8, Ruby 3.3, dan yang lebih baru didasarkan pada gambar kontainer minimal Amazon Linux 2023. Gambar dasar sebelumnya menggunakan Amazon Linux 2. AL2023 memberikan beberapa keunggulan dibandingkan Amazon Linux 2, termasuk jejak penyebaran yang lebih kecil dan versi pustaka yang diperbarui seperti. `glibc` Untuk informasi selengkapnya, lihat [Memperkenalkan runtime Amazon Linux 2023 untuk AWS Lambda](https://aws.amazon.com/blogs/compute/introducing-the-amazon-linux-2023-runtime-for-aws-lambda/) di AWS Compute Blog.

**Untuk mengubah runtime**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih fungsi yang akan diperbarui dan pilih tab **Kode**.

1. Gulir ke bawah ke bagian **pengaturan Runtime**, yang berada di bawah editor kode.

1. Pilih **Edit**.

   1. Untuk **Runtime**, pilih pengenal runtime.

   1. Untuk **Handler**, tentukan nama file dan handler untuk fungsi Anda.

   1. Untuk **Arsitektur**, pilih arsitektur set instruksi yang akan digunakan untuk fungsi Anda.

1. Pilih **Simpan**.

## Mengubah arsitektur
<a name="configuration-function-arch"></a>

Sebelum Anda dapat mengubah arsitektur set instruksi, Anda perlu memastikan bahwa kode fungsi Anda kompatibel dengan arsitektur target. 

Jika Anda menggunakan Node.js, Python, atau Ruby dan Anda mengedit kode fungsi Anda di editor tertanam, kode yang ada dapat berjalan tanpa modifikasi.

Namun, jika Anda memberikan kode fungsi Anda menggunakan paket penyebaran arsip file.zip, Anda harus menyiapkan arsip file.zip baru yang dikompilasi dan dibangun dengan benar untuk runtime target dan arsitektur set instruksi. Untuk instruksi, lihat halaman handler untuk runtime fungsi Anda.

**Untuk mengubah arsitektur set instruksi**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih fungsi yang akan diperbarui dan pilih tab **Kode**.

1. Di bawah **Pengaturan waktu proses**, pilih **Edit**.

1. Untuk **Arsitektur**, pilih arsitektur set instruksi yang akan digunakan untuk fungsi Anda.

1. Pilih **Simpan**.

## Menggunakan API Lambda
<a name="configuration-function-api"></a>

Untuk membuat dan mengonfigurasi fungsi yang menggunakan arsip file.zip, gunakan operasi API berikut: 
+ [CreateFunction](https://docs.aws.amazon.com/lambda/latest/api/API_CreateFunction.html)
+ [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)
+ [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html)

## Mengunduh kode fungsi Anda
<a name="configuration-function-download"></a>

Anda dapat mengunduh versi kode fungsi.zip saat ini yang tidak diterbitkan (`$LATEST`) melalui konsol Lambda. Untuk melakukan ini, pertama-tama pastikan bahwa Anda memiliki izin IAM berikut:
+ `iam:GetPolicy`
+ `iam:GetPolicyVersion`
+ `iam:GetRole`
+ `iam:GetRolePolicy`
+ `iam:ListAttachedRolePolicies`
+ `iam:ListRolePolicies`
+ `iam:ListRoles`

**Untuk mengunduh kode fungsi.zip**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih fungsi yang ingin Anda unduh kode fungsi.zip.

1. Dalam **ikhtisar Fungsi**, pilih tombol **Unduh**, lalu pilih **Unduh kode fungsi.zip.**

   1. Atau, pilih **Unduh AWS SAM file** untuk menghasilkan dan mengunduh templat SAM berdasarkan konfigurasi fungsi Anda. Anda juga dapat memilih **Unduh keduanya** untuk mengunduh template.zip dan SAM.

## CloudFormation
<a name="configuration-function-cloudformation"></a>

Anda dapat menggunakan CloudFormation untuk membuat fungsi Lambda yang menggunakan arsip file.zip. Dalam CloudFormation template Anda, `AWS::Lambda::Function` sumber daya menentukan fungsi Lambda. Untuk deskripsi properti dalam `AWS::Lambda::Function` sumber daya, lihat [AWS::Lambda::Function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html)di *Panduan AWS CloudFormation Pengguna*.

Dalam `AWS::Lambda::Function` sumber daya, atur properti berikut untuk membuat fungsi yang didefinisikan sebagai arsip file.zip:
+ AWS::Lambda::Function
  + PackageType — Setel ke`Zip`.
  + Kode - Masukkan nama bucket Amazon S3 dan nama file.zip di dan bidang. `S3Bucket` `S3Key` Untuk Node.js atau Python, Anda dapat memberikan kode sumber inline dari fungsi Lambda Anda.
  + Runtime - Tetapkan nilai runtime.
  + Arsitektur - Tetapkan nilai arsitektur `arm64` untuk menggunakan prosesor AWS Graviton2. Secara default, nilai arsitektur adalah`x86_64`.

# Mengenkripsi paket deployment .zip Lambda
<a name="encrypt-zip-package"></a>

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](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) 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 dengan 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](https://aws.amazon.com/kms/pricing/).

## Buat kunci terkelola pelanggan
<a name="create-key"></a>

 Anda dapat membuat kunci terkelola pelanggan simetris dengan menggunakan Konsol Manajemen AWS, atau. AWS KMS APIs

**Untuk membuat kunci terkelola pelanggan simetris**

*Ikuti langkah-langkah untuk [Membuat enkripsi simetris Membuat kunci KMS simetris di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk).AWS Key Management Service *

### Izin
<a name="enable-zip-permissions"></a>

**Kebijakan utama**

[Kebijakan utama](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) 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](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html#key-policy-modifying-how-to) 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.](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) Sebagai gantinya, kebijakan AWS KMS utama Anda harus mengizinkan Lambda memanggil operasi AWS KMS API berikut atas nama Anda:
+ [km: GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
+ [kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)

Contoh kebijakan kunci berikut memungkinkan semua fungsi Lambda di akun 111122223333 memanggil operasi yang diperlukan AWS KMS untuk kunci terkelola pelanggan yang ditentukan:

**Example 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](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html#example-no-iam) 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html) 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](https://docs.aws.amazon.com/lambda/latest/api/API_GetFunction.html) `AccessDeniedException`An dikembalikan di `Code` bagian respons.

**Example 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](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html) untuk. AWS KMS

## Menggunakan kunci terkelola pelanggan untuk paket penerapan.zip
<a name="enable-zip-custom-encryption"></a>

Gunakan parameter API berikut untuk mengonfigurasi kunci terkelola pelanggan untuk paket penerapan.zip:
+ [Sumber KMSKey Arn](https://docs.aws.amazon.com/lambda/latest/api/API_FunctionCode.html#lambda-Type-FunctionCode-SourceKMSKeyArn): Mengenkripsi paket penyebaran sumber.zip (file yang Anda unggah).
+ [KMSKeyArn](https://docs.aws.amazon.com/lambda/latest/api/API_CreateFunction.html#lambda-CreateFunction-request-KMSKeyArn)[: Mengenkripsi variabel [lingkungan dan](configuration-envvars-encryption.md) snapshot Lambda. SnapStart](snapstart.md)

Kapan `SourceKMSKeyArn` dan `KMSKeyArn` keduanya ditentukan, Lambda menggunakan `KMSKeyArn` kunci untuk mengenkripsi versi paket yang tidak di-zip yang digunakan Lambda untuk menjalankan fungsi. Kapan `SourceKMSKeyArn` `KMSKeyArn` ditentukan tetapi tidak, Lambda menggunakan [Kunci yang dikelola AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)untuk mengenkripsi versi paket yang tidak di-zip.

------
#### [ Lambda console ]

**Untuk menambahkan enkripsi kunci terkelola pelanggan saat Anda membuat fungsi**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih **Buat fungsi**.

1. Pilih **Author dari awal** atau **gambar Container**. 

1. Di bagian **Informasi dasar**, lakukan hal berikut:

   1. Untuk **Nama fungsi**, masukkan nama fungsi.

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

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

1. Memilih kunci yang dikelola pelanggan.

1. 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](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih nama sebuah fungsi.

1. Di panel **Sumber kode**, pilih **Unggah dari**.

1. Pilih **file.zip** atau lokasi **Amazon S3**.  
![\[\]](http://docs.aws.amazon.com/id_id/lambda/latest/dg/images/upload-zip.png)

1. Unggah file atau masukkan lokasi Amazon S3.

1. Pilih **Aktifkan enkripsi dengan kunci yang dikelola AWS KMS pelanggan**.

1. Memilih kunci yang dikelola pelanggan.

1. Pilih **Simpan**.

------
#### [ AWS CLI ]

**Untuk menambahkan enkripsi kunci terkelola pelanggan saat Anda membuat fungsi**

Dalam contoh [create-function](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/create-function.html) berikut:
+ `--code`: Menentukan jalur lokal ke paket penyebaran .zip (`ZipFile`) dan kunci yang dikelola pelanggan untuk mengenkripsinya (). `SourceKMSKeyArn`
+ `--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 nodejs24.x \
  --handler index.handler \
  --role arn:aws:iam::111122223333:role/service-role/my-lambda-role \
  --code ZipFile=fileb://myFunction.zip,SourceKMSKeyArn=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](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/create-function.html) berikut:
+ `--code`: Menentukan lokasi file.zip dalam bucket Amazon S3 `S3Bucket` (`S3Key`,`S3ObjectVersion`,) dan kunci yang dikelola pelanggan untuk mengenkripsinya (). `SourceKMSKeyArn`
+ `--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 nodejs24.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,SourceKMSKeyArn=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-code](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-code.html)contoh 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-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-configuration.html)perintah 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-code](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-code.html)contoh 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-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-configuration.html)perintah 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-code](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-code.html)contoh 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
```

------