Bird
Raised Fist0
DynamoDBquery~10 mins

VPC endpoints for private access in DynamoDB - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to specify the VPC endpoint type for private DynamoDB access.

DynamoDB
aws ec2 create-vpc-endpoint --vpc-id vpc-123abc --service-name com.amazonaws.us-east-1.dynamodb --vpc-endpoint-type [1]
Drag options to blanks, or click blank then click option'
AInterface
BGateway
CPrivateLink
DGatewayLoadBalancer
Attempts:
3 left
💡 Hint
Common Mistakes
Choosing Interface endpoint which is used for other AWS services like EC2.
Using PrivateLink which is a different technology.
2fill in blank
medium

Complete the code to add a route to the route table for the DynamoDB VPC endpoint.

DynamoDB
aws ec2 create-route --route-table-id rtb-456def --destination-prefix-list-id [1] --vpc-endpoint-id vpce-789ghi
Drag options to blanks, or click blank then click option'
Apl-12345678
Bpl-87654321
Cpl-abcdef12
Dpl-fedcba98
Attempts:
3 left
💡 Hint
Common Mistakes
Using a prefix list ID for another service.
Confusing the VPC endpoint ID with the prefix list ID.
3fill in blank
hard

Fix the error in the command to describe the VPC endpoints filtering by service name.

DynamoDB
aws ec2 describe-vpc-endpoints --filters Name=service-name,Values=[1]
Drag options to blanks, or click blank then click option'
Adynamodb.us-east-1
Bdynamodb
Ccom.amazonaws.us-east-1.dynamodb
Daws.dynamodb
Attempts:
3 left
💡 Hint
Common Mistakes
Using only the service name without region.
Using incorrect service name formats.
4fill in blank
hard

Fill both blanks to create a policy that allows access to DynamoDB via the VPC endpoint.

DynamoDB
{
  "Statement": [{
    "Effect": "Allow",
    "Principal": "*",
    "Action": "[1]",
    "Resource": "*",
    "Condition": {
      "StringEquals": {
        "aws:SourceVpce": "[2]"
      }
    }
  }]
}
Drag options to blanks, or click blank then click option'
Adynamodb:*
Bvpce-789ghi
Cs3:*
Dlambda:InvokeFunction
Attempts:
3 left
💡 Hint
Common Mistakes
Using unrelated service actions like S3 or Lambda.
Not specifying the VPC endpoint ID in the condition.
5fill in blank
hard

Fill the blanks to create a DynamoDB client in Python that connects through the VPC endpoint.

DynamoDB
import boto3

client = boto3.client('[1]', region_name='us-east-1')

response = client.[2]()
Drag options to blanks, or click blank then click option'
Adynamodb
Bvpce-123abc
Cdescribe_table
Dlist_tables
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong service names like 's3'.
Using incorrect method names like 'describe_table'.
Thinking a custom endpoint_url is needed for Gateway endpoints.

Practice

(1/5)
1. What is the main benefit of using a VPC endpoint for DynamoDB access?
easy
A. It allows private access to DynamoDB without using the internet.
B. It increases the internet bandwidth for DynamoDB queries.
C. It automatically backs up DynamoDB tables.
D. It enables cross-region replication of DynamoDB data.

Solution

  1. Step 1: Understand VPC endpoint purpose

    A VPC endpoint lets you connect to AWS services privately inside your cloud network without internet traffic.
  2. Step 2: Identify benefit for DynamoDB

    Using a VPC endpoint for DynamoDB means your data traffic stays inside AWS, improving security and privacy.
  3. Final Answer:

    It allows private access to DynamoDB without using the internet. -> Option A
  4. Quick Check:

    Private access = VPC endpoint benefit [OK]
Hint: VPC endpoints keep traffic inside AWS, no internet needed [OK]
Common Mistakes:
  • Confusing VPC endpoints with internet bandwidth
  • Thinking VPC endpoints backup data
  • Assuming VPC endpoints replicate data across regions
2. Which AWS CLI command is used to create a VPC endpoint for DynamoDB?
easy
A. aws s3 create-vpc-endpoint --service-name com.amazonaws.region.s3
B. aws dynamodb create-endpoint --vpc-id vpc-123456
C. aws ec2 create-vpc-endpoint --service-name com.amazonaws.region.dynamodb
D. aws ec2 create-vpc --service-name dynamodb

Solution

  1. Step 1: Identify correct AWS CLI service for VPC endpoints

    VPC endpoints are managed via the EC2 service commands, not DynamoDB or S3 commands.
  2. Step 2: Match correct syntax for DynamoDB endpoint

    The command uses 'aws ec2 create-vpc-endpoint' with the service name for DynamoDB in the region.
  3. Final Answer:

    aws ec2 create-vpc-endpoint --service-name com.amazonaws.region.dynamodb -> Option C
  4. Quick Check:

    EC2 CLI + DynamoDB service name = create VPC endpoint [OK]
Hint: VPC endpoints use EC2 CLI, not DynamoDB CLI [OK]
Common Mistakes:
  • Using dynamodb CLI instead of ec2 CLI
  • Confusing S3 service name with DynamoDB
  • Trying to create VPC instead of VPC endpoint
3. Given this AWS CLI command, what will it do?
aws ec2 create-vpc-endpoint --vpc-id vpc-abc123 --service-name com.amazonaws.us-east-1.dynamodb --subnet-ids subnet-1a2b3c --security-group-ids sg-123abc
medium
A. Creates a new VPC with DynamoDB access enabled.
B. Creates a VPC endpoint for DynamoDB in the specified VPC with subnet and security group.
C. Deletes the specified subnet and security group.
D. Creates a DynamoDB table in the specified subnet.

Solution

  1. Step 1: Analyze the command components

    The command uses 'create-vpc-endpoint' with a VPC ID, service name for DynamoDB, subnet IDs, and security group IDs.
  2. Step 2: Understand the effect of the command

    This creates a VPC endpoint inside the given VPC, allowing private DynamoDB access through specified subnets and security groups.
  3. Final Answer:

    Creates a VPC endpoint for DynamoDB in the specified VPC with subnet and security group. -> Option B
  4. Quick Check:

    Create VPC endpoint + DynamoDB service = private access setup [OK]
Hint: Look for 'create-vpc-endpoint' and DynamoDB service name [OK]
Common Mistakes:
  • Thinking it creates a new VPC
  • Confusing creation with deletion
  • Assuming it creates DynamoDB tables
4. You tried to create a VPC endpoint for DynamoDB but got an error: "InvalidSubnetID.NotFound". What is the most likely cause?
medium
A. The security group ID is missing from the command.
B. The DynamoDB table name is incorrect.
C. Your VPC does not have an internet gateway attached.
D. The subnet ID provided does not exist in your AWS account or region.

Solution

  1. Step 1: Understand the error message

    "InvalidSubnetID.NotFound" means the subnet ID given is not found or invalid in your AWS environment.
  2. Step 2: Identify cause related to subnet

    This usually happens if the subnet ID is mistyped, deleted, or belongs to a different region/account.
  3. Final Answer:

    The subnet ID provided does not exist in your AWS account or region. -> Option D
  4. Quick Check:

    InvalidSubnetID error = wrong or missing subnet ID [OK]
Hint: Check subnet ID spelling and region first [OK]
Common Mistakes:
  • Blaming DynamoDB table name for subnet errors
  • Assuming internet gateway is required for VPC endpoint
  • Ignoring subnet ID in error diagnosis
5. You want to ensure all DynamoDB traffic from your private subnet uses a VPC endpoint without going through the internet. Which setup is required?
hard
A. Create a DynamoDB VPC endpoint in your VPC, associate it with your private subnet, and update route tables accordingly.
B. Attach an internet gateway to your VPC and enable public IPs on your instances.
C. Create a NAT gateway and route all DynamoDB traffic through it.
D. Enable DynamoDB global tables for cross-region access.

Solution

  1. Step 1: Understand private subnet traffic needs

    Private subnets do not have direct internet access, so to reach DynamoDB privately, a VPC endpoint is needed.
  2. Step 2: Configure VPC endpoint and routing

    Create a DynamoDB VPC endpoint, associate it with the private subnet, and update route tables so traffic to DynamoDB uses the endpoint.
  3. Step 3: Exclude internet gateway or NAT for this traffic

    Internet gateway or NAT gateway routes send traffic outside AWS, which is not desired for private access.
  4. Final Answer:

    Create a DynamoDB VPC endpoint in your VPC, associate it with your private subnet, and update route tables accordingly. -> Option A
  5. Quick Check:

    VPC endpoint + private subnet + route update = private DynamoDB access [OK]
Hint: Use VPC endpoint and route tables for private subnet access [OK]
Common Mistakes:
  • Using internet gateway for private subnet traffic
  • Routing DynamoDB traffic through NAT gateway unnecessarily
  • Confusing global tables with network setup
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard