Introducció

La Gestió d'Identitat i Accés (IAM) de Google Cloud Platform (GCP) és un sistema que permet gestionar qui té accés a quins recursos dins de la plataforma. IAM proporciona un control detallat sobre els permisos i ajuda a garantir la seguretat i la conformitat en l'ús dels serveis de GCP.

Conceptes Clau

  1. Principals

  • Usuaris: Persones que tenen comptes de Google.
  • Grups: Conjunts de comptes de Google.
  • Comptes de servei: Comptes especials utilitzats per aplicacions i serveis per accedir a recursos.

  1. Rols

  • Rols predefinits: Rols creats per Google que agrupen permisos comuns.
  • Rols personalitzats: Rols creats per l'usuari amb permisos específics.
  • Rols bàsics: Rols amplis com "Viewer", "Editor" i "Owner".

  1. Polítiques IAM

  • Política: Conjunt de regles que defineixen qui té quins permisos sobre quins recursos.
  • Binding: Assignació d'un rol a un principal per a un recurs específic.

Configuració Bàsica

  1. Accedir a IAM a la consola de GCP

  • Navega a la consola de GCP.
  • Selecciona "IAM & Admin" al menú de navegació.
  • Fes clic a "IAM".

  1. Assignar un rol a un usuari

  • Fes clic a "Add" a la part superior de la pàgina IAM.
  • Introdueix l'adreça de correu electrònic del principal (usuari, grup o compte de servei).
  • Selecciona el rol que vols assignar.
  • Fes clic a "Save".

Exemples Pràctics

Exemple 1: Assignar el rol de "Viewer" a un usuari

gcloud projects add-iam-policy-binding [PROJECT_ID] \
  --member="user:[email protected]" \
  --role="roles/viewer"

Exemple 2: Crear un rol personalitzat

gcloud iam roles create customRole \
  --project=[PROJECT_ID] \
  --title="Custom Role" \
  --permissions="storage.buckets.get,storage.objects.list" \
  --stage="GA"

Exemple 3: Assignar un rol personalitzat a un compte de servei

gcloud projects add-iam-policy-binding [PROJECT_ID] \
  --member="serviceAccount:[email protected]" \
  --role="projects/[PROJECT_ID]/roles/customRole"

Exercicis Pràctics

Exercici 1: Assignar un rol predefinit a un grup

  1. Crea un grup a Google Groups.
  2. Assigna el rol de "Editor" al grup per al teu projecte GCP.

Exercici 2: Crear i assignar un rol personalitzat

  1. Crea un rol personalitzat amb permisos per a "BigQuery".
  2. Assigna aquest rol a un compte de servei.

Solucions

Solució Exercici 1

gcloud projects add-iam-policy-binding [PROJECT_ID] \
  --member="group:[email protected]" \
  --role="roles/editor"

Solució Exercici 2

gcloud iam roles create bigqueryCustomRole \
  --project=[PROJECT_ID] \
  --title="BigQuery Custom Role" \
  --permissions="bigquery.datasets.get,bigquery.tables.list" \
  --stage="GA"

gcloud projects add-iam-policy-binding [PROJECT_ID] \
  --member="serviceAccount:[email protected]" \
  --role="projects/[PROJECT_ID]/roles/bigqueryCustomRole"

Errors Comuns i Consells

  • Error: "Permission denied": Assegura't que el principal té els permisos necessaris per realitzar l'acció.
  • Error: "Role not found": Verifica que el rol existeix i que has utilitzat el nom correcte.
  • Consell: Utilitza rols predefinits sempre que sigui possible per simplificar la gestió de permisos.

Resum

En aquesta secció, hem après els conceptes bàsics de IAM a GCP, com assignar rols a usuaris i comptes de servei, i com crear rols personalitzats. També hem practicat amb exemples i exercicis per reforçar els conceptes apresos. La gestió adequada d'identitats i accessos és crucial per mantenir la seguretat i l'eficiència en l'ús de Google Cloud Platform.

© Copyright 2024. Tots els drets reservats