Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Keamanan dan izin untuk fungsi Lambda yang tahan lama
Fungsi tahan lama Lambda memerlukan izin IAM khusus untuk mengelola operasi pos pemeriksaan. Ikuti prinsip hak istimewa paling sedikit dengan hanya memberikan izin yang dibutuhkan fungsi Anda.
Izin peran eksekusi
Peran eksekusi fungsi tahan lama Anda memerlukan izin untuk membuat pos pemeriksaan dan mengambil status eksekusi. Kebijakan berikut menunjukkan izin minimum yang diperlukan:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:CheckpointDurableExecution", "lambda:GetDurableExecutionState" ], "Resource": "arn:aws:lambda:region:account-id:function:function-name:*" } ] }
Saat Anda membuat fungsi tahan lama menggunakan konsol, Lambda secara otomatis menambahkan izin ini ke peran eksekusi. Jika Anda membuat fungsi menggunakan AWS CLI or AWS CloudFormation, tambahkan izin ini ke peran eksekusi Anda.
Prinsip hak istimewa paling sedikit
Cakupan Resource elemen ke fungsi tertentu ARNs alih-alih menggunakan wildcard. Ini membatasi peran eksekusi ke operasi pos pemeriksaan hanya untuk fungsi yang membutuhkannya.
Contoh: Izin tercakup untuk beberapa fungsi
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:CheckpointDurableExecution", "lambda:GetDurableExecutionState" ], "Resource": [ "arn:aws:lambda:us-east-1:123456789012:function:orderProcessor:*", "arn:aws:lambda:us-east-1:123456789012:function:paymentHandler:*" ] } ] }
Atau, Anda dapat menggunakan kebijakan AWS terkelola AWSLambdaBasicDurableExecutionRolePolicy yang menyertakan izin eksekusi tahan lama yang diperlukan bersama dengan izin eksekusi Lambda dasar untuk CloudWatch Log Amazon.
Enkripsi negara
Fungsi tahan lama Lambda secara otomatis mengaktifkan enkripsi saat istirahat menggunakan kunci AWS yang dimiliki tanpa biaya. Setiap eksekusi fungsi mempertahankan status terisolasi yang tidak dapat diakses oleh eksekusi lain. Kunci terkelola pelanggan (CMK) tidak didukung.
Data pos pemeriksaan meliputi:
Hasil langkah dan nilai kembalikan
Kemajuan eksekusi dan timeline
Tunggu informasi status
Semua data dienkripsi dalam perjalanan menggunakan TLS ketika Lambda membaca atau menulis data pos pemeriksaan.
Enkripsi khusus dengan serializer dan deserializer khusus
Untuk persyaratan keamanan kritis, Anda dapat menerapkan mekanisme enkripsi dan dekripsi Anda sendiri menggunakan serializer kustom dan deserializer () menggunakan SDK yang tahan lama. SerDer Pendekatan ini memberi Anda kontrol penuh atas kunci enkripsi dan algoritma yang digunakan untuk melindungi data pos pemeriksaan.
penting
Saat Anda menggunakan enkripsi khusus, Anda kehilangan visibilitas hasil operasi di konsol Lambda dan respons API. Data pos pemeriksaan muncul dienkripsi dalam riwayat eksekusi dan tidak dapat diperiksa tanpa dekripsi.
Peran eksekusi fungsi Anda membutuhkan kms:Encrypt dan kms:Decrypt izin untuk AWS KMS kunci yang digunakan dalam SerDer implementasi kustom.
CloudTrail penebangan
Lambda mencatat operasi pos pemeriksaan sebagai peristiwa data di. AWS CloudTrail Anda dapat menggunakan CloudTrail untuk mengaudit saat pos pemeriksaan dibuat, melacak perubahan status eksekusi, dan memantau akses ke data eksekusi yang tahan lama.
Operasi pos pemeriksaan muncul di CloudTrail log dengan nama acara berikut:
CheckpointDurableExecution- Log ketika langkah selesai dan membuat pos pemeriksaanGetDurableExecutionState- Tercatat saat Lambda mengambil status eksekusi selama pemutaran ulang
Untuk mengaktifkan pencatatan peristiwa data untuk fungsi tahan lama, konfigurasikan CloudTrail jejak untuk mencatat peristiwa data Lambda. Untuk informasi selengkapnya, lihat Mencatat peristiwa data di Panduan CloudTrail Pengguna.
Contoh: entri CloudTrail log untuk operasi pos pemeriksaan
{ "eventVersion": "1.08", "eventTime": "2024-11-16T10:30:45Z", "eventName": "CheckpointDurableExecution", "eventSource": "lambda.amazonaws.com", "requestParameters": { "functionName": "myDurableFunction", "executionId": "exec-abc123", "stepId": "step-1" }, "responseElements": null, "eventType": "AwsApiCall" }
Pertimbangan lintas akun
Jika Anda menjalankan fungsi tahan lama di seluruh AWS akun, akun panggilan memerlukan lambda:InvokeFunction izin, tetapi operasi pos pemeriksaan selalu menggunakan peran eksekusi di akun fungsi. Akun panggilan tidak dapat mengakses data pos pemeriksaan atau status eksekusi secara langsung.
Isolasi ini memastikan bahwa data pos pemeriksaan tetap aman di dalam akun fungsi, bahkan ketika dipanggil dari akun eksternal.
Fitur keamanan Lambda yang diwarisi
Fungsi tahan lama mewarisi semua fitur keamanan, tata kelola, dan kepatuhan dari Lambda, termasuk konektivitas VPC, enkripsi variabel lingkungan, antrian surat mati, konkurensi cadangan, fungsi, penandatanganan kode, dan sertifikasi kepatuhan (SOC URLs, PCI DSS, HIPAA, dll.).
Untuk informasi terperinci tentang fitur keamanan Lambda, lihat Keamanan AWS Lambda di Panduan Pengembang Lambda. Satu-satunya pertimbangan keamanan tambahan untuk fungsi tahan lama adalah izin pos pemeriksaan yang didokumentasikan dalam panduan ini.