【Security Hub修復手順】[StepFunctions.1]Step Functions ステートマシンではログ記録が有効になっている必要があります
皆さん、お使いのAWS環境のセキュリティチェックはしていますか?
当エントリでは、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介します。
本記事の対象コントロール
[StepFunctions.1] Step Functions ステートマシンではログ記録が有効になっている必要があります
[StepFunctions.1] Step Functions state machines should have logging turned on
前提条件
本記事はAWS Security Hubで「AWS基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容です。 AWS Security Hubの詳細についてはこちらのブログをご覧ください。
コントロールの説明
このコントロールは、AWS Step Functions ステートマシンでログ記録が有効になっているかどうかを確認します。
ログ記録が無効の場合、コントロールは失敗します。
Step Functionsではステートマシンの実行履歴をログとしてAmazon CloudWatch Logsに保存できます。 本番環境では監査等でシステム要件上必要であれば取得を検討すべきですが、検証環境では必須ではありません。そのため、環境によってはコントロールの無効化も検討してください。
また、Step Functionsでは「標準ワークフロー」と「Express ワークフロー」の2種類があり、各ワークフローには以下の特徴があります。
- 「Express ワークフロー」では、ログ記録を有効にしないと各ステップでの実行履歴や結果を確認することが出来ません。
- 「標準ワークフロー」ではログ記録無効の状態でもStep FunctionsのAWSマネジメントコンソールから実行履歴や結果を確認することが出来ます。
そのため使用するワークフロー種別によってログ記録を有効にすべきかは変わってきます。例えば、「Express ワークフロー」かつ本番環境の場合等はログ記録を有効にすべきです。
ログレベルはALL
、ERROR
、FATAL
、OFF
があり、ログレベルによって出力されるイベントタイプが異なります。OFF
に設定すると、イベントタイプはログに記録されません。ALL
に設定すると、全てのイベントタイプは、ログに記録されます。
ALL
、ERROR
、FATAL
のログレベルに対して、出力されるイベントタイプは以下ドキュメントまとめられていますので、ご参照ください。
OFF
以外のログレベルであれば、本コントロールは成功します。
修正手順
1 対象のリソースの確認方法
- AWSマネージメントコンソールにログインし、AWS 基礎セキュリティのベストプラクティス v1.0.0にて、「StepFunctions.1」を検索します。タイトルを選択します。
- リソースの欄から失敗しているリソースを確認できます。
2 ステークホルダーに確認
ステークホルダー(リソースの作成者や管理している部署などの関係者)に以下の条件を満たせているか確認します。
- ステートマシンのログを有効にしてよいか確認する
- 不要の場合、ステータスを
抑制済み
とする。
- 不要の場合、ステータスを
3 ステートマシンのログを有効
- Step Functionsのステートマシン一覧から、対象を選択し、[編集]します。
- [設定]からログ記録に遷移し、以下を設定します。
- ログレベル
ALL
、ERROR
、FATAL
のいずれかを選択する実行データを含める
は、どちらでもよい
- CloudWatch ロググループ
新しいロググループを作成
、既存のロググループを選択
、既存のロググループ ARN を入力
のいずれかを選択する
- ログレベル
- 選択後、[保存]するとログ記録の有効化対応は完了です。続いて、ログが保存されるか確認します。[実行]をクリックし、別タブに遷移します。
- [実行を開始]をクリックし、実行します。入力の部分は各々のステートマシンに合わせてください。
- ステートマシンの[ログ記録]タブから[CloudWatch Logs]をクリックすると、ロググループに遷移できます。
- ロググループにログが記録されていることを確認します。
これでログ記録の有効にし、ログが記録されていることが確認できました。
最後に
今回は、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介しました。
コントロールを修正して、お使いのAWS環境のセキュリティをパワーアップさせましょう!
最後までお読みいただきありがとうございました!どなたかのお役に立てれば幸いです。
以上、平井でした!