Tutoriel : Obtenir votre consommation avec un utilisateur EIM

En termes de gouvernance, une bonne pratique peut être de créer un utilisateur EIM dont le seul droit est de lire les informations de consommation de votre compte. De cette façon, vous pouvez donner accès à votre consommation à une personne ou un script dédié sans pour autant avoir à leur donner d’autres droits sur le reste de votre compte.

D’abord, vous devez utiliser votre compte racine pour créer et configurer l’utilisateur EIM.

Ensuite, l’autre personne ou script doit configurer son OSC CLI pour utiliser les identifiants de l’utilisateur EIM.

(Compte racine) Créer et configurer l’utilisateur EIM

  1. Créez l’utilisateur EIM :

    $ osc-cli eim CreateUser --profile "default" \
      --UserName "readconsumption-user"

    Pour en savoir plus sur cette commande, voir CreateUser dans la documentation de l’API EIM.

  2. Créez une politique autorisant uniquement l’action ReadConsumptionAccount :

    $ osc-cli eim CreatePolicy --profile "default" \
      --PolicyName "readconsumption-policy" \
      --PolicyDocument '{ \
          "Statement": [ \
            { \
              "Action": "api:ReadConsumptionAccount", \
              "Resource": ["*"], \
              "Effect": "Allow" \
            } \
          ] \
        }'

    Cette commande renvoie plusieurs éléments de réponse, dont un élément Arn (par exemple, "arn:aws:iam::123456789012:policy/readconsumption-policy").

    Pour en savoir plus sur cette commande, voir CreatePolicy dans la documentation de l’API EIM.

  3. Attachez la politique à l’utilisateur EIM :

    $ osc-cli eim AttachUserPolicy --profile "default" \
      --PolicyArn "arn:aws:iam::123456789012:policy/readconsumption-policy" \
      --UserName "readconsumption-user"

    Pour en savoir plus sur cette commande, voir AttachUserPolicy dans la documentation de l’API EIM.

  4. Créez une access key pour l’utilisateur EIM :

    $ osc-cli eim CreateAccessKey --profile "default" \
      --UserName "readconsumption-user"

    Cette commande renvoie plusieurs éléments de réponse, dont un élément AccessKeyId et un élément SecretAccessKey.

    Pour en savoir plus sur cette commande, voir CreateAccessKey dans la documentation de l’API EIM.

(Utilisateur EIM) Configurez votre profil OSC CLI

  1. Dans le fichier .osc_sdk/config.json, configurez un profil pour utiliser l’access key et la secret key de l’utilisateur EIM :

    .osc_sdk/config.json
    {
       "readconsumption-user": {
          "access_key": "AAAAAAAAAAAAAAAAAAAA",
          "secret_key": "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB",
          "host": "outscale.com",
          "https": true,
          "method": "POST",
          "region": "eu-west-2"
       }
    }
  2. L’utilisateur EIM peut maintenant lancer l’action ReadConsumptionAccount avec OSC CLI :

    $ osc-cli api ReadConsumptionAccount --profile "readconsumption-user" \
      --FromDate 2022-06-01 \
      --ToDate 2022-07-01 \
      --Overall False

    Le paramètre Overall spécifie s’il faut renvoyer une consommation consolidée :

    • Si False, renvoie uniquement la consommation du compte qui envoie cette commande.

    • Si True et la commande est envoyée depuis un paying account, renvoie la consommation consolidée du paying account et de tous les comptes liés.

    • Si True et la commande est envoyée depuis un compte lié, ne renvoie rien.

    Dans tous les cas, la consommation est celle d’un ou plusieurs comptes et non celle de l’utilisateur EIM. La notion de consommation d’un utilisateur EIM n’a pas de sens, car les ressources Cloud ne sont pas allouées aux utilisateurs EIM mais aux comptes eux-mêmes.

    EIM doit être considéré comme un ensemble d’identifiants auxquels on autorise à effectuer tels ou tels appels API sur un compte spécifique. Pour en savoir plus, voir À propos des utilisateurs EIM.

    Pour en savoir plus sur cette commande, voir Obtenir des informations sur la consommation de vos ressources > OSC CLI.

Pages connexes