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
Penandatanganan kode untuk AWS Lambda membantu memastikan bahwa hanya kode tepercaya yang berjalan di fungsi Lambda Anda. Saat Anda mengaktifkan penandatanganan kode untuk fungsi, Lambda memeriksa setiap deployment kode dan memverifikasi paket kode ditandatangani oleh sumber tepercaya.
catatan
Fungsi yang ditentukan sebagai gambar kontainer tidak mendukung penandatanganan kode.
Untuk memverifikasi integrity kode, gunakan AWS Signer untuk membuat paket kode yang ditandatangani secara digital untuk fungsi dan lapisan. Saat pengguna mencoba men-deploy paket kode, Lambda melakukan pemeriksaan validasi pada paket kode sebelum menerima deployment. Karena pemeriksaan validasi penandatanganan kode berjalan pada waktu deployment, tidak ada dampak performa pada eksekusi fungsi.
Anda juga menggunakan AWS Penandatangan untuk membuat profil penandatanganan. Anda menggunakan profil penandatanganan untuk membuat paket kode yang ditandatangani. Gunakan AWS Identity and Access Management (IAM) untuk mengontrol siapa yang dapat menandatangani paket kode dan membuat profil penandatanganan. Untuk informasi selengkapnya, lihat Autentikasi dan Kontrol Akses dalam AWS Panduan Developer Signer.
Lapisan Lambda mengikuti format paket kode yang ditandatangani yang sama seperti paket kode fungsi. Saat Anda menambahkan lapisan ke fungsi yang telah mengaktifkan penandatanganan kode, Lambda memeriksa lapisan tersebut ditandatangani oleh profil penandatanganan yang diizinkan. Saat Anda mengaktifkan penandatanganan kode untuk fungsi, semua lapisan yang ditambahkan ke fungsi juga harus ditandatangani oleh salah satu profil penndatanganan yang diizinkan.
Anda dapat mengonfigurasi penandatanganan kode untuk mencatat perubahan ke AWS CloudTrail. Penerapan yang berhasil dan diblokir ke fungsi dicatat CloudTrail dengan informasi tentang tanda tangan dan pemeriksaan validasi.
Tidak ada biaya tambahan untuk menggunakan AWS Penandatangan atau penandatanganan kode untuk AWS Lambda.
Validasi tanda tangan
Lambda melakukan pemeriksaan validasi berikut saat Anda men-deploy paket kode yang ditandatangani ke fungsi Anda:
-
Integrity – Memvalidasi paket kode belum dimodifikasi sejak ditandatangani. Lambda membandingkan hash paket dengan hash dari tanda tangan.
-
Expiry – Memvalidasi tanda tangan paket kode belum kedaluwarsa.
-
Mismatch – Memvalidasi paket kode ditandatangani dengan salah satu profil penandatanganan yang diizinkan untuk fungsi Lambda. Mismatch juga terjadi jika tanda tangan tidak ada.
-
Revocation – Memvalidasi tanda tangan paket kode belum dicabut.
Kebijakan validasi tanda tangan yang ditetapkan dalam konfigurasi penandatanganan kode menentukan tindakan mana yang diambil Lambda jika salah satu pemeriksaan validasi gagal:
-
Warn – Lambda mengizinkan deployment paket kode, tetapi mengeluarkan peringatan. Lambda mengeluarkan CloudWatch metrik Amazon baru dan juga menyimpan peringatan di log. CloudTrail
-
Enforce – Lambda mengeluarkan peringatan (sama seperti untuk tindakan Warn) dan memblokir deployment paket kode.
Anda dapat mengonfigurasi kebijakan untuk pemeriksaan validasi expiry, mismatch, dan revocation. Perhatikan bahwa Anda tidak dapat mengonfigurasi kebijakan untuk pemeriksaan integrity. Jika pemeriksaan integrity gagal, Lambda memblokir deployment.
Mengonfigurasi penandatanganan kode dengan API Lambda
Untuk mengelola konfigurasi penandatanganan kode dengan AWS CLI atau AWS SDK, gunakan operasi API berikut:
Untuk mengelola konfigurasi penandatanganan kode untuk fungsi, gunakan operasi API berikut: