A startup is deploying a new serverless application using AWS Lambda to process user uploads. In accordance with the AWS Shared Responsibility Model, which of the following tasks is the responsibility of the startup?
- AMaintaining and updating the supported language runtime versions (e.g., Python or Node.js) provided by AWS.
- Defining the IAM execution roles and resource-based policies that control access to the Lambda functions.Answer
- CApplying security patches and updates to the guest operating system running the Lambda function.
- DScheduling physical compliance audits and inspections of the AWS facilities hosting the serverless infrastructure.
Answer
Defining the IAM execution roles and resource-based policies that control access to the Lambda functions.
Defining IAM execution roles and resource-based policies is a customer responsibility. Under the Shared Responsibility Model, even for fully managed and serverless services like AWS Lambda, the customer retains control over identity and access management (IAM). This ensures that only authorized entities can invoke the functions and that the functions themselves have the minimum necessary privileges to access other AWS services.
Step-by-Step Solution
Key Concept
Under the AWS Shared Responsibility Model, serverless services like AWS Lambda shift infrastructure management responsibilities (like operating system patching and runtime maintenance) to AWS. The customer remains responsible for application code, data classification, and access management (Identity and Access Management, policies, and roles).