SaveMyCert
Log in
5 of 5 free questions left today·for 30 a day
Security and Compliance

AWS Shared Responsibility Model: Security OF the Cloud vs IN the Cloud

20 min readCLF-C02 · Security and ComplianceUpdated

The AWS shared responsibility model is the framework that decides who is responsible for security in AWS: AWS secures the cloud itself — data centers, hardware, networking, and the software that runs managed services — while you secure everything you put in the cloud, such as your data, identities, and configurations. It is the foundation of the CLF-C02 Security and Compliance domain, and the hardest questions on it test how the split shifts between services like Amazon EC2, Amazon RDS, and AWS Lambda. In this lesson you will learn the model's components, classify any control as inherited, shared, or customer-specific, see why secure defaults and AWS tools never move your side of the line, and work out who owns a task no matter which service it involves.

What you’ll learn
  • Explain the AWS shared responsibility model as "security of the cloud" versus "security in the cloud"
  • Describe AWS's responsibilities, including physical infrastructure, the hardware lifecycle, networking, and the hypervisor on every tenancy option
  • Describe the customer's responsibilities, including data and where it resides, identity and access management, encryption at rest and in transit, and configuration choices
  • Classify controls as inherited, shared, or customer-specific, and explain how each side evidences its controls
  • Predict how responsibility shifts across EC2, RDS, Lambda, and S3 for tasks like OS patching, runtime updates, and encryption
  • Explain why secure defaults (such as S3 default encryption) and AWS tools (such as Systems Manager Patch Manager) do not move the customer's responsibilities to AWS
  • Identify the responsibilities that never move: customer data is always yours, physical security is always AWS's
The AWS shared responsibility model: AWS secures the cloud itself, you secure what you put in it.You — security IN the cloudCustomer dataPlatform, applications, identityOperating system, network, firewallClient & server-side encryptionNetwork traffic protectionAnything you configure, uploador grant access to.Misconfiguration here is your risk.AWS — security OF the cloudCompute, storage, database, networkingHardware and global infrastructureRegions, Availability Zones, edgePhysical data-centre securityHypervisor and host patchingEverything you cannot touch,reach or configure.AWS is audited on this, not you.The line moves: the more managed the service, the more AWS takes on.
AWS secures the infrastructure the cloud runs on; you secure everything you put into it and every permission you grant. Almost every real-world breach on AWS happens on the left-hand side of this line — and so does almost every exam question about it.

What the AWS shared responsibility model is

When you run workloads on AWS, security and compliance become a partnership. AWS operates the global infrastructure — the buildings, servers, cables, and virtualization software — and you operate whatever you build on top of it. The AWS shared responsibility model is the formal statement of where that dividing line sits. AWS summarizes it in six words you should memorize: AWS is responsible for security OF the cloud, and the customer is responsible for security IN the cloud.

Why does AWS publish this model at all? Because moving to the cloud does not outsource security — it redistributes it. AWS takes over the heavy operational burdens that every on-premises team used to carry themselves: physical data center security, hardware lifecycle, host operating systems, and the hypervisor layer. That relief lets you concentrate your effort on the parts only you can control — your data, who can access it, and how your resources are configured. If you assume "AWS handles security" and stop there, you leave your side of the model wide open: a publicly readable bucket or an over-permissive role is a customer-side failure, however well secured the infrastructure underneath it is.

The model has three components you must recognize on the exam: AWS responsibilities (security of the cloud), customer responsibilities (security in the cloud), and shared responsibilities — controls where both parties do their part, such as patch management and awareness training. Crucially, the boundary between AWS and customer responsibilities is not fixed. It shifts depending on the service you use: the more managed the service, the more AWS takes on. That shift — EC2 versus RDS versus Lambda — is a common way to test whether you truly understand the model rather than having memorized a single diagram.

AWS's responsibilities: security OF the cloud

AWS is responsible for protecting the infrastructure that runs every AWS service. This infrastructure spans four layers you should be able to list: physical facilities, hardware, networking, and virtualization software.

  • Physical security of data centers. Guards, fencing, badge access, surveillance, and environmental controls at every facility. Customers can never visit an AWS data center or touch the hardware — physical security is entirely, permanently AWS's job.
  • Hardware and infrastructure. The whole hardware lifecycle: procuring, installing, maintaining, replacing failed servers and components, and securely decommissioning storage devices and other equipment. When a disk that held your data is retired, AWS destroys it according to its media-disposal process. That covers AWS's physical media, not your logical copies: snapshots, backups and read replicas you created are your resources, and deleting the ones you no longer need is your job. This holds even on an EC2 Dedicated Host: the physical server is dedicated to one customer, but it is still AWS hardware, so AWS maintains and replaces it.
  • Durability of the infrastructure. Building storage services so that data survives hardware failure is AWS's job — Amazon S3, for example, is designed to store objects redundantly so that a failed disk or device does not lose them. That protects your data from AWS hardware failing; it does not protect it from your own users deleting it (see the customer's side).
  • Global network infrastructure. The Regions, Availability Zones, and edge locations, plus the cabling and network hardware connecting them, including protections against infrastructure-level threats.
  • Virtualization and host software. The hypervisor that isolates one customer's EC2 instances from another's, and the host operating systems on the physical machines. You never patch a hypervisor on AWS — that is always AWS's responsibility, on every tenancy option: shared instances, Dedicated Instances, and Dedicated Hosts. Dedicated tenancy changes who else runs on the hardware, not who operates it; a Dedicated Host shows you its sockets and cores for licensing, but gives you no access to its hypervisor or host operating system. (EC2 bare metal instances run without a hypervisor, but the underlying Nitro hardware and firmware remain AWS's.)

For managed services, AWS's responsibility extends upward into the software layer. With Amazon RDS, DynamoDB, or Lambda, AWS also handles the underlying operating system, platform patching, the service software itself, and — for serverless services such as Lambda — the platform's capacity and scaling. That is exactly why the responsibility line moves per service: "security of the cloud" covers everything AWS operates for you, and managed services mean AWS operates more.

A reliable exam heuristic: if the task requires physical access to hardware, access to the host OS or hypervisor, or maintenance of the software that powers a managed service, the answer is AWS. Because you cannot inspect AWS's layer yourself, AWS evidences it through independent third-party audits — reports such as SOC 2, which customers download from AWS Artifact. Because the hypervisor and the data centers are outside your reach, evidence about those layers can only come from AWS's third-party reports, never from your own testing. The compliance programs themselves belong to a separate task (2.2); for this topic, know that AWS proves its side of the model so that customers can inherit those controls.

The customer's responsibilities: security IN the cloud

Everything you create, upload, configure, or grant access to inside AWS is yours to secure. The customer's side of the model — "security in the cloud" — centers on five areas:

  • Customer data. You own your data and you are responsible for protecting it: classifying it, deciding where it lives, controlling who can read it, and choosing whether and how to encrypt it. This never changes, on any service, ever. Even on the most fully managed service AWS offers, the customer's data remains the customer's responsibility. That includes protecting it from your own mistakes: AWS's durability guards against failed hardware, but if a user with delete permission removes an S3 object, recovering it depends on settings you chose — S3 Versioning, backups, and least-privilege permissions that keep delete rights to the few who need them. Deciding where it lives is literal: your content stays in the AWS Region you choose. AWS spreads it across Availability Zones within that Region for durability (S3 Standard, for example, stores data across at least three AZs), but it does not move or copy your content to another Region unless you agree to it. Any copy outside the Region — S3 Cross-Region Replication, a snapshot or backup copied to another Region — exists only because you configured it, and you answer for where that copy sits.
  • Identity and access management. Creating users and roles, assigning permissions, enforcing least privilege, enabling multi-factor authentication, and rotating credentials. AWS provides IAM as a tool, but every permission granted with it is your decision and your responsibility. This includes the roles your own workloads use: the execution role a Lambda function assumes, and which policies (AWS managed or customer managed) are attached to it, is your design even on a fully serverless stack. Compare a service-linked role, which an AWS service creates for itself with permissions AWS predefines and you cannot edit. (What IAM can do is its own task statement, 2.3 — here you only need to know that managing access is customer work.)
  • Guest operating systems and installed software. On Amazon EC2, you control the instance's operating system and everything you install on it (a web server, a database, agents), so you must patch it, apply security updates, and manage administrative access to it. Using an AWS-provided AMI or an AWS tool such as AWS Systems Manager Patch Manager does not change this: Patch Manager automates the work, but which patches are approved and when they run are still your settings, and the outcome is still your responsibility.
  • Network and firewall configuration. Security group rules, network ACLs, subnet design, and routing. AWS supplies the virtual networking; you decide what traffic it permits. A security group that allows unrestricted inbound access is a customer mistake, not an AWS one.
  • Encryption choices. Choosing server-side or client-side encryption, choosing and managing keys, and protecting data in transit. AWS builds the encryption capabilities — and the decisions about using them are yours (details below).

Secure defaults do not move the decision

Some AWS services now encrypt by default: Amazon S3 has applied server-side encryption with S3 managed keys (SSE-S3) to every new object since January 2023, and Amazon DynamoDB encrypts every table at rest. A default is a starting point, not a transfer of responsibility — you still decide whether it meets your requirements. SSE-KMS with a customer managed key in AWS KMS goes further than the default: you control the key through its key policy, and every use of the key is logged in AWS CloudTrail. Other services leave even the default to you: an Amazon EBS volume is encrypted only if you create it encrypted (or from an encrypted snapshot) or turn on EBS encryption by default for your account in that Region.

Encryption taskWhat it protectsWhose decision
Encryption at rest (S3 server-side encryption, EBS encryption, RDS storage encryption)Stored data on disks and in storage servicesCustomer: whether to go beyond a default, and which keys to use
Encryption in transit (TLS/HTTPS for your application or its connections)Data moving across a networkCustomer: you configure TLS for the applications you run
Key management (customer managed KMS keys, rotation, key policies)Control over who can use keys, with a record of useCustomer: AWS operates KMS; you own the key policies and choices

Note the boundary between rows: encrypting an EBS volume protects data at rest on that volume — it does nothing for data your application sends over the internet, which needs TLS. Features such as S3 Versioning protect earlier versions of objects; they do not control or record key use.

The unifying idea: AWS cannot see your intent. It cannot know which S3 bucket should be public, which user deserves administrator access, or which data is sensitive. Anything that depends on your decisions is, by definition, security in the cloud — and it belongs to you.

Shared controls and the three classifications

Not every control lands cleanly on one side. AWS classifies controls into three categories, and CLF-C02 expects you to recognize all three.

Inherited controls

Controls you fully inherit from AWS because AWS operates them end to end. Physical security and environmental controls are the classic examples: AWS implements them, auditors verify them, and you simply build on top of the verified foundation. You never perform these controls yourself, and you evidence them with AWS's independent audit reports (such as SOC 2). Those reports cover AWS's side only. Using an audited service does not make your workload compliant: your shared and customer-specific controls — access, encryption, data handling — still need your own evidence.

Shared controls

Controls where both AWS and the customer act — each in their own layer. AWS names three you should memorize:

  • Patch management. AWS patches the physical infrastructure, host operating systems, and managed-service software. You patch the guest operating systems on your EC2 instances and the applications you install. Same control, two layers, two owners.
  • Configuration management. AWS configures its infrastructure devices and host systems. You configure your own resources — the guest OS on your EC2 instances, the DB parameter groups and settings of your RDS databases, buckets, security groups, and applications.
  • Awareness and training. AWS trains AWS employees on security. You train your own staff. AWS cannot stop your administrator from falling for a phishing email.

Customer-specific controls

Controls that exist solely on your side of the line because they depend entirely on what you deploy: routing your traffic through specific zones, protecting the content of your data, or applying your organization's data-classification policy. AWS has no equivalent activity to perform.

To classify a control, ask who performs it. Only AWS performs it: inherited. Both perform it, each in its own layer: shared — and the three named shared controls are patch management, configuration management, and awareness and training. Only you perform it: customer-specific. Hypervisor patching and data center security are AWS-only (inherited); IAM permissions and data classification are customer-only. These three names are the model's whole vocabulary: terms such as "compensating control" or "detective control" are general audit language for what a control does, not categories of the shared responsibility model.

How responsibility shifts: EC2 vs RDS vs Lambda vs S3

The model's key nuance is that the dividing line moves with the service's management level. Think of it as a slider: with infrastructure services like EC2 you manage the most; with abstracted services like Lambda and S3 you manage the least. What you keep in every case is your data, your access decisions, and your service-level configuration.

ResponsibilityAmazon EC2 (IaaS)Amazon RDS (managed)AWS Lambda (serverless)Amazon S3 (storage)
Physical facilities, hardware, network, hypervisorAWSAWSAWSAWS
Guest operating system and patchingCustomerAWSAWS (customer for the OS layers it packages in a container image)AWS (no OS exposed)
Platform / runtime / database engine softwareCustomer (what you install)AWS (patches the DB engine)AWS for managed runtimes; customer for a runtime it packages (container image or OS-only runtime)AWS (operates the service)
Application code / database schema and settingsCustomerCustomerCustomer (function code and the libraries packaged with it)Customer (bucket policies, settings)
Network/firewall configurationCustomer (security groups)Customer (security groups, public access setting)Customer (resource policies, VPC config if used)Customer (block public access, bucket policies)
Data and encryption choicesCustomerCustomerCustomerCustomer
IAM users and permissionsCustomerCustomerCustomerCustomer

Read the table by columns and the pattern jumps out. On EC2, AWS stops at the hypervisor: you patch the guest OS, install software, and configure the firewall. On RDS, AWS climbs higher — it patches the operating system and the database engine, while you keep the data, the schema, access controls, and settings such as backups and encryption. Access on RDS has two layers, and both are yours: IAM policies decide who can perform management actions on the DB instance through the AWS API, and the database's own user accounts and privileges decide who can read and write the data. You do control when patches land: RDS applies them during the weekly maintenance window you set on the DB instance, and you choose whether minor engine versions upgrade automatically. RDS gives you no OS or SSH access to the host, which is exactly why OS patching cannot be yours. (Amazon RDS Custom is the deliberate exception: it gives you OS access and hands back a matching share of the responsibility.) On Lambda, AWS manages the servers, the execution environment's operating system (for functions deployed as .zip archives), capacity and scaling, and — when you use a managed runtime such as a supported Python or Node.js version — the security updates to that runtime. Two qualifiers matter. If you deploy a function as a container image, the runtime and the operating-system layers of the base image you package are yours to rebuild and update; if you use an OS-only runtime to bring your own language runtime, AWS still patches the underlying Amazon Linux OS but the runtime you package is yours. And on any runtime, third-party libraries you bundle with your code are yours to keep patched. Beyond that, your responsibility is your function code, its execution role and permissions, and your data. On S3, there is no server for you at all — you manage bucket access configuration, encryption choices, and the objects themselves.

Read it by rows and you see the second pattern: the bottom three rows — data, encryption choices, and IAM — say Customer in every column, and the top row says AWS in every column. Some responsibilities shift; those never do.

Quick reference: always AWS, always customer, shared

Before the exam, be able to reproduce this three-bucket list from memory. It lets you place most tasks quickly.

Always AWS (security OF the cloud)

  • Physical security of data centers, guards, and environmental controls
  • Hardware lifecycle: servers and storage, replacement of failed hardware (including Dedicated Hosts), and secure disposal of retired media
  • Durability of the storage infrastructure against hardware failure
  • The global infrastructure: Regions, Availability Zones, and edge locations
  • The hypervisor and host operating systems, on every tenancy option
  • Maintaining and patching the software of managed services (the RDS database engine, Lambda managed runtimes, the S3 service itself) and the capacity of serverless platforms

Always the customer (security IN the cloud)

  • Customer data — its classification, protection, and encryption, on every service without exception — including protection against accidental deletion (versioning, backups, least privilege), which Region it lives in and any copy you replicate to another Region, and deleting the snapshots, backups and replicas you created
  • IAM: users, roles (including the execution roles your functions assume), permissions, database user accounts inside managed engines such as RDS, MFA (including on the root user), and credential management
  • Encryption choices: keys and settings at rest (even where a default exists), EBS encryption, and TLS for data in transit
  • Security group and network ACL configuration, and service-level settings such as S3 Block Public Access
  • Guest OS patching and application software on EC2 (even when automated with Patch Manager); runtimes you package and libraries you bundle on Lambda

Shared (both act, in their own layer)

  • Patch management — AWS patches infrastructure and managed platforms; you patch guest OSs and applications
  • Configuration management — AWS configures its infrastructure; you configure your resources (guest OS, DB parameter groups, buckets, security groups)
  • Awareness and training — AWS trains its people; you train yours

Two anchors are worth repeating because so many questions rest on them. First: your data is always your responsibility — no AWS service, however managed, takes ownership of protecting your data's contents or deciding who may access it. Second: physical infrastructure is always AWS's responsibility — no customer action can ever move it. Any answer option that contradicts either anchor is wrong, no matter how plausible the rest of it sounds.

Scenario: one workload, three deployment choices

A retail company runs an inventory application and is deciding how to host its PostgreSQL database. Walk through what its team owns in each option — this is exactly the kind of comparison CLF-C02 turns into questions.

Option 1: PostgreSQL on an EC2 instance. AWS secures the facility, the hardware, the network, and the hypervisor beneath the instance. The team must patch the Linux guest OS, patch PostgreSQL itself, configure the security group so only the application tier can reach port 5432, set up backups, enable encryption, and manage IAM access. Maximum control, maximum responsibility.

Option 2: Amazon RDS for PostgreSQL. The line moves up. AWS now also patches the operating system and the PostgreSQL engine — during the weekly maintenance window the team chooses — and operates the backup machinery. The team still owns the data itself, the database credentials and IAM permissions, the security group rules, and the decisions to enable encryption at rest and automated backups. Notice what did not move: if an engineer sets the database to be publicly accessible with a weak password, the resulting breach is squarely the customer's responsibility — RDS being "managed" never made the data or its access rules AWS's problem.

Option 3: A serverless rewrite with Lambda and DynamoDB. The line moves up again. With managed runtimes there is no OS, runtime, or database engine for the team to patch, and no capacity to plan — AWS manages all of it. The team's remaining responsibilities are the function code and the libraries it bundles, the IAM execution roles and table permissions, the choice of encryption key for the table (DynamoDB encrypts at rest regardless), and, always, the data.

The pattern to internalize: moving from EC2 to RDS to serverless steadily transfers operational security work to AWS — patching, platform maintenance, infrastructure configuration — while the team's ownership of data, access, and configuration choices stays exactly where it started. Moving a database from EC2 to RDS transfers OS and database-engine patching to AWS; the data and IAM do not move.

Exam traps and how questions are worded

Shared-responsibility questions are recognition items — quick if you know the model, easy to fumble if you rush. These are common traps to watch for.

Trap 1: the OF/IN swap. Questions use the model's own vocabulary and ask you to sort a task into security of the cloud or security in the cloud. Keep the mapping mechanical — OF = AWS = infrastructure; IN = customer = what you put there. Distractors bank on you inverting it under time pressure.

Trap 2: the service-shift trap. Responsibility for operating-system patching depends on the service: the customer on EC2, AWS on RDS and on Lambda functions deployed as .zip archives. Always check which service is named before deciding who patches. If no service is named and options mention the hypervisor or host OS, those layers are AWS's regardless.

Trap 3: "managed" does not mean "AWS owns everything." Distractors claim AWS is responsible for data stored in S3, or for IAM permissions on a managed database. Both are always the customer's. Similarly, configuring security groups is the customer's job even though AWS provides the security group feature.

Trap 3b: a default or a tool is not a transfer. S3's default encryption, an AWS-provided AMI, and Systems Manager Patch Manager all make the customer's job easier, but none moves it to AWS. The test is who makes the decision: if you choose the key, the baseline, the schedule, or the setting, the responsibility is yours. Likewise, a Dedicated Host or an AWS SOC 2 report changes nothing about who runs the hypervisor or who must evidence the customer's own controls.

Trap 4: misfiled shared controls. A shared control is one both parties perform in their own layer — patch management, configuration management, and awareness and training. "Physical security" is AWS-only (inherited) and "data classification" is customer-only (customer-specific), however they are phrased. Audit terms such as "compensating control" are not one of the model's categories.

A four-step routine for any responsibility question: (1) Identify the layer the task lives in — physical/hypervisor, OS/platform, or data/access/config. (2) Identify the service named, and how managed it is. (3) Apply the anchors — data, IAM, and encryption choices are always customer; facilities, hardware, and hypervisor are always AWS. (4) If both parties genuinely act at different layers, it is shared. That routine works for most Task 2.1 questions.

Tip. CLF-C02 tests this topic mostly with short recognition items: "Who is responsible for X under the AWS shared responsibility model?" where X is a task like patching the guest OS, securing the data center, replacing failed hardware, configuring a security group, or encrypting data. Expect the vocabulary swap — "security of the cloud" is AWS, "security in the cloud" is the customer — and the service shift, where the same task (OS patching) has a different owner on EC2 (customer) than on RDS or Lambda (AWS). Harder items combine two facts and test reasoning rather than recall: telling a secure default or an AWS-provided tool apart from a transfer of responsibility, separating tenancy choices from who operates a layer, knowing whose controls each party's evidence covers, and deciding who controls where data lives and how long copies of it exist. Anchor every answer on two absolutes: customer data and IAM are always the customer's, and physical infrastructure and the hypervisor are always AWS's.

Key takeaways
  • AWS is responsible for security OF the cloud (facilities, hardware, network, hypervisor); the customer is responsible for security IN the cloud (data, access, configuration).
  • Customer data, IAM permissions (including execution roles), database user accounts, and encryption choices are ALWAYS the customer's responsibility, on every service.
  • Physical data centers, the hardware lifecycle (including replacing a failed Dedicated Host), the global infrastructure, and the hypervisor are ALWAYS AWS's responsibility, on every tenancy option.
  • The line shifts by service: on EC2 you patch the guest OS; on RDS, AWS patches the OS and database engine in the maintenance window you set; on Lambda, AWS manages the OS, scaling and managed runtimes — but a runtime or container image you package and the libraries you bundle stay yours.
  • Secure defaults and AWS tools don't move responsibility: S3 default encryption, AWS AMIs and Patch Manager help, but the keys, baselines and schedules are still your choice.
  • Security groups, network ACLs and other firewall settings are the customer's to configure, even though AWS provides the feature.
  • Encryption at rest (S3, EBS) and encryption in transit (TLS) are separate customer decisions; one does not cover the other.
  • AWS's durability protects data from failed hardware; protecting it from your own accidental deletion (versioning, backups, least privilege) is yours.
  • The three shared controls: patch management, configuration management, and awareness and training.
  • Controls classify as inherited (evidenced by AWS's audit reports), shared, or customer-specific; AWS's reports never evidence your own controls.
  • Your content stays in the Region you choose (replicated across AZs inside it); any cross-Region copy is your configuration, and the snapshots and backups you create are yours to delete — AWS only disposes of its retired physical media.

Frequently asked questions

What is the AWS shared responsibility model?

The AWS shared responsibility model defines how security and compliance duties are divided between AWS and its customers. AWS is responsible for "security of the cloud" — protecting the physical data centers, hardware, networking, and virtualization software that run all AWS services. The customer is responsible for "security in the cloud" — protecting their data, managing identities and permissions, configuring firewalls and service settings, and choosing encryption. Some controls, like patch management and awareness training, are shared: AWS handles its layer and the customer handles theirs. The exact split shifts depending on how managed the service is.

What is the difference between security of the cloud and security in the cloud?

"Security of the cloud" is everything AWS does to protect the infrastructure that runs its services: physical facility security, hardware maintenance and disposal, the global network of Regions and Availability Zones, the hypervisor, and the software behind managed services. "Security in the cloud" is everything the customer does with what they deploy: protecting data, managing IAM users and permissions, patching guest operating systems on EC2, configuring security groups, and enabling encryption. A simple test: if the task requires access to AWS hardware or host software, it is OF the cloud (AWS); if it depends on your decisions, it is IN the cloud (you).

Who is responsible for patching in AWS?

Patch management is a shared control, and the split depends on the service. AWS always patches the physical infrastructure, host operating systems, and hypervisor. On Amazon EC2, the customer patches the guest operating system and any software it installs — even when it automates the work with AWS Systems Manager Patch Manager, because the customer still sets the baselines and schedules. On Amazon RDS, AWS patches the underlying OS and the database engine during the weekly maintenance window the customer sets; the customer has no OS access. On AWS Lambda with a managed runtime, AWS applies OS and runtime security updates; with a container image, the customer maintains the runtime and the base-image OS layers it packages; with an OS-only runtime, it maintains the runtime it packages; and on any runtime it keeps its bundled libraries patched.

Who is responsible for data stored in AWS?

The customer, always. Under the AWS shared responsibility model, customer data is the customer's responsibility on every service — EC2, RDS, S3, Lambda, DynamoDB, all of them. That includes classifying the data, deciding who can access it, configuring bucket or database access controls, and choosing whether to encrypt it at rest and in transit. AWS secures the storage infrastructure beneath your data and provides encryption and access-control features, but it never decides how your data should be protected or who should see it. No level of service management transfers data responsibility to AWS.

Is the shared responsibility model different for EC2, RDS, and Lambda?

Yes — the boundary shifts with the service's management level. On EC2, an infrastructure service, AWS's responsibility ends at the hypervisor: you manage the guest OS, patching, installed software, and firewall rules. On RDS, a managed service, AWS also handles operating system and database engine patching, leaving you the data, access controls, the maintenance window, and settings such as DB parameter groups. On Lambda, a serverless service, AWS manages the servers, scaling, and managed runtimes, and you manage your code, the libraries you bundle, the execution role's permissions, and your data. In every case, data, IAM, and encryption choices remain the customer's responsibility.

What are examples of shared controls in the AWS shared responsibility model?

AWS identifies three shared controls, where both AWS and the customer act in their own layer. Patch management: AWS patches the infrastructure and managed-service software, while customers patch their EC2 guest operating systems and applications. Configuration management: AWS configures its infrastructure devices and host systems, while customers configure their own resources, such as EC2 guest operating systems, RDS DB parameter groups, and security groups. Awareness and training: AWS trains AWS employees, while customers train their own staff. These three are distinct from inherited controls, which customers fully inherit from AWS (like physical security), and customer-specific controls, which only the customer performs (like data classification).

Who is responsible for security group configuration in AWS?

The customer. Security groups are a customer-side responsibility under the shared responsibility model, because they control what traffic can reach your resources — a decision only you can make. AWS builds and operates the underlying virtual networking and provides security groups as a feature, but the rules you write (which ports are open, which sources are allowed) are security "in the cloud." The same logic applies to network ACLs, S3 Block Public Access settings, and an RDS instance's public accessibility flag. If an overly permissive rule exposes a resource, that is a customer configuration issue, not an AWS one.

Does default encryption in Amazon S3 make encryption AWS's responsibility?

No. Since January 2023 Amazon S3 encrypts every new object with S3 managed keys (SSE-S3) by default, but under the AWS shared responsibility model the encryption decision stays with the customer. The customer decides whether the default meets its requirements — for example, choosing SSE-KMS with a customer managed AWS KMS key when it needs control over the key and an AWS CloudTrail record of each key use. The same applies elsewhere: Amazon EBS volumes are encrypted only if the customer creates them encrypted or enables EBS encryption by default, and encrypting data in transit with TLS is a separate customer task.

Source

This lesson covers the "Security and Compliance" domain of the official CLF-C02 exam guide. Vendors revise their guides — check the source for the current version.

Test yourself on this topic
Practice now

Sign up free to mark lessons complete, bookmark topics and track your exam readiness.

Spotted a mistake in this lesson?