Skip to content

Associate Cloud Engineer · Domain 1: Setting up a cloud solution environment · 20% of the exam

Task 1.1: Setting up cloud projects and accounts.

The resource hierarchy, standalone organizations and organization policies, IAM roles in a project, users and groups in Cloud Identity, enabling APIs, observability and networking setup, quotas, regions and zones, Cloud Asset Inventory, Gemini Cloud Assist and Workforce Identity Federation.

Study it

  • Organization (standalone or domain-based), folders and projects: the resource hierarchy

    Partly covered by: Organizations, SCPs & Control Tower

  • Organization policies and the constraints they enforce

    Partly covered by: Organizations, SCPs & Control Tower

  • Cloud Identity users and groups, and Workforce Identity Federation

    Lesson coming

  • A new project: enabling APIs, first network setup, quotas, regions and zones

    Lesson coming

  • Cloud Asset Inventory and Gemini Cloud Assist for finding resources

    Lesson coming

Sample questions

Try each one before opening the answer. Every option is explained, with the Google Cloud documentation page that proves it.

Question 1 · choose 1

A company is moving 40 projects into its new Google Cloud organization. Each of its four departments owns about ten projects, and each department has a platform team that needs the same administrative roles on every project that department owns, including projects created next year. How should you structure the hierarchy to keep this manageable?

  1. AGrant each platform team its roles on the organization resource so all projects inherit them
  2. BPut each department's projects in its own folder and grant the team's roles on that folder
  3. CCreate a separate organization for each department and grant the platform team's roles on its organization
  4. DKeep every project directly under the organization and grant the platform team's roles on each project
Show the answer and why
  • AGrant each platform team its roles on the organization resource so all projects inherit them

    Incorrect

    A grant on the organization is inherited by every project in it, so each team would also administer the other departments' projects.

  • BPut each department's projects in its own folder and grant the team's roles on that folder

    Correct

    Allow policies set on a folder are inherited by every project in it, including projects created there later, so each team needs one grant per department.

  • CCreate a separate organization for each department and grant the platform team's roles on its organization

    Incorrect

    Separate organizations split identity, policy and billing control that the company wants central; folders give per-department boundaries inside one organization.

  • DKeep every project directly under the organization and grant the platform team's roles on each project

    Incorrect

    This works today but needs about forty separate grants and a new one for every future project, which is the overhead folders remove.

Folders group projects that share access needs. Roles granted on a folder flow down to the projects and subfolders beneath it, so one binding per department covers today's projects and tomorrow's.

Question 2 · choose 1

A regulator requires that every new resource your company creates in Google Cloud that supports a location choice is created only in European Union locations. Developers have Editor on their own projects, and the rule must hold even if they try to choose another region. What should you configure?

  1. AA Cloud Asset Inventory feed that reports every resource created outside the EU to the security team
  2. BAn organization policy on the organization node that allows only in:eu-locations for resource locations
  3. CA default region and zone in each developer's gcloud configuration, set to a European region
  4. DA custom IAM role for developers that leaves out the permissions needed to create resources outside the EU
Show the answer and why
  • AA Cloud Asset Inventory feed that reports every resource created outside the EU to the security team

    Incorrect

    A feed detects the violation after the resource exists; it does not prevent the resource from being created.

  • BAn organization policy on the organization node that allows only in:eu-locations for resource locations

    Correct

    The gcp.resourceLocations constraint stops supported services from creating resources outside the allowed locations, and a policy set at the organization applies to every project below it.

  • CA default region and zone in each developer's gcloud configuration, set to a European region

    Incorrect

    A default only fills in a value the user leaves out; any user can still pass another region on the command line or in the console.

  • DA custom IAM role for developers that leaves out the permissions needed to create resources outside the EU

    Incorrect

    IAM permissions are not scoped by location, so a role cannot allow creating a VM in one region and deny it in another.

Organization policies set guardrails that IAM roles cannot: they constrain how resources may be configured, whoever creates them. The resource locations constraint applies to newly created resources only, so existing resources outside the allowed list keep running.

Question 3 · choose 2

A company keeps its employees and groups in on-premises Active Directory. It wants every employee to get a Cloud Identity user account, AD groups to appear as Cloud Identity groups that can be used in IAM, accounts to be suspended automatically when someone leaves, and passwords never to be stored by Google. Which TWO steps meet these requirements? (Choose TWO.)

  1. AHave each user set a Google password at first sign-in and enforce 2-Step Verification on it
  2. BConfigure single sign-on so Cloud Identity delegates authentication to AD FS over SAML
  3. CCreate a workforce identity pool with an AD FS provider and grant IAM roles to the pool's groups
  4. DExport the AD users to a CSV file each week and upload it in the Admin console
  5. ERun Google Cloud Directory Sync to provision users and groups from Active Directory into Cloud Identity on a schedule
Show the answer and why
  • AHave each user set a Google password at first sign-in and enforce 2-Step Verification on it

    Incorrect

    A Google password is a credential stored by Google, which the company forbids; with SAML single sign-on only Active Directory handles passwords.

  • BConfigure single sign-on so Cloud Identity delegates authentication to AD FS over SAML

    Correct

    With SAML single sign-on, users authenticate against AD FS, so their passwords stay in Active Directory.

  • CCreate a workforce identity pool with an AD FS provider and grant IAM roles to the pool's groups

    Incorrect

    Workforce Identity Federation is sync-less: it does not create Cloud Identity user accounts or groups, which this company requires.

  • DExport the AD users to a CSV file each week and upload it in the Admin console

    Incorrect

    A bulk upload creates accounts, but it is manual and does not suspend leavers or keep groups in step with AD.

  • ERun Google Cloud Directory Sync to provision users and groups from Active Directory into Cloud Identity on a schedule

    Correct

    GCDS reads AD over LDAP and creates, updates and suspends Cloud Identity users and groups to match it, which automates the lifecycle.

Provisioning and authentication are separate jobs. GCDS keeps Cloud Identity's users and groups in step with Active Directory, and SAML single sign-on makes AD FS the place where users prove who they are.

Question 4 · choose 1

A new project was created for a team. The first time a developer runs gcloud compute instances create in it, the command fails with an error saying that the Compute Engine API has not been used in the project before or is disabled. What should the developer run first?

  1. Agcloud components update
  2. Bgcloud auth application-default login
  3. Cgcloud services enable compute.googleapis.com
  4. Dgcloud projects add-iam-policy-binding PROJECT_ID --member=user:dev@example.com --role=roles/compute.admin
Show the answer and why
  • Agcloud components update

    Incorrect

    Updating the CLI changes the tools on the developer's machine; it does not change which APIs the project has enabled.

  • Bgcloud auth application-default login

    Incorrect

    This stores Application Default Credentials for client libraries; the error is about the project's API, not about credentials.

  • Cgcloud services enable compute.googleapis.com

    Correct

    A project must enable an API before it can use the service, and this command enables the Compute Engine API in the current project.

  • Dgcloud projects add-iam-policy-binding PROJECT_ID --member=user:dev@example.com --role=roles/compute.admin

    Incorrect

    A missing permission produces a permission-denied error; this error says the API itself is disabled, which no role grant fixes.

Google Cloud APIs are enabled per project through Service Usage, and a service's API must be enabled before the project can use it. gcloud services list --enabled shows which APIs a project already has on.

Question 5 · choose 1

A batch team plans to run 600 vCPUs in us-east1 next week. In the console's Quotas page, the project's CPUs quota for us-east1 shows a value of 300. The team's code is already tested at full scale in another region. What should you do?

  1. ARaise the project's budget amount so that more resources can be created in the region
  2. BMove the workload to Spot VMs, because Spot capacity does not count against the regional quota
  3. CSubmit a quota increase request for that regional CPUs quota in Cloud Quotas, with a justification
  4. DCreate a second project in us-east1 and split the batch evenly between the two projects' quotas
Show the answer and why
  • ARaise the project's budget amount so that more resources can be created in the region

    Incorrect

    Budgets track spend and send alerts; they have no effect on how many resources a quota allows.

  • BMove the workload to Spot VMs, because Spot capacity does not count against the regional quota

    Incorrect

    Spot VMs consume quota too, either the regular CPU quota or a separate preemptible quota, so this does not lift the limit.

  • CSubmit a quota increase request for that regional CPUs quota in Cloud Quotas, with a justification

    Correct

    Quota increases are requested per quota and location; Google reviews the request, so it should be made before the capacity is needed.

  • DCreate a second project in us-east1 and split the batch evenly between the two projects' quotas

    Incorrect

    Splitting work across projects to dodge a quota adds billing, network and IAM overhead, and each new project starts with its own default quotas.

Quotas cap how much of a resource a project can use in a location. When a plan needs more, check the current value and request an increase ahead of time for that specific quota and region.

Question 6 · choose 1

A company hires 300 contractors through a partner that manages their identities in Okta. The contractors need console and gcloud access to two projects. The company does not want to create or synchronize Cloud Identity accounts for them and wants access to end as soon as the partner disables a contractor in Okta. What should you set up?

  1. AA workforce identity pool with an Okta provider, with IAM roles granted to the pool's principals
  2. BA workload identity pool with an Okta OIDC provider, and IAM roles granted to the pool on the two projects
  3. CA service account per contractor, with a key that the partner hands to each person
  4. DGoogle Cloud Directory Sync from Okta into Cloud Identity, with the contractors in a dedicated organizational unit
Show the answer and why
  • AA workforce identity pool with an Okta provider, with IAM roles granted to the pool's principals

    Correct

    Workforce Identity Federation lets users from an external IdP sign in to Google Cloud without synchronized accounts; the IdP stays the source of truth.

  • BA workload identity pool with an Okta OIDC provider, and IAM roles granted to the pool on the two projects

    Incorrect

    Workload identity pools are for applications and services; human console sign-in uses workforce identity pools.

  • CA service account per contractor, with a key that the partner hands to each person

    Incorrect

    Sharing service account keys with people bypasses their identity provider entirely and creates long-lived credentials to manage.

  • DGoogle Cloud Directory Sync from Okta into Cloud Identity, with the contractors in a dedicated organizational unit

    Incorrect

    GCDS synchronizes from LDAP directories into Cloud Identity accounts, which is exactly the account creation the company wants to avoid.

Workforce Identity Federation is sync-less: users authenticate with their own IdP, attributes are mapped to Google Cloud, and IAM grants go to the pool's principals. Once a contractor is disabled in Okta, new sign-ins fail, and existing sessions end within the pool's session duration, or at once if you revoke them.

Question 7 · choose 1

Before an audit, you must list every Compute Engine instance in your organization, across about 200 projects in many folders, with its project and location. You want one query rather than a script that visits each project. What should you use?

  1. AThe Compute Engine VM instances page in the console, with the organization chosen in the project picker
  2. Bgcloud compute instances list with a --filter expression that matches the organization ID
  3. CA BigQuery query on the Cloud Billing export that groups Compute Engine usage by resource name
  4. Dgcloud asset search-all-resources scoped to the organization, filtered to Compute Engine instances
Show the answer and why
  • AThe Compute Engine VM instances page in the console, with the organization chosen in the project picker

    Incorrect

    The VM instances page shows the instances of the selected project, not of every project in the organization.

  • Bgcloud compute instances list with a --filter expression that matches the organization ID

    Incorrect

    gcloud compute instances list works in one project at a time; its filter cannot widen the scope to an organization.

  • CA BigQuery query on the Cloud Billing export that groups Compute Engine usage by resource name

    Incorrect

    Billing data shows what generated cost, not an inventory of resources with their configuration and location; idle or free resources may be missing.

  • Dgcloud asset search-all-resources scoped to the organization, filtered to Compute Engine instances

    Correct

    Cloud Asset Inventory searches resource metadata across a project, folder or organization in a single call and can filter by asset type.

Cloud Asset Inventory keeps a searchable history of resource metadata for the whole hierarchy. Searching at organization scope needs the Cloud Asset API and the right Cloud Asset role on the organization.

Question 8 · choose 1

An operations team runs one application across three projects: web, api and data. It wants one set of Cloud Monitoring dashboards and charts that show metrics from all three projects together, without copying any metric data. What should you configure?

  1. AMove the three applications into a single project so that one project's monitoring covers them all
  2. BAdd all three projects to the metrics scope of one scoping project and build the dashboards there
  3. CGrant the team Monitoring Viewer on each project and switch between the projects in the console
  4. DCreate a log sink in each project that routes its logs to a shared log bucket in a central project
Show the answer and why
  • AMove the three applications into a single project so that one project's monitoring covers them all

    Incorrect

    Merging projects to get one view throws away the separation the team chose; metrics scopes give the combined view without it.

  • BAdd all three projects to the metrics scope of one scoping project and build the dashboards there

    Correct

    A metrics scope lets the scoping project read the metrics of every project added to it, so its dashboards can chart all three.

  • CGrant the team Monitoring Viewer on each project and switch between the projects in the console

    Incorrect

    The team could see each project, but only one at a time; no single dashboard would chart all three.

  • DCreate a log sink in each project that routes its logs to a shared log bucket in a central project

    Incorrect

    Routing logs centralizes log entries, not Cloud Monitoring metrics, and it copies data rather than reading it in place.

Every project has a metrics scope that starts with only itself. Adding other projects to it lets that scoping project chart and alert on their metrics while the data stays where it was written.

Question 9 · choose 1

A consultant uses one laptop for two clients, each with a different Google account, default project and default region. Typing --project and --account on every command has already caused one mistake. What should the consultant set up?

  1. AA separate laptop user account for each client with its own gcloud installation
  2. BA named gcloud configuration per client, switched with configurations activate
  3. CA single configuration whose properties are edited before each client's work
  4. DEnvironment variables exported in the shell before each command
Show the answer and why
  • AA separate laptop user account for each client with its own gcloud installation

    Incorrect

    This works but is heavier than the configurations gcloud already provides for this purpose.

  • BA named gcloud configuration per client, switched with configurations activate

    Correct

    Each named configuration stores its own account, project and other properties, and activating one switches all of them together.

  • CA single configuration whose properties are edited before each client's work

    Incorrect

    Editing properties by hand each time is the error-prone step the consultant wants to remove.

  • DEnvironment variables exported in the shell before each command

    Incorrect

    Variables have to be set every session and are easy to forget, much like the flags.

gcloud configurations are named sets of properties. Create one per context and activate the one you need.

Question 10 · choose 1

The firewall rule allow-web was edited several times over the last two weeks. An incident review needs the rule's full configuration as it was after each of those changes, from the command line. Which command returns this?

  1. Agcloud compute firewall-rules describe allow-web --project=PROJECT_ID --format=json
  2. Bgcloud asset feeds create web-feed --project=PROJECT_ID --asset-names=ASSET_NAME --pubsub-topic=TOPIC
  3. Cgcloud asset get-history --project=PROJECT_ID --asset-names=ASSET_NAME --content-type=resource --start-time=START_TIME
  4. Dgcloud compute operations list --project=PROJECT_ID --filter="targetLink~allow-web"
Show the answer and why
  • Agcloud compute firewall-rules describe allow-web --project=PROJECT_ID --format=json

    Incorrect

    describe returns the rule's configuration as it is now, not earlier versions.

  • Bgcloud asset feeds create web-feed --project=PROJECT_ID --asset-names=ASSET_NAME --pubsub-topic=TOPIC

    Incorrect

    A feed publishes updates from the moment it is created; it cannot return changes made before it existed.

  • Cgcloud asset get-history --project=PROJECT_ID --asset-names=ASSET_NAME --content-type=resource --start-time=START_TIME

    Correct

    get-history returns the update history of an asset within a time window that starts no more than 35 days ago, with the resource metadata of each version.

  • Dgcloud compute operations list --project=PROJECT_ID --filter="targetLink~allow-web"

    Incorrect

    This lists the Compute Engine operations that touched the rule, not the rule's configuration after each one.

Cloud Asset Inventory keeps a history of each asset for 35 days. Asking for an asset's history with the resource content type shows how its configuration changed over that window.

Question 11 · choose 1

A ten-person startup has just set up Cloud Identity Free and has no other identity provider. It needs accounts for three new hires and a group for its engineers. Where should the administrator create them?

  1. AIn the Google Admin console of the Cloud Identity account
  2. BBy installing Google Cloud Directory Sync on a laptop
  3. CIn the IAM page of each project, by typing their new email addresses
  4. DIn a workforce identity pool, by adding each person's email address
Show the answer and why
  • AIn the Google Admin console of the Cloud Identity account

    Correct

    Cloud Identity users and groups are managed in the Admin console, which suits a small team with no other directory.

  • BBy installing Google Cloud Directory Sync on a laptop

    Incorrect

    There is no directory here for it to synchronize from.

  • CIn the IAM page of each project, by typing their new email addresses

    Incorrect

    IAM grants roles to existing identities; it does not create user accounts or groups.

  • DIn a workforce identity pool, by adding each person's email address

    Incorrect

    A pool does not create Cloud Identity users or groups.

Without an external directory, Cloud Identity itself is the source of users and groups. Larger organizations automate this from their IdP.

Question 12 · choose 1

An engineer is about to create a workforce identity pool and asks in which project to create it. What should you tell the engineer?

  1. AAt the organization level, for use across its projects
  2. BIn the project linked to the organization's billing account
  3. CIn a folder, so that the folder's projects inherit the pool
  4. DIn each project that will use it, one pool per project
Show the answer and why
  • AAt the organization level, for use across its projects

    Correct

    Pools are configured at the Google Cloud organization level, which makes them usable across the organization.

  • BIn the project linked to the organization's billing account

    Incorrect

    Billing accounts are not where pools are created, and pools are not project resources.

  • CIn a folder, so that the folder's projects inherit the pool

    Incorrect

    Pools are configured on the organization, not on folders.

  • DIn each project that will use it, one pool per project

    Incorrect

    Pools are not project resources; one pool serves the whole organization.

Workforce identity pools belong to the organization. Access within projects is then granted to the pool's principals with IAM.

Question 13 · choose 1

A shared networking project hosts infrastructure that dozens of other projects depend on. You want to block anyone, including owners, from shutting it down by mistake until the protection is explicitly removed. What should you add?

  1. AA label protected=true on the project
  2. BDeletion protection on every VM in the project
  3. CA budget alert on the project at 1% of its spend
  4. DA lien on the project that blocks deletion
Show the answer and why
  • AA label protected=true on the project

    Incorrect

    Labels are metadata; they do not prevent deletion.

  • BDeletion protection on every VM in the project

    Incorrect

    This protects VMs, not the project itself.

  • CA budget alert on the project at 1% of its spend

    Incorrect

    Budgets watch costs; they do not block deletion.

  • DA lien on the project that blocks deletion

    Correct

    A lien blocks the project's deletion until the lien is removed.

Liens add a deliberate extra step before a project can be shut down, which protects shared foundations from accidents.

Practise domain 1 →Practise all domains →