Configura la generación de recomendaciones de roles

Si cambias la configuración del recomendador de IAM, puedes personalizar cómo se generan las recomendaciones de roles. En esta página, se explica cómo editar la configuración para cambiar la rapidez con la que se generan las recomendaciones para tu proyecto.

Aunque el recomendador de IAM genera recomendaciones de roles para una variedad de recursos, solo puedes editar la forma en que se generan las recomendaciones de roles proyectos.

Antes de comenzar

Roles obligatorios

Para obtener los permisos que necesitas para configurar recomendaciones de roles de IAM, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto cuyo recomendador de IAM deseas configurar:

  • Consulta los detalles de configuración: Visualizador del recomendador de IAM (roles/recommender.iamViewer)
  • Modifica tu configuración: Administrador de recomendaciones de IAM (roles/recommender.iamAdmin)

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Estos roles predefinidos contienen los permisos necesarios para configurar las recomendaciones de roles de IAM. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para configurar las recomendaciones de roles de IAM:

  • Consulta los detalles de configuración: recommender.iamPolicyRecommenderConfig.get
  • Modifica tu configuración: recommender.iamPolicyRecommenderConfig.update

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Consulta tu configuración actual

Consulta tu configuración actual para ver cuántos días de datos de uso de permisos el recomendador de IAM espera antes de generar recomendaciones de roles.

Puedes ver la configuración con gcloud CLI o la API de REST.

gcloud

Para obtener la configuración del recomendador de IAM de un proyecto, usa el comando gcloud beta recommender recommender-config describe.

Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.

Ejecuta el comando gcloud beta recommender recommender-config describe:

Linux, macOS o Cloud Shell

gcloud beta recommender recommender-config describe \
google.iam.policy.Recommender \
--project="PROJECT_ID" \
--location="global"

Windows (PowerShell)

gcloud beta recommender recommender-config describe `
google.iam.policy.Recommender `
--project="PROJECT_ID" `
--location="global"

Windows (cmd.exe)

gcloud beta recommender recommender-config describe ^
google.iam.policy.Recommender ^
--project="PROJECT_ID" ^
--location="global"

La respuesta contiene la configuración del recomendador de IAM del proyecto. Por ejemplo, podría verse de la siguiente manera:

etag: '"d3e779ee3f34f276"'
name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config
recommenderGenerationConfig:
  params:
    minimum_observation_period: P90D
revisionId: DEFAULT
updateTime: '2022-10-02T22:57:33Z'

REST

Para obtener la configuración del recomendador de IAM de un proyecto, usa el método projects.locations.recommenders.getConfig de la API de Recommender.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER: Es el ID numérico de tu proyecto de Google Cloud.
  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.

Método HTTP y URL:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene la configuración del recomendador de IAM del proyecto. Por ejemplo, podría verse de la siguiente manera:

{
  "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "minimum_observation_period": "P90D"
    }
  },
  "etag": "\"d3e779ee3f34f276\"",
  "updateTime": "2022-10-02T22:57:33Z",
  "revisionId": "DEFAULT"
}

Comprende los detalles de configuración

El contenido de una configuración depende de para qué recommender se usa. Las configuraciones del recomendador de IAM tienen los siguientes componentes (en cualquier orden):

  • name: Es el identificador de la configuración, en el formato projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config.
  • recommenderGenerationConfig: Son los parámetros a los que El recomendador de IAM usa cuando genera recomendaciones. Este campo contiene los siguientes parámetros:

    • minimum_observation_period: La cantidad de días de de uso de permisos que el recomendador de IAM necesita y generar recomendaciones de roles.
  • etag: Es un identificador del estado actual de una configuración. para evitar actualizaciones simultáneas. Cada vez que cambia la configuración, se asigna un valor de ETag nuevo.

  • updateTime: Es la marca de tiempo de la hora más reciente en la que configuración se actualizó en formato UTC (RFC 3339).

  • revisionId: Solo salida. Un identificador para la revisión actual de la configuración. Este valor se actualiza cada vez que se modifica la configuración editadas.

Edita tu configuración

Edita tu configuración para cambiar la rapidez con la que se generan las recomendaciones para tu proyecto.

gcloud

Para editar la configuración del recomendador de IAM de un proyecto, usa el comando gcloud beta recommender recommender-config update.

Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

  • OBSERVATION_PERIOD: Es el período mínimo de observación que deseas establecer. Utiliza uno de los siguientes valores: P30D (30 días), P60D (60 días) o P90D (90 días)
  • ETAG: La ETag actual de la configuración, que puedes encontrar en obtén la configuración actual y copia el valor del el campo etag de la respuesta.
  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • Guarda el siguiente código en un archivo llamado request.json.

    {
      "params": {
        "minimum_observation_period": "OBSERVATION_PERIOD"
      }
    }

    Ejecuta el comando gcloud beta recommender recommender-config update:

    Linux, macOS o Cloud Shell

    gcloud beta recommender recommender-config update \
    google.iam.policy.Recommender \
    --etag="ETAG" \
    --project="PROJECT_ID" \
    --location="global" \
    --config-file="request.json"

    Windows (PowerShell)

    gcloud beta recommender recommender-config update `
    google.iam.policy.Recommender `
    --etag="ETAG" `
    --project="PROJECT_ID" `
    --location="global" `
    --config-file="request.json"

    Windows (cmd.exe)

    gcloud beta recommender recommender-config update ^
    google.iam.policy.Recommender ^
    --etag="ETAG" ^
    --project="PROJECT_ID" ^
    --location="global" ^
    --config-file="request.json"

    La respuesta contiene la configuración actualizada. Por ejemplo, podría verse de la siguiente manera:

    etag: '"2549af0942332910"'
    name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config
    recommenderGenerationConfig:
      params:
        minimum_observation_period: P60D
    revisionId: 288c60eb
    updateTime: '2022-10-05T21:42:21.069170Z'
    

REST

Para editar la configuración del recomendador de IAM de un proyecto, usa el método projects.locations.recommenders.updateConfig de la API de Recommender.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER: El el ID numérico del proyecto de Google Cloud.
  • OBSERVATION_PERIOD: Es el período de observación mínimo que deseas establecer. Usa uno de los siguientes valores: P30D (30 días), P60D (60 días) o P90D (90 días).
  • ETAG: Es el etag actual de la configuración, que puedes encontrar si obtienes la configuración actual y copias el valor del campo etag de la respuesta. Usa barras inversas para escapar las comillas, por ejemplo, "\"df7308cca9719dcc\"".
  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • Método HTTP y URL:

    PATCH https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config

    Cuerpo JSON de la solicitud:

    {
      "name": "projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "OBSERVATION_PERIOD"
        }
      },
      "etag": "ETAG"
    }
    

    Para enviar tu solicitud, expande una de estas opciones:

    La respuesta contiene la configuración actualizada. Por ejemplo, podría verse de la siguiente manera:

    {
      "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "P60D"
        }
      },
      "etag": "\"2549af0942332910\"",
      "updateTime": "2022-10-05T21:26:52.127512Z",
      "revisionId": "b5fc0053"
    }
    

¿Qué sigue?