💰

IAM ユーザーに AWS の利用料の請求情報を閲覧する権限を与える

2023/02/18に公開

はじめに

この記事は、「毎月のAWS利用料を、マネジメントコンソールから印刷する必要があるので、毎月ルートユーザーでログインしている・・・」という方向けの記事です。

デフォルトの状態では IAM ユーザーは請求情報にアクセスすることができません。そのため、請求情報のページを確認して、CSV や 印刷を行うためにはルートユーザーで AWS アカウントにログインする必要があります。

ですが、ルートユーザーは強力な権限を持っているため、極力使用しないことが推奨されています。

https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_root-user.html

強くお勧めしているのは、日常的なタスクには、それが管理者タスクであっても、ルートユーザーを使用しないことです。ベストプラクティスとして、ルートユーザーの認証情報を保護し、日常的なタスクには使用しないようにします。ルートユーザーの認証情報は、少数のアカウントおよびサービス管理タスクの実行にのみ使用します。

でも請求情報は見なくちゃいけないし・・・という場合にオススメなのが、IAM ユーザーに請求情報へのアクセスを許可することです。以下の手順でIAM ユーザーによる請求情報へのアクセスを有効化し、IAM ユーザーが請求情報を閲覧できるようにしてみましょう。

設定手順

ルートユーザーでアカウント画面を開く

  • ルートユーザーで AWS アカウントにログインし、マネジメントコンソールを開く
  • 画面右上のアカウント名を押し、[アカウント] を選ぶ

認証情報へのアクセス

  • 画面をスクロールし [IAM ユーザー/ロールによる請求情報へのアクセス] の [編集] を押す

  • [IAM アクセスのアクティブ化] にチェックを入れて [更新] を押す

  • IAM ユーザー/ロールによる請求情報へのアクセスはアクティブ化されています。と表示されたら設定完了

IAM ユーザーから請求情報を確認してみる

  • IAM ユーザーでログインしなおし、請求ダッシュボードを開くと、請求情報を参照できていることがわかります

おわりに

上記の手順を実施することで、IAM ユーザーから請求情報を確認することができるようになりました。
実際の運用では、請求情報を利用する方に権限を絞った IAM ユーザーを払い出し、請求情報だけ閲覧できるように制限するのが望ましいです。

たとえば、経理の方が請求情報を毎月取得する、という場合には、経理の方用にIAM ユーザーをひとつ払い出し、Billing ポリシーだけアタッチするようにすると、本番環境や開発環境のリソースへのアクセスを制限したまま、請求情報だけ確認していただくことが可能になります。

請求情報を取得するためにルートユーザーを使ってしまっている・・・という場合は、IAM ユーザーへの請求情報アクセス許可をお試しください!

Discussion