deekayen.iam_access_simulation

AWS IAM アクセスシミュレーション

CI

IAM ユーザーとロールが指定された ARN に対して様々な IAM アクションを実行するアクセスをシミュレートします。これにより、監査人が尋ねたときに、どのユーザーやロールが S3 バケットや KMS キーにアクセスできるかがわかります。

このシミュレーションは、AWS アカウント内のすべてのユーザーとロールを収集し、その後 resources_to_test 変数で定義した ARN に対して指定されたアクションをテストします。ユーザーまたはロールのみをテストしたい場合は、フィルタリングのためにタスクに割り当てられた user または role タグを使用して不要なものを省略できます。

IAM ユーザーとロールのアクセスを AWS CLI simulate principal policy 機能を使ってテストします。

aws iam simulate-principal-policy \
  --policy-source-arn <user/role arn> \
  --resource-arns <resource arn> \
  --action-names <action>

ロール変数

resources_to_test: []

例プレイブック

---

- hosts: localhost
  connection: local
  gather_facts: no

  vars:
    resources_to_test:
      - action: s3:GetObject
        resource: arn:aws:s3:::deekayen-123456789000-secret-bucket
      - action: kms:Decrypt
        resource: arn:aws:kms:us-east-1:123456789000:key/1234abab-1e2c-3a4b-9ba8-1234567890ab

  roles:
    - deekayen.iam_access_simulation

シミュレーションの結果は、プレイブック実行の最後にコンソールに表示されます。

TASK [iam_access_simulation : シミュレーション結果を表示します。] **********************
ok: [localhost] => {
    "msg": [
        "ユーザー deekayen は arn:aws:s3:::deekayen-123456789000-secret-bucket に対する s3:GetObject を許可されています。",
        "ロール ec2-instances は arn:aws:s3:::deekayen-123456789000-secret-bucket に対する s3:GetObject を許可されています。",
        "ユーザー deekayen は arn:aws:kms:us-east-1:123456789000:key/1234abab-1e2c-3a4b-9ba8-1234567890ab に対する kms:Decrypt を許可されています。",
        "ロール ec2-instances は arn:aws:kms:us-east-1:123456789000:key/1234abab-1e2c-3a4b-9ba8-1234567890ab に対する kms:Decrypt を許可されています。"
    ]
}
[

プレイの要約 *********************************************************************
localhost                  : ok=327  changed=0    unreachable=0    failed=0    skipped=324  rescued=0    ignored=0

プレイブックの実行時間は 0 日 0 時間 3 分 14 秒

要件

制御マシンには boto と AWS CLI が必要です。

依存関係

collections:
  - amazon.aws
  - community.general

ライセンス

BSD-3-Clause

プロジェクトについて

Simulate the access of AWS IAM users and roles performing various actions against any ARN.

インストール
ansible-galaxy install deekayen.iam_access_simulation
ライセンス
bsd-3-clause
ダウンロード
14.7k
所有者
My initials spelled as a word - pronounced /dEE-kAY-En/