Question 22
Domain 2: Design Resilient ArchitecturesSebuah perusahaan memiliki Lambda function yang perlu diakses oleh aplikasi di akun AWS yang berbeda. Mereka ingin mengizinkan invocation dari akun lain **tanpa perlu membuat IAM role** di akun pemanggil.
Correct answer: B
Explanation
Lambda mendukung resource-based policy pada fungsi untuk memberi izin lintas akun, sehingga akun lain dapat memanggil fungsi tanpa IAM role di akun pemanggil. Dengan menambahkan permission yang "allow invocation from a specific account", akses dibatasi hanya ke akun yang ditentukan sesuai prinsip least privilege.
Why each option is right or wrong
A. Buat IAM user di akun Lambda dan bagikan credentials ke akun lain
B. Tambahkan resource-based policy pada Lambda function yang allow invocation dari akun tertentu
Lambda mengizinkan akses lintas akun melalui resource-based policy pada fungsi, bukan hanya identity-based policy di akun pemanggil. Secara spesifik, gunakan permission pada AWS Lambda dengan aksi `lambda:InvokeFunction` yang menargetkan akun lain sebagai principal; ini memungkinkan invocation tanpa membuat IAM role di akun pemanggil, dan pembatasannya tetap bisa diarahkan ke akun tertentu sesuai prinsip least privilege.
C. Gunakan VPC Peering dan akses Lambda via private IP
D. Deploy Lambda di kedua akun dengan kode yang sama