Configurer la génération de recommandations de rôles

En modifiant la configuration de l'outil de recommandation IAM, vous pouvez personnaliser la manière dont vos recommandations de rôle sont générées. Cette page explique comment modifier votre configuration pour modifier la rapidité de génération des recommandations pour votre projet.

Bien que l'outil de recommandation IAM génère des recommandations de rôle pour diverses ressources, vous ne pouvez modifier que la façon dont les recommandations de rôle sont générées pour les projets.

Avant de commencer

Rôles requis

Pour obtenir les autorisations nécessaires pour configurer des recommandations de rôles IAM, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet dont vous souhaitez configurer le recommendeur IAM:

  • Afficher les détails de la configuration : Lecteur de l'outil de recommandation IAM (roles/recommender.iamViewer)
  • Modifiez votre configuration : Administrateur de l'outil de recommandation IAM (roles/recommender.iamAdmin)

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ces rôles prédéfinis contiennent les autorisations requises pour configurer les recommandations de rôles IAM. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour configurer les recommandations de rôles IAM:

  • Afficher les détails de la configuration : recommender.iamPolicyRecommenderConfig.get
  • Modifiez votre configuration : recommender.iamPolicyRecommenderConfig.update

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Afficher votre configuration actuelle

Consultez votre configuration actuelle pour voir combien de jours de données d'utilisation des autorisations l'outil de recommandation IAM attend avant de générer des recommandations de rôle.

Vous pouvez afficher la configuration à l'aide de gcloud CLI ou de l'API REST.

gcloud

Pour obtenir la configuration du recommendeur IAM d'un projet, utilisez la commande gcloud beta recommender recommender-config describe.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles que my-project.

Exécutez la commande gcloud beta recommender recommender-config describe:

Linux, macOS ou 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 réponse contient la configuration de l'outil de recommandation IAM du projet. Par exemple, il peut ressembler à ceci:

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

Pour obtenir la configuration du recommender IAM d'un projet, utilisez la méthode projects.locations.recommenders.getConfig de l'API Recommender.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_NUMBER: ID numérique de votre projet Google Cloud.
  • PROJECT_ID : ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles que my-project.

Méthode HTTP et URL :

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

Pour envoyer votre requête, développez l'une des options suivantes :

La réponse contient la configuration de l'outil de recommandation IAM du projet. Par exemple, il peut ressembler à ceci:

{
  "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"
}

Comprendre les détails de la configuration

Le contenu d'une configuration dépend du recommender auquel elle est destinée. Les configurations de l'outil de recommandation IAM incluent les composants suivants, mais pas nécessairement dans cet ordre:

  • name: identifiant de la configuration, au format projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config.
  • recommenderGenerationConfig: paramètres utilisés par l'outil de recommandation IAM lors de la génération de recommandations. Ce champ contient les paramètres suivants:

    • minimum_observation_period: nombre de jours de données d'utilisation des autorisations dont l'outil de recommandation IAM a besoin pour commencer à générer des recommandations de rôle.
  • etag: identifiant de l'état actuel d'une configuration, utilisé pour empêcher les mises à jour simultanées. Chaque fois que la configuration change, une nouvelle valeur ETag est attribuée.

  • updateTime: code temporel de la dernière mise à jour de la configuration, au format UTC (RFC 3339).

  • revisionId: sortie uniquement. Identifiant de la révision actuelle de la configuration. Cette valeur est mise à jour chaque fois que la configuration est modifiée.

Modifier votre configuration

Modifiez votre configuration pour modifier la rapidité de génération des recommandations pour votre projet.

gcloud

Pour modifier la configuration du recommendeur IAM d'un projet, utilisez la commande gcloud beta recommender recommender-config update.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • OBSERVATION_PERIOD: période d'observation minimale que vous souhaitez définir. Utilisez l'une des valeurs suivantes: P30D (30 jours), P60D (60 jours) ou P90D (90 jours).
  • ETAG: etag actuel de la configuration, que vous pouvez obtenir en obtenant la configuration actuelle et en copiant la valeur du champ etag de la réponse.
  • PROJECT_ID : ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles que my-project.
  • Enregistrez le code suivant dans un fichier nommé request.json :

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

    Exécutez la commande gcloud beta recommender recommender-config update:

    Linux, macOS ou 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 réponse contient la configuration mise à jour. Par exemple, il peut ressembler à ceci:

    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

Pour modifier la configuration du recommender IAM d'un projet, utilisez la méthode projects.locations.recommenders.updateConfig de l'API Recommender.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_NUMBER: ID numérique de votre projet Google Cloud.
  • OBSERVATION_PERIOD: période d'observation minimale que vous souhaitez définir. Utilisez l'une des valeurs suivantes: P30D (30 jours), P60D (60 jours) ou P90D (90 jours).
  • ETAG: etag actuel de la configuration, que vous pouvez obtenir en obtenant la configuration actuelle et en copiant la valeur du champ etag de la réponse. Utilisez des barres obliques inverses pour échapper les guillemets (par exemple, "\"df7308cca9719dcc\"").
  • PROJECT_ID : ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles que my-project.
  • Méthode HTTP et URL :

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

    Corps JSON de la requête :

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

    Pour envoyer votre requête, développez l'une des options suivantes :

    La réponse contient la configuration mise à jour. Par exemple, il peut ressembler à ceci:

    {
      "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"
    }
    

Étape suivante