InfrastructureCompte de serviceVérifié le 25 août 2026
Lutril a besoin d’un compte de service portant un unique rôle personnalisé au niveau de l’organisation pour inventorier chaque compte de service et chaque clé Google Cloud, indiquer la date de dernière utilisation de chacun et vous permettre de désactiver les comptes dormants. Pas d’empilement de rôles prédéfinis : le rôle personnalisé ci-dessous est la liste complète des permissions, vérifiée en le créant. Lutril ne supprime jamais de compte de service, ne crée, ne renouvelle ni ne supprime jamais de clé, et ne modifie jamais les stratégies IAM.
Remédiation (facultatif) : iam.serviceAccounts.disable, iam.serviceAccounts.enable. Sans elles, l’inventaire fonctionne et le bouton Désactiver signale une erreur de permission.
Accès just-in-time (facultatif) : resourcemanager.projects.setIamPolicy. Sert uniquement à ajouter et retirer une autorisation IAM limitée dans le temps par demande d’accès approuvée.
Les valeurs Last used viennent de Policy Analyzer, qui agrège les authentifications par jour (heure du Pacifique). Google indique que les événements très récents peuvent manquer ; un décalage de plusieurs jours est courant. Google ne suit pas non plus les requêtes authentifiées par clé API liée, par clé HMAC Cloud Storage, ni les API Google hors Cloud (par exemple la délégation domain-wide vers Workspace, utilisée par GAM) : ces comptes peuvent apparaître jamais utilisés alors qu’ils sont actifs. C’est pourquoi Lutril traite l’absence d’authentification observée comme un signal d’alerte, jamais comme une preuve de non-usage.
Étapes de configuration
1
Créez un compte de service pour Lutril dans un projet dédié. Ce projet devient le projet de quota des appels Policy Analyzer, gardez-le donc séparé de vos charges de travail. Ouvrez le compte, allez dans Clés, choisissez Ajouter une clé, puis Créer une clé au format JSON. Le fichier se télécharge une seule fois et ne pourra pas être téléchargé à nouveau ; vous le collerez dans Lutril à l’étape 5.
Activez quatre API dans ce projet uniquement : Cloud Asset, IAM, Cloud Resource Manager et Policy Analyzer. Lutril attribue chaque appel au projet du compte de service, Policy Analyzer n’a donc jamais besoin d’être activé dans les projets analysés.
Remplacez <LUTRIL_PROJECT_ID> par l’ID du projet dans lequel vous avez créé le compte de service.
3
Créez le rôle personnalisé au niveau de l’organisation depuis Cloud Shell. ORG_ID est l’identifiant numérique de l’organisation, visible dans le sélecteur d’organisation ou via gcloud organizations list. Vous préférez la console ? Ouvrez IAM et administration, puis Rôles avec l’organisation sélectionnée, cliquez sur Créer un rôle et ajoutez les mêmes permissions.
Le rôle est en lecture seule, à l’exception des deux dernières permissions. Retirez iam.serviceAccounts.disable et iam.serviceAccounts.enable si vous souhaitez que Lutril observe sans jamais remédier.Ouvrir les rôles
4
Attribuez le rôle au compte de service Lutril sur l’organisation. Une seule attribution au niveau de l’organisation couvre tous les dossiers et projets, y compris ceux créés après aujourd’hui.
<LUTRIL_SA_EMAIL> est l’adresse du compte créé à l’étape 1, se terminant par .iam.gserviceaccount.com.
5
Facultatif, pour l’accès just-in-time. Quand une demande d’accès à un projet est approuvée, Lutril accorde à la personne un rôle IAM limité dans le temps sur ce projet (une condition IAM sur request.time) et le retire à l’échéance. Cela demande une permission d’écriture sur le même rôle.
Shell
gcloud iam roles update lutrilNhiGovernance \
--organization=<ORG_ID> \
--add-permissions=resourcemanager.projects.setIamPolicy
Attribuée au niveau de l’organisation, setIamPolicy permet au compte de service Lutril d’accorder n’importe quel rôle sur n’importe quel projet. Mitigations : n’attribuez le rôle que sur le dossier qui contient les projets demandables, ou ajoutez une politique de refus IAM qui bloque resourcemanager.projects.setIamPolicy pour roles/owner, roles/editor, roles/iam.securityAdmin et roles/resourcemanager.projectIamAdmin quand le principal est le compte de service Lutril. Lutril refuse lui-même d’accorder Owner, Editor ou Viewer (ils ne peuvent pas porter de condition temporelle).
6
Dans Lutril, ouvrez Paramètres, puis Intégrations, puis Google Cloud. Collez le JSON du compte de service. Renseignez l’Organization ID pour une analyse de toute l’organisation (recommandé) ou un Project ID pour analyser un seul projet. Conservez le seuil de clé obsolète à 90 jours sauf si votre politique en dispose autrement. Activez la lentille d’impersonation pour lister qui peut usurper chaque compte de service ; elle coûte une lecture IAM supplémentaire par compte.
7
Ouvrez Identités non humaines et cliquez sur Actualiser. La synchronisation s’exécute en arrière-plan et prend quelques minutes sur les grandes organisations ; la page signale toute API ou permission manquante par un avertissement. Une dernière utilisation Inconnue partout signifie que Policy Analyzer n’est pas activé dans le projet Lutril ou que ses permissions manquent. Les projets marqués Non synchronisé n’ont pas les permissions resourcemanager. Une désactivation qui échoue avec une erreur de permission signifie que le rôle n’a pas iam.serviceAccounts.disable. Les limites de débit (429) sont réessayées automatiquement et les données déjà connues sont conservées.