Bird
Raised Fist0
GCPcloud~30 mins

VPC Service Controls in GCP - Mini Project: Build & Apply

Choose your learning style10 modes available
VPC Service Controls Setup in GCP
📖 Scenario: You work for a company that wants to protect its sensitive data in Google Cloud Platform (GCP). They want to create a secure perimeter around their cloud resources to prevent data exfiltration.VPC Service Controls help create this security boundary.
🎯 Goal: Build a VPC Service Controls perimeter that includes specific projects to protect sensitive data.
📋 What You'll Learn
Create a service perimeter resource with a specific name
Add two projects to the perimeter's restricted resources list
Set the perimeter type to 'PERIMETER_TYPE_REGULAR'
Enable the perimeter with the correct configuration
💡 Why This Matters
🌍 Real World
Companies use VPC Service Controls to protect sensitive data by creating security perimeters around their cloud projects and services.
💼 Career
Cloud security engineers and architects configure VPC Service Controls to prevent data leaks and enforce security policies in GCP environments.
Progress0 / 4 steps
1
Create the initial service perimeter resource
Create a variable called service_perimeter as a dictionary with the key name set to "projects/my-company/servicePerimeters/my-perimeter".
GCP
Hint

Think of service_perimeter as a container that holds the perimeter's identity.

2
Add the list of restricted projects
Add a key spec to service_perimeter with a nested dictionary containing the key resources. Set resources to a list with these exact strings: "projects/project-123" and "projects/project-456".
GCP
Hint

The spec key holds the perimeter's configuration details.

3
Set the perimeter type
Inside the spec dictionary of service_perimeter, add the key perimeterType with the value "PERIMETER_TYPE_REGULAR".
GCP
Hint

The perimeter type defines how the perimeter behaves. Use the regular type for standard perimeters.

4
Enable the service perimeter
Add the key status to service_perimeter with the same dictionary as spec to enable the perimeter configuration.
GCP
Hint

The status key activates the perimeter with the same settings as spec.

Practice

(1/5)
1. What is the main purpose of VPC Service Controls in Google Cloud?
easy
A. To manage user identities and access permissions
B. To create a secure boundary around cloud services to protect data
C. To automatically back up data to multiple regions
D. To increase the speed of network traffic between services

Solution

  1. Step 1: Understand the role of VPC Service Controls

    VPC Service Controls create a security perimeter around Google Cloud services to protect sensitive data from unauthorized access.
  2. Step 2: Compare with other options

    Options A, B, and C describe different Google Cloud features unrelated to VPC Service Controls.
  3. Final Answer:

    To create a secure boundary around cloud services to protect data -> Option B
  4. Quick Check:

    VPC Service Controls = Secure boundary [OK]
Hint: VPC Service Controls protect data by creating security boundaries [OK]
Common Mistakes:
  • Confusing VPC Service Controls with identity management
  • Thinking it speeds up network traffic
  • Assuming it handles backups automatically
2. Which of the following is the correct way to define a VPC Service Controls perimeter in a YAML configuration?
easy
A. perimeterType: 'NETWORK_PERIMETER' resources: - projects/project-123 restrictedServices: - storage.googleapis.com enforce: true
B. perimeterType: 'SERVICE_PERIMETER' resources: - projects/project-123 restrictedServices: - storage.googleapis.com allowAll: true
C. perimeterType: 'SERVICE_PERIMETER' resources: - projects/project-123 restrictedServices: - compute.googleapis.com enforce: false
D. perimeterType: 'SERVICE_PERIMETER' resources: - projects/project-123 restrictedServices: - storage.googleapis.com enforce: true

Solution

  1. Step 1: Identify correct perimeter type and enforcement

    VPC Service Controls use 'SERVICE_PERIMETER' as perimeterType and enforce true to activate restrictions.
  2. Step 2: Check restricted services and resource format

    Restricted services should list Google Cloud APIs like storage.googleapis.com, and resources should be project IDs.
  3. Final Answer:

    perimeterType: 'SERVICE_PERIMETER' with enforce: true and correct resources -> Option D
  4. Quick Check:

    Correct perimeterType and enforce true = perimeterType: 'SERVICE_PERIMETER' resources: - projects/project-123 restrictedServices: - storage.googleapis.com enforce: true [OK]
Hint: SERVICE_PERIMETER with enforce: true is required for VPC SC [OK]
Common Mistakes:
  • Using NETWORK_PERIMETER instead of SERVICE_PERIMETER
  • Setting enforce to false disables the perimeter
  • Using allowAll instead of enforce
3. Given this VPC Service Controls perimeter configuration:
perimeterType: 'SERVICE_PERIMETER'
resources:
  - projects/project-abc
restrictedServices:
  - storage.googleapis.com
  - bigquery.googleapis.com
enforce: true

What happens if a VM in project-abc tries to access compute.googleapis.com?
medium
A. Access is allowed only if the VM has special IAM roles
B. Access is denied because all services are blocked inside the perimeter
C. Access is allowed because compute.googleapis.com is not restricted
D. Access is denied because compute.googleapis.com is implicitly restricted

Solution

  1. Step 1: Understand restricted services in the perimeter

    The perimeter restricts only storage.googleapis.com and bigquery.googleapis.com.
  2. Step 2: Check access to compute.googleapis.com

    Since compute.googleapis.com is not listed, access is allowed by default.
  3. Final Answer:

    Access is allowed because compute.googleapis.com is not restricted -> Option C
  4. Quick Check:

    Only listed services are restricted = Access is allowed because compute.googleapis.com is not restricted [OK]
Hint: Only services listed in restrictedServices are blocked [OK]
Common Mistakes:
  • Assuming all services are blocked inside perimeter
  • Thinking IAM roles override perimeter restrictions
  • Believing unlisted services are implicitly blocked
4. You configured a VPC Service Controls perimeter but users report they cannot access Cloud Storage from inside the perimeter. Which of the following is the most likely cause?
medium
A. The perimeter's restrictedServices includes storage.googleapis.com and enforce is set to true
B. The perimeter is missing storage.googleapis.com in restrictedServices
C. The perimeter's enforce is set to false
D. The perimeter uses NETWORK_PERIMETER instead of SERVICE_PERIMETER

Solution

  1. Step 1: Analyze the effect of restrictedServices and enforce

    If storage.googleapis.com is in restrictedServices and enforce is true, access to Cloud Storage is blocked inside the perimeter.
  2. Step 2: Evaluate other options

    Missing storage.googleapis.com or enforce false would allow access; NETWORK_PERIMETER is invalid for VPC SC.
  3. Final Answer:

    restrictedServices includes storage.googleapis.com and enforce is true -> Option A
  4. Quick Check:

    Restricted service + enforce true blocks access [OK]
Hint: Restricted service with enforce true blocks access inside perimeter [OK]
Common Mistakes:
  • Thinking missing restrictedServices blocks access
  • Assuming enforce false blocks access
  • Confusing NETWORK_PERIMETER with SERVICE_PERIMETER
5. Your company wants to protect sensitive data in BigQuery and Cloud Storage using VPC Service Controls. You have two projects: project-secure and project-public. You want to allow project-public to access BigQuery but not Cloud Storage inside the perimeter. How should you configure the perimeter?
hard
A. Include both projects in resources, restrict only storage.googleapis.com
B. Include only project-secure in resources, restrict both storage.googleapis.com and bigquery.googleapis.com
C. Include both projects in resources, restrict both storage.googleapis.com and bigquery.googleapis.com
D. Include only project-public in resources, restrict storage.googleapis.com

Solution

  1. Step 1: Determine which projects to include in the perimeter

    To protect data in both projects but allow project-public access to BigQuery, include both projects in the perimeter.
  2. Step 2: Set restricted services to block only Cloud Storage

    Restrict storage.googleapis.com to block Cloud Storage access, but do not restrict bigquery.googleapis.com to allow BigQuery access from project-public.
  3. Final Answer:

    Include both projects and restrict only storage.googleapis.com -> Option A
  4. Quick Check:

    Both projects + restrict storage only = Include both projects in resources, restrict only storage.googleapis.com [OK]
Hint: Restrict only storage to block Cloud Storage, include both projects [OK]
Common Mistakes:
  • Restricting both services blocks BigQuery access
  • Including only one project limits protection
  • Restricting BigQuery when access is needed
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