Bird
Raised Fist0
GCPcloud~5 mins

Security design principles in GCP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the principle of Least Privilege mean in cloud security?
It means giving users and systems only the minimum access rights they need to do their job, nothing more. This reduces the risk of accidental or intentional misuse.
Click to reveal answer
beginner
Explain the Defense in Depth principle.
Defense in Depth means using multiple layers of security controls so if one layer fails, others still protect the system. Think of it like having a locked door, alarm, and security cameras all working together.
Click to reveal answer
intermediate
Why is Fail Securely important in security design?
Fail Securely means that if a system fails or crashes, it should do so in a way that does not expose sensitive data or open security holes. It avoids making the system less safe during errors.
Click to reveal answer
intermediate
What is the purpose of Separation of Duties in security?
Separation of Duties means dividing responsibilities among different people or systems so no single person or system can cause harm alone. This helps prevent fraud and mistakes.
Click to reveal answer
beginner
Describe the Secure by Default principle.
Secure by Default means systems should come with the safest settings turned on from the start, so users don’t have to configure security manually to be protected.
Click to reveal answer
Which principle means giving users only the access they need?
ADefense in Depth
BLeast Privilege
CFail Securely
DSeparation of Duties
What does Defense in Depth provide?
AOpen access for convenience
BSingle strong password
CMultiple layers of security
DNo security needed
Why is Separation of Duties important?
ATo divide responsibilities and reduce risk
BTo speed up processes by combining roles
CTo allow one person full control
DTo remove all security checks
What should happen when a system fails according to Fail Securely?
AIgnore the failure
BCrash without any protection
CExpose data for troubleshooting
DFail without exposing security risks
Secure by Default means:
ASystems come with safe settings enabled
BSystems have no security settings
CSecurity is optional
DUsers must configure security manually
Explain the principle of Least Privilege and why it is important in cloud security.
Think about giving only what is needed, like a key that opens only one door.
You got /3 concepts.
    Describe how Defense in Depth protects cloud systems.
    Imagine several fences around a house instead of just one.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which security design principle means giving users only the access they need and nothing more?
      easy
      A. Secure by default
      B. Defense in depth
      C. Continuous monitoring
      D. Least privilege

      Solution

      1. Step 1: Understand the principle of least privilege

        Least privilege means users get only the minimum access needed to do their job.
      2. Step 2: Compare with other principles

        Defense in depth means multiple layers of security, secure by default means safe settings initially, monitoring means watching for issues.
      3. Final Answer:

        Least privilege -> Option D
      4. Quick Check:

        Minimum access = Least privilege [OK]
      Hint: Minimum access means least privilege [OK]
      Common Mistakes:
      • Confusing defense in depth with least privilege
      • Thinking secure by default means limited access
      • Mixing monitoring with access control
      2. Which of the following is the correct way to assign a role to a user in GCP IAM using the gcloud CLI?
      easy
      A. gcloud iam roles assign user@example.com roles/viewer
      B. gcloud iam add-role user@example.com viewer
      C. gcloud projects add-iam-policy-binding my-project --member=user:user@example.com --role=roles/viewer
      D. gcloud iam set-role user@example.com roles/viewer

      Solution

      1. Step 1: Recall correct gcloud command syntax for IAM role assignment

        The correct command uses 'projects add-iam-policy-binding' with --member and --role flags.
      2. Step 2: Check each option

        gcloud projects add-iam-policy-binding my-project --member=user:user@example.com --role=roles/viewer matches the correct syntax; others use invalid commands or flags.
      3. Final Answer:

        gcloud projects add-iam-policy-binding my-project --member=user:user@example.com --role=roles/viewer -> Option C
      4. Quick Check:

        IAM role assignment uses add-iam-policy-binding [OK]
      Hint: Use add-iam-policy-binding with --member and --role [OK]
      Common Mistakes:
      • Using incorrect gcloud commands like 'iam roles assign'
      • Omitting --member or --role flags
      • Confusing roles with users in command syntax
      3. Consider this GCP IAM policy snippet:
      {
        "bindings": [
          {
            "role": "roles/storage.objectViewer",
            "members": ["user:alice@example.com"]
          },
          {
            "role": "roles/storage.objectAdmin",
            "members": ["user:bob@example.com"]
          }
        ]
      }
      What access does Alice have on the storage bucket?
      medium
      A. Full control including deleting objects
      B. Read-only access to objects
      C. No access at all
      D. Can create and delete buckets

      Solution

      1. Step 1: Identify Alice's assigned role

        Alice has the role 'roles/storage.objectViewer' which grants read-only access to objects.
      2. Step 2: Understand role permissions

        ObjectViewer allows viewing objects but not modifying or deleting them.
      3. Final Answer:

        Read-only access to objects -> Option B
      4. Quick Check:

        ObjectViewer = read-only access [OK]
      Hint: Viewer roles mean read-only access [OK]
      Common Mistakes:
      • Confusing objectAdmin with objectViewer
      • Assuming viewer can delete objects
      • Mixing bucket-level and object-level permissions
      4. You wrote this IAM policy JSON but get an error when applying it:
      {
        "bindings": [
          {
            "role": "roles/storage.objectViewer",
            "members": ["user:alice@example.com"]
          },
          {
            "role": "roles/storage.objectAdmin",
            "members": ["bob@example.com"]
          }
        ]
      }
      What is the error and how to fix it?
      medium
      A. Missing 'user:' prefix before bob's email in members; add 'user:'
      B. Role 'roles/storage.objectAdmin' does not exist; use 'roles/storage.admin'
      C. JSON syntax error; remove trailing commas
      D. Members list must be empty for objectAdmin role

      Solution

      1. Step 1: Check members format in IAM policy

        Each member must have a prefix like 'user:', 'serviceAccount:', etc.
      2. Step 2: Identify the missing prefix for bob@example.com

        Bob's member entry lacks 'user:' prefix, causing the error.
      3. Final Answer:

        Missing 'user:' prefix before bob's email in members; add 'user:' -> Option A
      4. Quick Check:

        Member identifiers need prefixes like 'user:' [OK]
      Hint: Always prefix members with user: or serviceAccount: [OK]
      Common Mistakes:
      • Omitting user: prefix in members list
      • Assuming roles names are incorrect without checking
      • Misreading JSON syntax errors
      5. You want to design a GCP project with strong security. Which combination of principles and practices best protects your resources?
      hard
      A. Use least privilege IAM roles, enable defense in depth with multiple controls, and monitor with continuous auditing
      B. Use secure by default settings only, no need for monitoring or role restrictions
      C. Grant all users owner role for flexibility, disable monitoring to reduce noise, and use default network settings
      D. Assign broad roles to users, enable audit logging, and rely on firewall rules only

      Solution

      1. Step 1: Identify key security principles for GCP

        Least privilege limits access, defense in depth adds multiple security layers, and continuous auditing monitors activity.
      2. Step 2: Evaluate options for best security practice

        Use least privilege IAM roles, enable defense in depth with multiple controls, and monitor with continuous auditing combines these principles correctly; others either grant excessive access or skip monitoring.
      3. Final Answer:

        Use least privilege IAM roles, enable defense in depth with multiple controls, and monitor with continuous auditing -> Option A
      4. Quick Check:

        Least privilege + defense in depth + monitoring = strong security [OK]
      Hint: Combine least privilege, defense in depth, and monitoring [OK]
      Common Mistakes:
      • Granting overly broad roles
      • Ignoring monitoring and auditing
      • Relying only on default settings
      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