

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

# Menggunakan penandatanganan kode untuk memverifikasi integritas kode dengan Lambda
<a name="configuration-codesigning"></a>

Penandatanganan kode membantu memastikan bahwa hanya kode tepercaya yang diterapkan ke fungsi Lambda Anda. Dengan menggunakan AWS Signer, Anda dapat membuat paket kode yang ditandatangani secara digital untuk fungsi Anda. Saat Anda [menambahkan konfigurasi penandatanganan kode ke fungsi](configuration-codesigning-create.md), Lambda memverifikasi bahwa semua penerapan kode baru ditandatangani oleh sumber tepercaya. Karena pemeriksaan validasi penandatanganan kode berjalan pada waktu penerapan, tidak ada dampak pada eksekusi fungsi.

**penting**  
Konfigurasi penandatanganan kode hanya mencegah penerapan baru kode yang tidak ditandatangani. Jika Anda menambahkan konfigurasi penandatanganan kode ke fungsi yang sudah ada yang memiliki kode yang tidak ditandatangani, kode tersebut akan terus berjalan hingga Anda menerapkan paket kode baru.

Saat Anda mengaktifkan penandatanganan kode untuk suatu fungsi, [lapisan](chapter-layers.md) apa pun yang Anda tambahkan ke fungsi juga harus ditandatangani oleh profil penandatanganan yang diizinkan.

Tidak ada biaya tambahan untuk penggunaan AWS Signer atau penandatanganan kode untuk AWS Lambda.

## Validasi tanda tangan
<a name="config-codesigning-valid"></a>

Lambda melakukan pemeriksaan validasi berikut saat Anda men-deploy paket kode yang ditandatangani ke fungsi Anda:

1. **Integritas**: Memvalidasi bahwa paket kode belum dimodifikasi sejak ditandatangani. Lambda membandingkan hash paket dengan hash dari tanda tangan.

1. **Kedaluwarsa**: Memvalidasi bahwa tanda tangan paket kode belum kedaluwarsa.

1. **Ketidakcocokan**: Memvalidasi bahwa paket kode ditandatangani dengan profil penandatanganan yang diizinkan

1. **Pencabutan**: Memvalidasi bahwa tanda tangan paket kode belum dicabut.

Saat membuat konfigurasi penandatanganan kode, Anda dapat menggunakan [UntrustedArtifactOnDeployment](https://docs.aws.amazon.com/lambda/latest/api/API_CodeSigningPolicies.html#lambda-Type-CodeSigningPolicies-UntrustedArtifactOnDeployment)parameter untuk menentukan respons Lambda jika pemeriksaan kedaluwarsa, ketidakcocokan, atau pencabutan gagal. Anda dapat memilih salah satu dari tindakan ini:
+ `Warn`: Ini adalah pengaturan default. Lambda memungkinkan penyebaran paket kode, tetapi mengeluarkan peringatan. Lambda mengeluarkan CloudWatch metrik Amazon baru (`SignatureValidationErrors`) dan juga menyimpan peringatan di log. CloudTrail 
+ `Enforce`Lambda mengeluarkan peringatan (sama seperti untuk `Warn` tindakan) dan memblokir penerapan paket kode.

**Topics**
+ [

## Validasi tanda tangan
](#config-codesigning-valid)
+ [

# Membuat konfigurasi penandatanganan kode untuk Lambda
](configuration-codesigning-create.md)
+ [

# Mengonfigurasi kebijakan IAM untuk konfigurasi penandatanganan kode Lambda
](config-codesigning-policies.md)
+ [

# Menggunakan tag pada konfigurasi penandatanganan kode
](tags-csc.md)

# Membuat konfigurasi penandatanganan kode untuk Lambda
<a name="configuration-codesigning-create"></a>

Untuk mengaktifkan penandatanganan kode untuk fungsi, Anda membuat *konfigurasi penandatanganan kode* dan melampirkannya ke fungsi. Konfigurasi penandatanganan kode menetapkan daftar profil penandatanganan yang diizinkan dan tindakan kebijakan yang harus diambil jika pemeriksaan validasi gagal.

**catatan**  
Fungsi yang ditentukan sebagai gambar kontainer tidak mendukung penandatanganan kode.

**Topics**
+ [

## Prasyarat konfigurasi
](#config-codesigning-prereqs)
+ [

## Membuat konfigurasi penandatanganan kode
](#config-codesigning-config-console)
+ [

## Mengaktifkan penandatanganan kode untuk fungsi
](#config-codesigning-function-console)

## Prasyarat konfigurasi
<a name="config-codesigning-prereqs"></a>

Sebelum Anda dapat mengonfigurasi penandatanganan kode untuk fungsi Lambda, gunakan AWS Penandatangan untuk melakukan hal berikut:
+ Buat satu atau lebih [profil penandatanganan](https://docs.aws.amazon.com/signer/latest/developerguide/signing-profiles.html).
+ Gunakan profil penandatanganan untuk [membuat paket kode yang ditandatangani untuk fungsi Anda](https://docs.aws.amazon.com/signer/latest/developerguide/lambda-workflow.html).

## Membuat konfigurasi penandatanganan kode
<a name="config-codesigning-config-console"></a>

Konfigurasi penandatanganan kode menetapkan daftar profil penandatanganan yang diizinkan dan kebijakan validasi tanda tangan.

**Untuk membuat konfigurasi penandatanganan kode (konsol)**

1. Buka [Halaman konfigurasi penandatanganan kode](https://console.aws.amazon.com/lambda/home#/code-signing-configurations) di konsol Lambda.

1. Pilih **Buat konfigurasi**.

1. Untuk **Deskripsi**, masukkan nama deskriptif untuk konfigurasi.

1. Di bawah **Profil penandatanganan**, tambahkan hingga 20 profil penandatanganan ke konfigurasi.

   1. Untuk **ARN versi profil penandatanganan**, pilih Amazon Resource Name (ARN) dari versi profil, atau masukkan ARN.

   1. Untuk menambahkan profil penandatanganan tambahan, pilih **Tambahkan profil penandatanganan**.

1. Di bawah **Kebijakan validasi tanda tangan**, pilih **Warn** atau **Enforce**.

1. Pilih **Buat konfigurasi**.

## Mengaktifkan penandatanganan kode untuk fungsi
<a name="config-codesigning-function-console"></a>

Untuk mengaktifkan penandatanganan kode untuk suatu fungsi, tambahkan konfigurasi penandatanganan kode ke fungsi.

**penting**  
Konfigurasi penandatanganan kode hanya mencegah penerapan baru kode yang tidak ditandatangani. Jika Anda menambahkan konfigurasi penandatanganan kode ke fungsi yang sudah ada yang memiliki kode yang tidak ditandatangani, kode tersebut akan terus berjalan hingga Anda menerapkan paket kode baru.

**Untuk mengaitkan konfigurasi penandatanganan kode dengan fungsi (konsol)**

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

1. Pilih fungsi yang ingin Anda aktifkan penandatanganan kodenya.

1. Buka tab **Konfigurasi**.

1. Gulir ke bawah dan pilih **Penandatanganan kode**.

1. Pilih **Edit**.

1. Di **Edit penandatanganan kode**, pilih konfigurasi penandatanganan kode untuk fungsi ini.

1. Pilih **Simpan**.

# Mengonfigurasi kebijakan IAM untuk konfigurasi penandatanganan kode Lambda
<a name="config-codesigning-policies"></a>

Untuk memberikan izin bagi pengguna untuk mengakses operasi API penandatanganan kode Lambda, lampirkan satu atau beberapa pernyataan kebijakan ke kebijakan pengguna. Untuk informasi selengkapnya tentang kebijakan pengguna, lihat [Kebijakan IAM berbasis identitas untuk Lambda](access-control-identity-based.md).

Contoh pernyataan kebijakan berikut memberikan izin untuk membuat, memperbarui, dan mengambil konfigurasi penandatanganan kode.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
          "lambda:CreateCodeSigningConfig",
          "lambda:UpdateCodeSigningConfig",
          "lambda:GetCodeSigningConfig"
        ],
      "Resource": "*" 
    }
  ]
}
```

------

Administrator dapat menggunakan kunci syarat `CodeSigningConfigArn` untuk menentukan konfigurasi penandatanganan kode yang harus digunakan developer untuk membuat atau memperbarui fungsi Anda.

Contoh pernyataan kebijakan berikut memberikan izin untuk membuat fungsi. Pernyataan kebijakan mencakup syarat `lambda:CodeSigningConfigArn` untuk menentukan konfigurasi penandatanganan kode yang diizinkan. Lambda memblokir permintaan `CreateFunction` API jika [CodeSigningConfigArn](https://docs.aws.amazon.com/lambda/latest/api/API_CreateFunction.html#lambda-CreateFunction-request-CodeSigningConfigArn)parameter hilang atau tidak cocok dengan nilai dalam kondisi.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowReferencingCodeSigningConfig",
      "Effect": "Allow",
      "Action": [
        "lambda:CreateFunction"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "lambda:CodeSigningConfigArn": "arn:aws:lambda:us-east-1:111122223333:code-signing-config:csc-0d4518bd353a0a7c6"
        }
      }
    }
  ]
}
```

------

# Menggunakan tag pada konfigurasi penandatanganan kode
<a name="tags-csc"></a>

Anda dapat menandai konfigurasi penandatanganan kode untuk mengatur dan mengelola sumber daya Anda. Tag adalah pasangan nilai kunci bentuk bebas yang terkait dengan sumber daya Anda yang didukung secara keseluruhan. Layanan AWS Untuk informasi selengkapnya tentang kasus penggunaan tag, lihat [Strategi penandaan umum](https://docs.aws.amazon.com//tag-editor/latest/userguide/best-practices-and-strats.html#tag-strategies) di * AWS Sumber Daya Penandaan dan Panduan Editor Tag*. 

 Anda dapat menggunakan AWS Lambda API untuk melihat dan memperbarui tag. Anda juga dapat melihat dan memperbarui tag sambil mengelola konfigurasi penandatanganan kode tertentu di konsol Lambda.

**Topics**
+ [

## Izin diperlukan untuk bekerja dengan tag
](#csc-tags-required-permissions)
+ [

## Menggunakan tag dengan konsol Lambda
](#tags-csc-console)
+ [

## Menggunakan tag dengan AWS CLI
](#tags-csc-cli)

## Izin diperlukan untuk bekerja dengan tag
<a name="csc-tags-required-permissions"></a>

Untuk mengizinkan identitas AWS Identity and Access Management (IAM) (pengguna, grup, atau peran) membaca atau menyetel tag pada sumber daya, berikan izin yang sesuai:
+ **lambda: ListTags** —Ketika sumber daya memiliki tag, berikan izin ini kepada siapa saja yang perlu memanggilnya`ListTags`. Untuk fungsi yang ditandai, izin ini juga diperlukan untuk`GetFunction`.
+ **lambda: TagResource** —Berikan izin ini kepada siapa saja yang perlu memanggil `TagResource` atau melakukan tag saat membuat.

Secara opsional, pertimbangkan untuk memberikan UntagResource izin **lambda:** juga untuk mengizinkan `UntagResource` panggilan ke sumber daya.

Untuk informasi selengkapnya, lihat [Kebijakan IAM berbasis identitas untuk Lambda](access-control-identity-based.md).

## Menggunakan tag dengan konsol Lambda
<a name="tags-csc-console"></a>

Anda dapat menggunakan konsol Lambda untuk membuat konfigurasi penandatanganan kode yang memiliki tag, menambahkan tag ke konfigurasi penandatanganan kode yang ada, dan memfilter konfigurasi penandatanganan kode berdasarkan tag.

**Untuk menambahkan tag saat Anda membuat konfigurasi penandatanganan kode**

1. Buka [konfigurasi penandatanganan Kode](https://console.aws.amazon.com/lambda/home#/code-signing-configurations) di konsol Lambda.

1. Dari header panel konten, Pilih **Buat konfigurasi**.

1. Di bagian di bagian atas panel konten, atur konfigurasi penandatanganan kode Anda. Untuk informasi selengkapnya tentang mengonfigurasi konfigurasi penandatanganan kode, lihat. [Menggunakan penandatanganan kode untuk memverifikasi integritas kode dengan Lambda](configuration-codesigning.md)

1. Di bagian **Tag**, pilih **Tambahkan tag baru**.

1. Di bidang **Key**, masukkan kunci tag Anda. Untuk informasi tentang pembatasan penandaan, lihat [Batas dan persyaratan penamaan tag](https://docs.aws.amazon.com//tag-editor/latest/userguide/best-practices-and-strats.html#id_tags_naming_best_practices) di Panduan * AWS Sumber Daya Penandaan dan Editor Tag*.

1. Pilih **Buat konfigurasi**.

**Untuk menambahkan tag ke konfigurasi penandatanganan kode yang ada**

1. Buka [konfigurasi penandatanganan Kode](https://console.aws.amazon.com/lambda/home#/code-signing-configurations) di konsol Lambda.

1. Pilih nama konfigurasi penandatanganan kode Anda.

1. **Pada tab di bawah panel **Detail**, pilih Tag.**

1. Pilih **Kelola tanda**.

1. Pilih **Tambahkan tag baru**.

1. Di bidang **Key**, masukkan kunci tag Anda. Untuk informasi tentang pembatasan penandaan, lihat [Batas dan persyaratan penamaan tag](https://docs.aws.amazon.com//tag-editor/latest/userguide/best-practices-and-strats.html#id_tags_naming_best_practices) di Panduan * AWS Sumber Daya Penandaan dan Editor Tag*.

1. Pilih **Simpan**.

**Untuk memfilter konfigurasi penandatanganan kode berdasarkan tag**

1. Buka [konfigurasi penandatanganan Kode](https://console.aws.amazon.com/lambda/home#/code-signing-configurations) di konsol Lambda.

1. Pilih kotak pencarian.

1. Dari daftar dropdown, pilih tag Anda dari bawah subjudul **Tag**.

1. Pilih **Gunakan: “tag-name”** untuk melihat semua konfigurasi penandatanganan kode yang ditandai dengan kunci ini, atau pilih **Operator** untuk memfilter lebih lanjut berdasarkan nilai.

1. Pilih nilai tag Anda untuk difilter dengan kombinasi kunci tag dan nilai.

Kotak pencarian juga mendukung pencarian kunci tag. Masukkan nama kunci untuk menemukannya dalam daftar.

## Menggunakan tag dengan AWS CLI
<a name="tags-csc-cli"></a>

Anda dapat menambahkan dan menghapus tag pada resource Lambda yang ada, termasuk konfigurasi penandatanganan kode, dengan API Lambda. Anda juga dapat menambahkan tag saat membuat konfigurasi penandatanganan kode, yang memungkinkan Anda menyimpan sumber daya yang ditandai melalui seluruh siklus hidupnya.

### Memperbarui tag dengan tag Lambda APIs
<a name="tags-csc-api-config"></a>

Anda dapat menambahkan dan menghapus tag untuk sumber daya Lambda yang didukung melalui operasi [TagResource](https://docs.aws.amazon.com/lambda/latest/api/API_TagResource.html)dan [UntagResource](https://docs.aws.amazon.com/lambda/latest/api/API_UntagResource.html)API.

Anda dapat memanggil operasi ini menggunakan AWS CLI. Untuk menambahkan tag ke sumber daya yang ada, gunakan `tag-resource` perintah. Contoh ini menambahkan dua tag, satu dengan kunci *Department* dan satu dengan kunci*CostCenter*.

```
aws lambda tag-resource \
--resource arn:aws:lambda:us-east-2:123456789012:resource-type:my-resource \
--tags Department=Marketing,CostCenter=1234ABCD
```

Untuk menghapus tanda, gunakan perintah `untag-resource`. Contoh ini menghapus tag dengan kunci*Department*.

```
aws lambda untag-resource --resource arn:aws:lambda:us-east-1:123456789012:resource-type:resource-identifier \
--tag-keys Department
```

### Menambahkan tag saat membuat konfigurasi penandatanganan kode
<a name="tags-csc-on-create"></a>

Untuk membuat konfigurasi penandatanganan kode Lambda baru dengan tag, gunakan operasi [CreateCodeSigningConfig](https://docs.aws.amazon.com//lambda/latest/api/API_CreateCodeSigningConfig.html)API. Tentukan parameter `Tags`. Anda dapat memanggil operasi ini dengan `create-code-signing-config` AWS CLI perintah dan `--tags` opsi. *Untuk informasi selengkapnya tentang perintah CLI, lihat [create-code-signing-config](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/create-code-signing-config.html)di Command Reference AWS CLI .*

Sebelum menggunakan `Tags` parameter dengan`CreateCodeSigningConfig`, pastikan bahwa peran Anda memiliki izin untuk menandai sumber daya bersama izin yang biasa diperlukan untuk operasi ini. Untuk informasi selengkapnya tentang izin untuk menandai, lihat. [Izin diperlukan untuk bekerja dengan tag](#csc-tags-required-permissions)

### Melihat tag dengan tag Lambda APIs
<a name="tags-csc-api-view"></a>

Untuk melihat tag yang diterapkan ke sumber daya Lambda tertentu, gunakan operasi `ListTags` API. Untuk informasi selengkapnya, lihat [ListTags](https://docs.aws.amazon.com/lambda/latest/api/API_ListTags.html).

Anda dapat memanggil operasi ini dengan `list-tags` AWS CLI perintah dengan memberikan ARN (Nama Sumber Daya Amazon).

```
aws lambda list-tags --resource arn:aws:lambda:us-east-1:123456789012:resource-type:resource-identifier
```

### Memfilter sumber daya berdasarkan tag
<a name="tags-csc-filtering"></a>

Anda dapat menggunakan operasi AWS Resource Groups Tagging API [GetResources](https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/API_GetResources.html)API untuk memfilter sumber daya berdasarkan tag. `GetResources`Operasi menerima hingga 10 filter, dengan setiap filter berisi kunci tag dan hingga 10 nilai tag. Anda `GetResources` menyediakan `ResourceType` untuk memfilter berdasarkan jenis sumber daya tertentu.

Anda dapat memanggil operasi ini menggunakan `get-resources` AWS CLI perintah. Untuk contoh penggunaan`get-resources`, lihat [mendapatkan sumber daya di Referensi](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/resourcegroupstaggingapi/get-resources.html#examples) Perintah *AWS CLI*. 