Administra varias organizaciones

El nodo de la organización establece la propiedad de los proyectos y carpetas por debajo de este en la jerarquía de recursos de Google Cloud Platform. Tu cuenta de G Suite o Cloud Identity se asocia a un solo nodo de la organización. Cada cuenta de G Suite o Cloud Identity también se asocia a un único dominio, como example.com.

En la mayoría de los casos prácticos, es aconsejable usar las carpetas de un nodo de la organización. Si deseas mantener las suborganizaciones o departamentos dentro de tu empresa como entidades aisladas sin administración central, puedes configurar varias cuentas de G Suite o Cloud Identity. Cada cuenta incluirá un nodo de organización único asociado a un dominio.

Los efectos de usar varios nodos de la organización

Usa varios nodos de la organización cuando desees que los usuarios de una cuenta de G Suite o Cloud Identity no accedan a los recursos que crearon los usuarios de otra cuenta de G Suite o Cloud Identity. Separar los recursos en varios nodos de la organización conlleva varias consecuencias:

  • De forma predeterminada, ningún usuario tendrá visibilidad central ni control sobre todos los recursos.

  • Las políticas comunes en todas las suborganizaciones deberán replicarse en cada nodo de la organización.

  • Trasladar proyectos y carpetas de un nodo de la organización a otro no es una operación de servicio automático y requerirá una solicitud de asistencia.

  • Cada nodo de la organización requiere una cuenta de G Suite. Por lo tanto, operar varios nodos de la organización requiere varias cuentas de G Suite y la capacidad de administrar identidades entre ellas.

Usa un nodo de la organización único

La mayoría de las organizaciones que desean mantener suborganizaciones diferentes pueden hacerlo mediante carpetas y un solo nodo de la organización. Si tienes una sola cuenta de G Suite, esta se asigna al nodo de la organización, y las suborganizaciones se asignan a las carpetas.

Elige un administrador de la organización

Elige uno o más usuarios a fin de que actúen como administradores de la organización de IAM para el nodo de la organización.

Console

Para agregar un administrador de la organización, sigue estos pasos:

  1. Accede a Google Cloud Console como administrador avanzado de G Suite o Cloud Identity y ve a la página IAM y administración:

    Abrir la página IAM y administración

  2. Selecciona la organización que deseas editar:

    1. Haz clic en la lista desplegable de proyectos en la parte superior de la página.

    2. En el cuadro de diálogo Seleccionar de, haz clic en la lista desplegable de organizaciones y selecciona la organización a la que deseas agregar un administrador de la organización.

    3. En la lista que aparece, haz clic en la organización para abrir su página de Permisos de IAM.

  3. Haz clic en Agregar y, luego, ingresa la dirección de correo electrónico de uno o más usuarios que desees establecer como administradores de la organización.

  4. En la lista desplegable Seleccionar una función, selecciona Administrador de recursos > Administrador de la organización y, luego, haz clic en Guardar.

    El administrador de la organización puede hacer lo siguiente:

    • Puede tomar el control total de la organización. Se establece la separación de responsabilidades entre el administrador avanzado de G Suite o de Cloud Identity y el administrador de Google Cloud.

    • Puedes delegar la responsabilidad sobre las funciones esenciales mediante la asignación de las funciones de IAM relevantes.

Crea carpetas para las suborganizaciones

Crea una carpeta en el nodo de la organización de cada suborganización.

Para crear carpetas, debes tener la función Administrador de carpetas o Creador de carpetas a nivel del superior. Por ejemplo, para crear carpetas a nivel de la organización, debes tener una de estas funciones a nivel de la organización.

Como parte de la creación de una carpeta, debes asignarle un nombre. Los nombres de las carpetas deben cumplir los siguientes requisitos:

  • El nombre puede contener letras, dígitos, espacios, guiones y guiones bajos.
  • El nombre visible de la carpeta debe comenzar y terminar con una letra o un dígito.
  • El nombre debe tener entre 3 y 30 caracteres.
  • El nombre debe ser distinto al de todas las demás carpetas que comparten el superior.

Para crear una carpeta, haz lo siguiente:

Console

Las carpetas se pueden crear en la IU a través de la sección “Administra proyectos y carpetas”.

  1. Ve a la página de administración de recursos en Cloud Console:

    Abrir la página de administración de recursos

  2. Asegúrate de que el nombre de tu organización esté seleccionado en la lista desplegable de organizaciones que se encuentra en la parte superior de la página.

  3. Haz clic en Crear carpeta.

  4. En el cuadro Nombre de la carpeta, ingresa el nombre de la carpeta nueva.

  5. En Destino, haz clic en Explorar y, luego, selecciona el nodo o la carpeta de la organización en la que deseas crear tu nueva carpeta.

    1. Haz clic en Crear.

gcloud

Las carpetas se pueden crear de manera programática mediante la herramienta de línea de comandos de gcloud.

Para crear una carpeta en el recurso de la organización con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando.

gcloud alpha resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --organization=[ORGANIZATION_ID]

Para crear una carpeta cuya carpeta superior sea otra, sigue estos pasos:

gcloud alpha resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --folder=[FOLDER_ID]

En el ejemplo anterior, se ilustra lo siguiente:

  • [DISPLAY_NAME] es el nombre visible de la carpeta. Dos carpetas con la misma carpeta superior no pueden compartir un nombre visible. El nombre visible debe comenzar y terminar con una letra o un dígito, puede contener letras, dígitos, espacios, guiones y guiones bajos, y no puede tener más de 30 caracteres.
  • [ORGANIZATION_ID] es el ID de la organización superior, si el superior es una organización.
  • [FOLDER_ID] es el ID de la carpeta superior, si el superior es una carpeta.

API

Se pueden crear carpetas con una solicitud a la API.

El JSON de la solicitud luce así:

request_json= '{
  display_name: "[DISPLAY_NAME]"
}'

La solicitud de curl para crear carpetas luce así:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v2/folders?parent=[ORGANIZATION_NAME]

En el ejemplo anterior, se ilustra lo siguiente:

  • [DISPLAY_NAME] es el nombre visible de la carpeta nueva, por ejemplo, “Mi carpeta genial”.
  • [ORGANIZATION_NAME] es el nombre de la organización en la cual creas la carpeta, por ejemplo, organizations/123.

La respuesta para crear carpetas luce así:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  }
}

La solicitud de curl para obtener operaciones luce así:

curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v1/operations/fc.123456789

La respuesta para obtener operaciones luce así:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.Folder",
    "name": "folders/12345",
    "parent": "organizations/123",
    "displayName": "[DISPLAY_NAME]",
    "lifecycleState": "ACTIVE",
    "createTime": "2017-07-19T23:29:26.018Z",
    "updateTime": "2017-07-19T23:29:26.046Z"
  }
}

Otorga funciones de administrador a la carpeta

Para cada carpeta de la suborganización que creas, otorga a uno o más usuarios la función Administrador de carpetas. Estos usuarios tendrán control administrativo sobre la carpeta y la suborganización que representa.

Para configurar el acceso a las carpetas, debes tener la función Administrador de carpetas de IAM o Administrador de carpetas a nivel del superior.

Console

  1. En Google Cloud Console, abre la página de administración de recursos.

    Abrir la página de administración de recursos

  2. Haz clic en la lista desplegable Organización (Organization) en la esquina superior izquierda y, luego, selecciona tu organización.

  3. Selecciona la casilla de verificación junto al proyecto en el que deseas cambiar los permisos.

  4. En el Panel de información (Info panel) del lado derecho, en Permisos (Permissions), ingresa las direcciones de correo electrónico de los miembros que deseas agregar.

  5. En la lista desplegable Seleccionar una función, selecciona la función que deseas otorgar a esos miembros.

  6. Haz clic en Agregar. Aparecerá una notificación para que confirmes la adición o actualización de la función nueva de los miembros.

gcloud

Puedes configurar el acceso a las carpetas de manera programática mediante la herramienta de línea de comandos de gcloud o la API.

gcloud alpha resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderEditor

gcloud alpha resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderViewer

O, como alternativa:

gcloud alpha resource-manager \
  folders set-iam-policy [FOLDER_ID] [POLICY_FILE]

En el ejemplo anterior, se ilustra lo siguiente:

  • [FOLDER_ID] es el ID de la carpeta nueva.
  • [POLICY_FILE] es la ruta a un archivo de la política de la carpeta.

API

SetsIamPolicy establece la política de control de acceso en una carpeta y reemplaza cualquier política existente. El campo resource debe ser el nombre del recurso de la carpeta, por ejemplo, folders/1234.

 request_json= '{
   policy: {
     version: "1",
     bindings: [
       {
         role: "roles/resourcemanager.folderEditor",
         members: [
           "user:email1@example.com",
           "user:email2@example.com",
         ]
       }
     ]
   }
 }'

La solicitud curl luce así:

   curl -X POST -H "Content-Type: application/json" \
   -H "Authorization: Bearer ${bearer_token}" \
   -d "$request_json" \
   https://cloudresourcemanager.googleapis.com/v2/[FOLDER_NAME]:setIamPolicy

En el ejemplo anterior, se ilustra lo siguiente:

  • [FOLDER_NAME] es el nombre de la carpeta cuya política de IAM configurarás, por ejemplo, carpetas/123.

Restringe las funciones de la suborganización

Cada Administrador de carpetas puede restringir la función Creador del proyecto de los miembros de su suborganización. También puede quitar el dominio de la función Creador del proyecto en la política de IAM del nodo de la organización.

Los administradores avanzados de G Suite tienen privilegios de administrador de la organización irrevocables. Estos administradores avanzados suelen administrar las identidades y las políticas de identidad, en lugar de administrar los recursos de Google Cloud y las políticas de recursos.

Console

Para quitar las funciones que se asignaron a los usuarios de forma predeterminada con Google Cloud Console, sigue estos pasos:

  1. Ve a la página Administrar recursos en Cloud Console:

    Abrir la página Administrar recursos

  2. Haz clic en la lista desplegable Organización en la parte superior de la página y, luego, selecciona tu organización.

  3. Selecciona la casilla de verificación del recurso de la organización en el que deseas cambiar los permisos. Si no tienes un recurso de carpeta, el recurso de la organización no será visible. Si quieres continuar, consulta las instrucciones para revocar funciones que están en la página de IAM.

  4. En el panel lateral derecho, en Permisos, haz clic para expandir la función a la que deseas quitarle usuarios.

  5. En la lista expandida de las funciones, junto al miembro que deseas quitar de la función, haz clic en quitar.Captura de pantalla de la IU

  6. En el cuadro de diálogo ¿Quitar miembro? que aparecerá, haz clic en Quitar para confirmar que deseas quitarle la función al miembro especificado.

  7. Repite los dos pasos anteriores para cada función que desees quitar.

Ejemplo

En el diagrama siguiente, se describe una organización que usó carpetas para separar dos departamentos. Los jefes de los departamentos de ingeniería y finanzas tienen control administrativo, y los otros usuarios no pueden crear proyectos.

Diagrama de jerarquía

Usa varios nodos de la organización

Si tu organización tiene varias cuentas de G Suite, tendrás varios nodos de la organización de forma predeterminada. Para mantener la visibilidad y el control central, debes elegir un nodo de la organización como nodo de la organización principal. Los administradores avanzados de la cuenta de G Suite asociada a tu nodo principal de la organización tendrán control administrativo sobre todos los recursos, incluidos los que crearon los usuarios de otras cuentas de G Suite. Se otorgará a los usuarios de esas cuentas de G Suite acceso a una carpeta en el nodo principal de la organización, en la que podrán crear proyectos.

Elige un administrador de la organización

Elige uno o más usuarios a fin de que actúen como administradores de la organización de IAM para el nodo de la organización.

Console

Para agregar un administrador de la organización, sigue estos pasos:

  1. Accede a Google Cloud Console como administrador avanzado de G Suite o Cloud Identity y ve a la página IAM y administración:

    Abrir la página IAM y administración

  2. Selecciona la organización que deseas editar:

    1. Haz clic en la lista desplegable de proyectos en la parte superior de la página.

    2. En el cuadro de diálogo Seleccionar de, haz clic en la lista desplegable de organizaciones y selecciona la organización a la que deseas agregar un administrador de la organización.

    3. En la lista que aparece, haz clic en la organización para abrir su página de Permisos de IAM.

  3. Haz clic en Agregar y, luego, ingresa la dirección de correo electrónico de uno o más usuarios que desees establecer como administradores de la organización.

  4. En la lista desplegable Seleccionar una función, selecciona Administrador de recursos > Administrador de la organización y, luego, haz clic en Guardar.

    El administrador de la organización puede hacer lo siguiente:

    • Puede tomar el control total de la organización. Se establece la separación de responsabilidades entre el administrador avanzado de G Suite o de Cloud Identity y el administrador de Google Cloud.

    • Puedes delegar la responsabilidad sobre las funciones esenciales mediante la asignación de las funciones de IAM relevantes.

Quita la función Creador del proyecto

Quita la función Creador del proyecto del nodo de la organización para asegurarte de que los recursos no se creen en los otros nodos de la organización.

Console

Para quitar las funciones que se asignaron a los usuarios de forma predeterminada con Google Cloud Console, sigue estos pasos:

  1. Ve a la página Administrar recursos en Cloud Console:

    Abrir la página Administrar recursos

  2. Haz clic en la lista desplegable Organización en la parte superior de la página y, luego, selecciona tu organización.

  3. Selecciona la casilla de verificación del recurso de la organización en el que deseas cambiar los permisos. Si no tienes un recurso de carpeta, el recurso de la organización no será visible. Si quieres continuar, consulta las instrucciones para revocar funciones que están en la página de IAM.

  4. En el panel lateral derecho, en Permisos, haz clic para expandir la función a la que deseas quitarle usuarios.

  5. En la lista expandida de las funciones, junto al miembro que deseas quitar de la función, haz clic en quitar.Captura de pantalla de la IU

  6. En el cuadro de diálogo ¿Quitar miembro? que aparecerá, haz clic en Quitar para confirmar que deseas quitarle la función al miembro especificado.

  7. Repite los dos pasos anteriores en cada función que desees quitar.

Crea carpetas para las cuentas de G Suite

Crea una carpeta en el nodo de la organización de cada cuenta de G Suite.

Para crear carpetas, debes tener la función Administrador de carpetas o Creador de carpetas a nivel del superior. Por ejemplo, para crear carpetas a nivel de la organización, debes tener una de estas funciones a nivel de la organización.

Como parte de la creación de una carpeta, debes asignarle un nombre. Los nombres de las carpetas deben cumplir los siguientes requisitos:

  • El nombre puede contener letras, dígitos, espacios, guiones y guiones bajos.
  • El nombre visible de la carpeta debe comenzar y terminar con una letra o un dígito.
  • El nombre debe tener entre 3 y 30 caracteres.
  • El nombre debe ser distinto al de todas las demás carpetas que comparten el superior.

Para crear una carpeta, haz lo siguiente:

Console

Las carpetas se pueden crear en la IU a través de la sección “Administra proyectos y carpetas”.

  1. Ve a la página de administración de recursos en Cloud Console:

    Abrir la página de administración de recursos

  2. Asegúrate de que el nombre de tu organización esté seleccionado en la lista desplegable de organizaciones que se encuentra en la parte superior de la página.

  3. Haz clic en Crear carpeta.

  4. En el cuadro Nombre de la carpeta, ingresa el nombre de la carpeta nueva.

  5. En Destino, haz clic en Explorar y, luego, selecciona el nodo o la carpeta de la organización en la que deseas crear tu nueva carpeta.

    1. Haz clic en Crear.

gcloud

Las carpetas se pueden crear de manera programática mediante la herramienta de línea de comandos de gcloud.

Para crear una carpeta en el recurso de la organización con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando.

gcloud alpha resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --organization=[ORGANIZATION_ID]

Para crear una carpeta cuya carpeta superior sea otra, sigue estos pasos:

gcloud alpha resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --folder=[FOLDER_ID]

En el ejemplo anterior, se ilustra lo siguiente:

  • [DISPLAY_NAME] es el nombre visible de la carpeta. Dos carpetas con la misma carpeta superior no pueden compartir un nombre visible. El nombre visible debe comenzar y terminar con una letra o un dígito, puede contener letras, dígitos, espacios, guiones y guiones bajos, y no puede tener más de 30 caracteres.
  • [ORGANIZATION_ID] es el ID de la organización superior, si el superior es una organización.
  • [FOLDER_ID] es el ID de la carpeta superior, si el superior es una carpeta.

API

Se pueden crear carpetas con una solicitud a la API.

El JSON de la solicitud luce así:

request_json= '{
  display_name: "[DISPLAY_NAME]"
}'

La solicitud de curl para crear carpetas luce así:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v2/folders?parent=[ORGANIZATION_NAME]

En el ejemplo anterior, se ilustra lo siguiente:

  • [DISPLAY_NAME] es el nombre visible de la carpeta nueva, por ejemplo, “Mi carpeta genial”.
  • [ORGANIZATION_NAME] es el nombre de la organización en la cual creas la carpeta, por ejemplo, organizations/123.

La respuesta para crear carpetas luce así:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  }
}

La solicitud de curl para obtener operaciones luce así:

curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v1/operations/fc.123456789

La respuesta para obtener operaciones luce así:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v2.Folder",
    "name": "folders/12345",
    "parent": "organizations/123",
    "displayName": "[DISPLAY_NAME]",
    "lifecycleState": "ACTIVE",
    "createTime": "2017-07-19T23:29:26.018Z",
    "updateTime": "2017-07-19T23:29:26.046Z"
  }
}

Otorga funciones de administrador a la carpeta

Otorga a uno o más usuarios la función Administrador de carpetas, para cada una de las carpetas creadas. A estos usuarios se les delegará el control administrativo sobre la carpeta y la suborganización que representa.

Para configurar el acceso a las carpetas, debes tener la función Administrador de carpetas de IAM o Administrador de carpetas a nivel del superior.

Console

  1. En Google Cloud Console, abre la página de administración de recursos.

    Abrir la página de administración de recursos

  2. Haz clic en la lista desplegable Organización (Organization) en la esquina superior izquierda y, luego, selecciona tu organización.

  3. Selecciona la casilla de verificación junto al proyecto en el que deseas cambiar los permisos.

  4. En el Panel de información (Info panel) del lado derecho, en Permisos (Permissions), ingresa las direcciones de correo electrónico de los miembros que deseas agregar.

  5. En la lista desplegable Seleccionar una función, selecciona la función que deseas otorgar a esos miembros.

  6. Haz clic en Agregar. Aparecerá una notificación para que confirmes la adición o actualización de la función nueva de los miembros.

gcloud

Puedes configurar el acceso a las carpetas de manera programática mediante la herramienta de línea de comandos de gcloud o la API.

gcloud alpha resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderEditor

gcloud alpha resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderViewer

O, como alternativa:

gcloud alpha resource-manager \
  folders set-iam-policy [FOLDER_ID] [POLICY_FILE]

En el ejemplo anterior, se ilustra lo siguiente:

  • [FOLDER_ID] es el ID de la carpeta nueva.
  • [POLICY_FILE] es la ruta a un archivo de la política de la carpeta.

API

SetsIamPolicy establece la política de control de acceso en una carpeta y reemplaza cualquier política existente. El campo resource debe ser el nombre del recurso de la carpeta, por ejemplo, folders/1234.

 request_json= '{
   policy: {
     version: "1",
     bindings: [
       {
         role: "roles/resourcemanager.folderEditor",
         members: [
           "user:email1@example.com",
           "user:email2@example.com",
         ]
       }
     ]
   }
 }'

La solicitud curl luce así:

   curl -X POST -H "Content-Type: application/json" \
   -H "Authorization: Bearer ${bearer_token}" \
   -d "$request_json" \
   https://cloudresourcemanager.googleapis.com/v2/[FOLDER_NAME]:setIamPolicy

En el ejemplo anterior, se ilustra lo siguiente:

  • [FOLDER_NAME] es el nombre de la carpeta cuya política de IAM configurarás, por ejemplo, carpetas/123.

Cada Administrador de carpeta puede otorgar a los usuarios del dominio asociado la función Creador del proyecto.

Ejemplo

En el siguiente diagrama, se describe una organización con un dominio principal que se mantiene aislado de un dominio secundario adquirido. Cada uno de los dominios tiene sus propias cuentas de G Suite, además, hypothetical.com es el nodo principal de la organización.

Diagrama de jerarquía