概要
AWS WAF v2(新プラン)でのCredential Storeの設定方法を記載します。
登録方法は3つあります。
新プランの場合、LegacyあるいはAdvancedのRuleポリシーを選択可能ですが、どちらの場合でも必要な権限は同じです。
付与する権限の詳細については、必要な権限 (AWS WAF v2、新プラン) をご参考ください。
注意点
- 手順が3つありますが、そのうち「IAM Roleを新規作成して登録する(CloudFormationを使用して新規作成する)」方法では以下の注意点があります。
- CloudFormationを実行するリージョンは、ap-northeast-1(東京)リージョンに固定されています。
- 登録方法のうち、IAM Roleを使用する方法(AssumeRole方式)を推奨します。
- 既存のIAM Userを登録する(AWSマネージメントコンソールにてIAMユーザーを先に作成し、キーを登録する)方法はアクセスキー・シークレットキーを登録する形となるため、非推奨ですが使用可能です。「登録」ボタンは無効にはなっていないため、この方法をご利用される場合は「登録」ボタンを押下して手順通りに進めてください。
手順
IAM Roleを新規作成して登録する(CloudFormationを使用して新規作成する)
- WafCharmコンソールにログインする
- 左側のメニューからCredentialをクリックする
- [IAM Roleを新規作成して登録する] の下にある [登録] ボタンをクリックする
- [事前確認] にて操作用のAWSアカウントの確認を行い、[次のステップへ] をクリックする
CloudFormationのStack作成権限、IAM Roleの作成権限のないAWSアカウントの場合、以降のステップで失敗しますので、事前にご確認ください。
- 使用するAWSアカウントのIDと、これから作成するIAMロールの名前を入力する
IAMロールの名前は任意です。CloudFormationで新規作成するIAMロールの名前になりますので、わかりやすい名前をおすすめします。
- [テンプレート生成] をクリックする
- [以下に発行されるURLよりAWSにて設定を完了してください] の下に記載されているURLをクリックする
URLはリンクになっているため、クリックするとAWSマネージメントコンソール上でCloudFormationが開きます。
- AWSマネジメントコンソールが開くので、以下の項目にチェックをする
I acknowledge that AWS CloudFormation might create IAM resources with custom names.
- Create stackをクリックする
- Stackの作成が完了するのを待つ
- Create completeとなったら、IAMロールが作成されていることを確認する
- WafCharmコンソールに戻って、検証ボタンをクリックする
- 「検証OK」と返ってきたら、次のステップに進む
- Credential Storeの名前を確認する
IAMロールの名前が自動で入力されます。このままでよければ次に進みます。変更したい場合は、任意の値に変更してから次に進んでください。
- [設定完了] をクリックする
「Credentialの新規登録が完了しました。」というメッセージが表示されたら登録完了です。[Credential一覧へ] ボタンから、登録したクレデンシャル情報の一覧を確認できます。
既存のIAM Roleを登録する(AWSマネージメントコンソールにてIAMロールを先に作成し、登録する)
- AWSマネージメントコンソールにログインする
- IAMダッシュボードを開く
- 左のメニューから [Roles] をクリックする
- Rolesの画面を開いたら、右上の [Create role] ボタンをクリックしロールを作成する
- [Select trusted entity] にて、AWS Accountを選択する
[An AWS Account] の箇所では、「This account (アカウントID)」を選択してください。Optionは変更不要です。
※ロールの作成が完了後、WafCharmから発行された信頼ポリシーを使用する必要がありますので、後半の手順で信頼するアカウントは正しいものに変更されます。
- [Permissions policies] にて、必要な権限を追加する
AWSWAFFullAccess
、AmazonS3ReadOnlyAccess
、CloudWatchReadOnlyAccess
- 次の確認画面で任意のRole nameを入力し、指定した内容を確認したらCreate roleボタンをクリックする
この後の手順で信頼ポリシーを更新します。「Step 1: Select trusted entities」以下の内容については、現時点では自分のAWSアカウントIDが記載されている状態で問題ありません。
- Rolesの画面に戻ったら、先ほど作成したロールの名前をクリックして詳細画面を表示する 後ほど、WafCharmコンソール上で提供される信頼ポリシーを設定しますので、画面を開いたままにしてください。
- WafCharmコンソールにログインする
- 左側のメニューからCredentialをクリックする
- [既存のIAM Roleを登録する] の下にある [登録] ボタンをクリックする
- [IAM Roleの信頼ポリシーを生成する] をクリックする
- [コピー] ボタンをクリックし、信頼ポリシーをコピーする
- AWSマネージメントコンソールに戻り、先ほど作成したIAMロールの[Trust relationships] タブをクリックする
- [Edit trust policy] ボタンをクリックする
- [Edit trust policy] 以下に、先ほどクレデンシャルを登録した際に表示された信頼ポリシーを貼り付ける
- [Update policy] ボタンをクリックする
- IAMロールのARNをコピーする
- WafCharmコンソールに戻り、 [IAM RoleのARNを入力し、「検証」ボタンを押下してください。] 以下の入力欄にARNを貼り付ける
- [検証] ボタンをクリックする
- [検証] ボタンをクリックし、 [検証OK] と表示されることを確認したら、次のステップへ進む
- [登録] 画面にてCredential Store名を入力する
「Credentialの新規登録が完了しました。」というメッセージが表示されたら登録完了です。[Credential一覧へ] ボタンから、登録したクレデンシャル情報の一覧を確認できます。
既存のIAM Userを登録する(AWSマネージメントコンソールにてIAMユーザーを先に作成し、キーを登録する)
- AWSマネージメントコンソールにログインする
- IAMダッシュボードを開く
- 左のメニューから [Users] をクリックする
- Usersの画面を開いたら、右上の [Add users] ボタンをクリックしユーザーを作成する
- [User name] を入力する
- [Create group] をクリックする
すでにグループが存在する場合には、[User groups] から選択し、手順10に進んでください。
- [User group name] を入力する
- [Permissions policies] にて、必要な権限を追加する
AWSWAFFullAccess
、AmazonS3ReadOnlyAccess
、CloudWatchReadOnlyAccess
- [Create user group] をクリックし、作成したユーザーグループを選択する
- [Next] をクリックする
- [Create user] をクリックする
- 作成したユーザーの名前をクリックする
- [Security credentials] タブをクリックする
- [Access keys] にてアクセスキーを作成する
- アクセスキーとシークレットキーをコピーする
アクセスキーとシークレットキーは、この後の手順で使用できるようにしておいてください。
必要に応じて [Download .csv file] からCSVファイルをダウンロードしてください。
- WafCharmコンソールにログインする
- 左側のメニューからCredentialをクリックする
- [既存のIAM Userを登録する] の下にある [登録] ボタンをクリックする
グレーアウトしていますが、押下可能です。
- [IAM User 権限設定] 以下の [アクセスキーID] と [シークレットアクセスキー] にそれぞれのキーを貼り付ける
- [検証] ボタンをクリックし、 [検証OK] と表示されることを確認する
WafCharmアカウントにて同じアクセスキー・シークレットキーを重複して登録することはできません。重複している場合、エラーが表示されます。もし同じアクセスキー・シークレットキーを再利用したい場合は、登録済みのCredential情報をご利用ください。
- [登録] 画面にてCredential Store名を入力する
- [設定完了] をクリックする
「Credentialの新規登録が完了しました。」というメッセージが表示されたら登録完了です。[Credential一覧へ] ボタンから、登録したクレデンシャル情報の一覧を確認できます。