IAM Role 一覧とアタッチされているポリシーをCSVで出力

IAM ロールの一覧とそれにアタッチしているポリシーの一覧を作る必要があり、
手動だと手間がかかるので、Python(boto3)を使ってCSVで出力できるようにしました。

やったこと

PythonでIAM Roleの一覧とアタッチされているIAMポリシーをCSVで出力する。

【CSV カラム】

  • IAM Role名
  • IAM Role ARN
  • Inline Policy
  • Managed Policy

【処理の流れ】

  1. IAM Roleの一覧を取得
  2. . 取得したIAM Role名からアタッチされているIAM ポリシーを取得しDF化
  3. DFをCSVで出力

以下はDFで出力したときの表です。 f:id:ykoomaru:20200211224342p:plain

ちなみインラインポリシーとマネージドポリシーで取得するAPIが異なるので注意が必要です。

  • インラインポリシー: list_role_policies
  • マネージドポリシー (カスタマーマネージドポリシーを含む): list_attached_role_policies

スクリプト

aws/create-iamrole-list.py at master · koonagi/aws · GitHub