Bird
Raised Fist0
GCPcloud~20 mins

SSL certificates management in GCP - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
SSL Certificate Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ service_behavior
intermediate
2:00remaining
How does Google Cloud Load Balancer handle SSL certificates?

When you attach an SSL certificate to a Google Cloud HTTPS Load Balancer, what happens when the certificate expires?

AThe load balancer continues serving HTTPS traffic but browsers show a security warning.
BThe load balancer automatically renews the certificate without user intervention.
CThe load balancer switches to HTTP traffic automatically to avoid errors.
DThe load balancer stops serving HTTPS traffic until a new certificate is uploaded.
Attempts:
2 left
💡 Hint

Think about what happens when a browser checks a certificate that is no longer valid.

❓ Configuration
intermediate
2:00remaining
Correct JSON format for uploading a managed SSL certificate in GCP

You want to create a managed SSL certificate resource in Google Cloud using JSON. Which JSON snippet correctly defines the domains for the certificate?

A{ "name": "my-cert", "managed": { "domains": "example.com, www.example.com" } }
B{ "name": "my-cert", "managed": { "domains": ["example.com www.example.com"] } }
C{ "name": "my-cert", "managed": { "domain": "example.com,www.example.com" } }
D{ "name": "my-cert", "managed": { "domains": ["example.com", "www.example.com"] } }
Attempts:
2 left
💡 Hint

Remember that domains should be a list of strings, not a single string.

❓ Architecture
advanced
2:30remaining
Best architecture for automatic SSL certificate renewal in GCP

You want to design a system that automatically provisions and renews SSL certificates for multiple domains on Google Cloud. Which architecture best supports this?

AUse Cloud DNS with manual certificate uploads to App Engine, renewing certificates via scripts.
BUse Google-managed SSL certificates attached to a Cloud Load Balancer for each domain, letting Google handle renewals.
CManually upload self-managed certificates to Compute Engine instances and renew them using cron jobs.
DUse third-party certificate providers and manually update certificates in Cloud Storage buckets.
Attempts:
2 left
💡 Hint

Consider which option minimizes manual work and leverages Google Cloud's automation.

❓ security
advanced
2:00remaining
Security risk of using self-managed SSL certificates on Google Cloud

What is a key security risk when using self-managed SSL certificates on Google Cloud compared to Google-managed certificates?

ASelf-managed certificates automatically renew, which can lead to unauthorized renewals.
BSelf-managed certificates cannot be used with HTTPS Load Balancers, reducing security.
CSelf-managed certificates may expire unnoticed, causing service interruptions and security warnings.
DGoogle-managed certificates expose private keys to users, increasing risk of key theft.
Attempts:
2 left
💡 Hint

Think about who is responsible for tracking certificate expiration.

✅ Best Practice
expert
3:00remaining
Optimal strategy for managing SSL certificates across multiple GCP projects

You manage multiple Google Cloud projects for different teams, each with their own domains. What is the best practice for managing SSL certificates efficiently and securely across these projects?

ACentralize SSL certificate management in one project using Google-managed certificates and share them via Cloud Load Balancer across projects.
BEach project manages its own self-managed certificates independently to avoid cross-project dependencies.
CUse a single self-managed wildcard certificate uploaded to all projects to simplify management.
DStore all certificates in a shared Cloud Storage bucket accessible by all projects for manual deployment.
Attempts:
2 left
💡 Hint

Consider security, automation, and ease of management across projects.

Practice

(1/5)
1. What is the main purpose of an SSL certificate in Google Cloud Platform?
easy
A. To encrypt data between users and servers
B. To store user passwords securely
C. To monitor network traffic
D. To manage virtual machines

Solution

  1. Step 1: Understand SSL certificate function

    SSL certificates encrypt data to keep communication secure.
  2. Step 2: Identify correct purpose in GCP context

    Encrypting data between users and servers matches SSL certificate use.
  3. Final Answer:

    To encrypt data between users and servers -> Option A
  4. Quick Check:

    SSL certificates = encrypt data [OK]
Hint: SSL certificates secure data transfer by encryption [OK]
Common Mistakes:
  • Confusing SSL with password storage
  • Thinking SSL monitors traffic
  • Assuming SSL manages VMs
2. Which gcloud command correctly creates a new SSL certificate in GCP?
easy
A. gcloud compute ssl-certificates create my-cert --certificate=cert.pem --private-key=key.pem
B. gcloud ssl create certificate my-cert --cert=cert.pem --key=key.pem
C. gcloud compute certificates add my-cert --cert=cert.pem --key=key.pem
D. gcloud create ssl my-cert --certificate=cert.pem --private-key=key.pem

Solution

  1. Step 1: Recall correct gcloud syntax for SSL certificate creation

    The correct command uses 'gcloud compute ssl-certificates create' with certificate and private key flags.
  2. Step 2: Match options to correct syntax

    gcloud compute ssl-certificates create my-cert --certificate=cert.pem --private-key=key.pem matches the correct syntax exactly; others use invalid commands or flags.
  3. Final Answer:

    gcloud compute ssl-certificates create my-cert --certificate=cert.pem --private-key=key.pem -> Option A
  4. Quick Check:

    Correct gcloud SSL create command = gcloud compute ssl-certificates create my-cert --certificate=cert.pem --private-key=key.pem [OK]
Hint: Use 'gcloud compute ssl-certificates create' with cert and key [OK]
Common Mistakes:
  • Using wrong gcloud subcommands
  • Mixing up flag names
  • Omitting private key parameter
3. Given this command output listing SSL certificates in GCP:
NAME       CREATION_TIMESTAMP
my-cert    2023-05-01T12:00:00.000Z
old-cert   2022-01-15T08:30:00.000Z
Which certificate is most likely expired or needs renewal?
medium
A. Cannot determine from timestamps
B. my-cert
C. Both are valid
D. old-cert

Solution

  1. Step 1: Analyze creation timestamps

    my-cert was created in May 2023; old-cert in January 2022.
  2. Step 2: Consider typical SSL certificate validity

    SSL certificates usually last 1 year; old-cert is over a year old and likely expired.
  3. Final Answer:

    old-cert -> Option D
  4. Quick Check:

    Older certificate likely expired = old-cert [OK]
Hint: Older creation date usually means expired certificate [OK]
Common Mistakes:
  • Assuming all certificates are valid
  • Ignoring certificate age
  • Thinking creation time equals expiration
4. You run this command to create an SSL certificate:
gcloud compute ssl-certificates create my-cert --certificate=cert.pem --private-key=key.pem
But get an error: "ERROR: (gcloud.compute.ssl-certificates.create) The private key file is invalid or missing." What is the most likely cause?
medium
A. The gcloud SDK is not installed
B. The certificate file is not in PEM format
C. The private key file path is incorrect or file is missing
D. The command requires a project flag

Solution

  1. Step 1: Understand error message

    The error says the private key file is invalid or missing, indicating a problem with the key file.
  2. Step 2: Identify common causes

    Incorrect file path or missing file for the private key is the most common cause.
  3. Final Answer:

    The private key file path is incorrect or file is missing -> Option C
  4. Quick Check:

    Private key file error = wrong path or missing file [OK]
Hint: Check private key file path and existence first [OK]
Common Mistakes:
  • Blaming certificate format instead of key file
  • Assuming gcloud SDK missing causes this error
  • Forgetting to specify project flag
5. You want to automate SSL certificate renewal in GCP for a load balancer. Which approach best ensures certificates are renewed before expiration without downtime?
hard
A. Delete the old certificate and create a new one with the same name immediately
B. Create a new SSL certificate, update the load balancer to use it, then delete the old certificate
C. Manually update the certificate on the load balancer after expiration
D. Use the same certificate indefinitely without renewal

Solution

  1. Step 1: Understand zero downtime renewal process

    Creating a new certificate and updating the load balancer before deleting old one avoids downtime.
  2. Step 2: Evaluate options for automation and safety

    Create a new SSL certificate, update the load balancer to use it, then delete the old certificate follows best practice: create new cert, switch, then delete old cert.
  3. Final Answer:

    Create a new SSL certificate, update the load balancer to use it, then delete the old certificate -> Option B
  4. Quick Check:

    Renew by create-update-delete sequence = Create a new SSL certificate, update the load balancer to use it, then delete the old certificate [OK]
Hint: Renew by adding new cert, switch LB, then remove old cert [OK]
Common Mistakes:
  • Deleting old cert before new one is ready
  • Waiting until expiration to update
  • Ignoring renewal and using expired cert
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