1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS IAM Key Rotation Runbookを試してみる(概要〜準備編)

Posted at

はじめに

前提としてアクセスキーは可能な限り持つべきではないと思うのですが、AWSを使う上で仕方がなくアクセスキーを使った認証を行うケースがあると思います。

アクセスキーはご存知の通り漏洩リスクや期限切れによる対応が必要で、手動でやると面倒だったり先程のリスクに晒される可能性があります。

例えば複数のメンバーアカウントを管理している場合では、全てのアカウントの運用状況を管理・把握出来ていればいいのですが、メンバーアカウント事に運用を個別に任せている場合だとアクセスキーの管理が属人的になったり、ガバナンスが効かない状態になる可能性があり、よりセキュリティのリスクが高まると思います。

今回検証導入しようと思っているAWS社から提供されているAWS IAM Key Rotation Runbookは自動でキー・ローテーション・ソリューションをデプロイ、構成、検証、トラブルシューティングする方法に関するRunbookです。

このテンプレートは、毎日Organizaions配下のメンバーアカウントをスキャンし、AWS IAMユーザーのアクセスキーを90日ごとに自動的にローテーションし、新しいアクセスキーをAWS Secrets Manager内のシークレットに保存してくれます。

シークレットを保存する先は2パターン選べるようで下記図はメンバーアカウント側のシークレットに保存するパターンとなります。(もう一つのパターンはマネージメントアカウント側のシークレットに保存)

image.png
※画像引用 https://github.com/aws-samples/aws-iam-access-key-auto-rotation

今回検証しようと思っているのはこちらのパターンで、このランブックにかかるコストって多分ちょっとのコストだと思うんですが、各メンバーアカウント側にコストを持ってもらいたいという意図でこちらのパターンの検証を進めて行きたいと思っています。(StackSetsを利用するので事前に有効化が必要です)

準備

では早速準備に取り掛かりたいと思います。まずこちらのマニュアルをベースに進めて行きます。

Required Files
image.png
※画像引用 https://github.com/aws-samples/aws-iam-access-key-auto-rotation

Deployment

マニュアルによると、Deployについては下記手順が必要なようです。

  1. Upload Project Files to S3 Bucket ←今日はこれ
  2. Deploy the main IAM Key Rotation Solution as a CloudFormation Stack
  3. Deploy IAM Assumed Roles CloudFormation Template as a StackSet
  4. Deploy the List Account Role in the Central/Management Account
  5. Deploy the VPC Endpoint template if you are running Lambda in VPC

今回は上記の1.について実施していきます。(残りは次回以降)

Upload Project Files to S3 Bucket

STEP:1 ZIPファイルのダウンロード
上記ファイルが必要なので、まずgithubのリポジトリから一旦ローカルにZipファイルをダウンロードして解凍まで行います。

STEP:2 S3バケットの作成
次にマネコンからS3バケットを作成。バケット名は適当にユニークかつ分かりやすいもので。
image.png

STEP:3 フォルダの作成
先ほど作ったバケットにフォルダを作成していきます。
ここで大事な事は、作成したバケットのフォルダー構造が下記の様になっていないと駄目らしい。

IMPORTANT: Make sure all files are in the ‘asa/asa-iam-rotation’ folder structure.

image.png

STEP:4 ASAファイルのアップロード
先ほど作ったバケットにASA関連ファイルのフォルダ3つ(急にASAって出てきたけど、このランブックの事をASAって呼ぶんかいな?)をアップロードします。(DocsとかTest Unitsとかのフォルダは不要)
・CloudFormation
・Lambda
・template
image.png

image.png
一旦ここまでで前準備は完了です!

おわりに

ここまでは特に問題なく進んでます。このマニュアルが英語な上に、少し読みづらく(内容も少し古い?)なかなか苦労しそうですが、時間を見つけ進めていければと思います。今回ご紹介したASAはセキュアなシステム環境を構築するのに必要だと思いますので、どなたかのご参考になれば幸いです。引き続きよろしくお願い致します。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?