AWS RDS のログを収集する
パーサーのバージョン: 11.0
このドキュメントでは、Google SecOps フィードを設定して AWS RDS ログを収集する方法について説明します。
詳細については、Google SecOps へのデータの取り込みをご覧ください。
取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。このドキュメントの情報は、取り込みラベル AWS_RDS が付加されたパーサーに適用されます。
始める前に
次の前提条件を満たしていることを確認します。
ログインできる AWS アカウント
グローバル管理者または RDS 管理者
AWS RDS の構成方法
- 既存のデータベースを使用するか、新しいデータベースを作成します。
- 既存のデータベースを使用するには、データベースを選択し、[Modify] をクリックして、[Log exports] を選択します。
- 新しいデータベースを使用するには、データベースを作成するときに [Additional configuration] を選択します。
- Amazon CloudWatch に公開するには、次のログタイプを選択します。
- 監査ログ
- エラーログ
- General log
- Slow query log
- AWS Aurora PostgreSQL と PostgreSQL のログ エクスポートを指定するには、[PostgreSQL log] を選択します。
- AWS Microsoft SQL Server のログ エクスポートを指定するには、次のログタイプを選択します。
- Agent log
- エラーログ
- ログ構成を保存します。
- [CloudWatch] > [Logs] を選択して、収集されたログを表示します。ロググループは、インスタンスからログが使用可能になった後に自動的に作成されます。
ログを CloudWatch に公開するには、IAM ユーザーと KMS 鍵ポリシーを構成します。詳細については、IAM ユーザーと KMS 鍵ポリシーをご覧ください。
サービスとリージョンに基づいて、次の AWS ドキュメントを参照して接続のエンドポイントを特定します。
ロギングソースの詳細については、AWS Identity and Access Management エンドポイントとクォータをご覧ください。
CloudWatch ロギングソースの詳細については、Amazon CloudWatch Logs エンドポイントとクォータをご覧ください。
エンジン固有の情報については、次のドキュメントをご覧ください。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード] > [新しいフィードを追加]
- Content Hub > Content Packs > Get Started
AWS RDS フィードの設定方法
- [Amazon Cloud Platform] パックをクリックします。
- [AWS RDS] ログタイプを見つけます。
- Google SecOps は、アクセスキー ID とシークレット メソッドを使用したログ収集をサポートしています。アクセスキー ID とシークレットを作成するには、AWS でツール認証を構成するをご覧ください。
次のフィールドで値を指定します。
- ソースタイプ: Amazon SQS V2
- キュー名: 読み取り元の SQS キュー名
- S3 URI: バケット URI。
s3://your-log-bucket-name/your-log-bucket-nameは、実際の S3 バケットの名前に置き換えます。
Source deletion options: 取り込みの設定に応じて削除オプションを選択します。
ファイルの最長存続期間: 過去数日間に変更されたファイルを含めます。デフォルトは 180 日です。
SQS キュー アクセスキー ID: 20 文字の英数字の文字列であるアカウント アクセスキー。
SQS キューのシークレット アクセスキー: 40 文字の英数字文字列であるアカウント アクセスキー。
詳細オプション
- フィード名: フィードを識別する値が事前入力されています。
- アセットの名前空間: フィードに関連付けられた名前空間。
- Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
[フィードを作成] をクリックします。
このプロダクト ファミリー内の異なるログタイプに複数のフィードを構成する方法については、プロダクト別にフィードを構成するをご覧ください。
フィールド マッピング リファレンス
このパーサーは、AWS RDS syslog メッセージからフィールドを抽出します。主に、タイムスタンプ、説明、クライアント IP に重点を置いています。grok パターンを使用してこれらのフィールドを識別し、対応する UDM フィールドに入力します。クライアント IP の有無に基づいて、イベントを GENERIC_EVENT または STATUS_UPDATE として分類します。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 |
|---|---|---|
client_ip |
principal.ip |
正規表現 \\[CLIENT: %{IP:client_ip}\\] を使用して未加工ログのメッセージから抽出されます。 |
create_time.nanos |
N/A | IDM オブジェクトにはマッピングされません。 |
create_time.seconds |
N/A | IDM オブジェクトにはマッピングされません。 |
metadata.description |
ログから抽出された説明メッセージ(grok パターンを使用して抽出)。コピー元: create_time.nanos。コピー元: create_time.seconds。デフォルトは「GENERIC_EVENT」に設定されます。client_ip が存在する場合は「STATUS_UPDATE」に変更されました。パーサーによって設定される静的な値「AWS_RDS」。パーサーによって設定される静的な値「AWS_RDS」。 |
|
pid |
principal.process.pid |
正規表現 process ID of %{INT:pid} を使用して descrip フィールドから抽出されます。 |
prin_namespace |
event.idm.read_only_udm.principal.namespace |
変更履歴からマッピング |
connection |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
event_time |
event.idm.read_only_udm.metadata.event_timestamp |
変更履歴からマッピング |
clientApplication |
event.idm.read_only_udm.target.application |
変更履歴からマッピング |
serverHost |
event.idm.read_only_udm.target.ip と event.idm.read_only_udm.target.asset.ip |
変更履歴からマッピング |
commandText |
event.idm.read_only_udm.target.process.command_line |
変更履歴からマッピング |
objectType |
event.idm.read_only_udm.target.resource.attribute.labels |
変更履歴からマッピング |
objectName |
event.idm.read_only_udm.target.resource.attribute.labels |
変更履歴からマッピング |
rowCount |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
errorMessage |
event.idm.read_only_udm.security_result.summary |
変更履歴からマッピング |
command |
event.idm.read_only_udm.security_result.description |
変更履歴からマッピング |
rawData |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
attemptsMade |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
attemptEndingTimestamp |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
errorCode |
event.idm.read_only_udm.security_result.summary |
変更履歴からマッピング |
errorMessage |
event.idm.read_only_udm.security_result.description |
変更履歴からマッピング |
lambdaARN |
event.idm.read_only_udm.principal.resource.name |
変更履歴からマッピング |
arrivalTimestamp |
event.idm.read_only_udm.metadata.event_timestamp |
変更履歴からマッピング |
exitCode |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
prod_event_type |
event.idm.read_only_udm.metadata.product_event_type |
変更履歴からマッピング |
arn |
event.idm.read_only_udm.target.resource.name |
変更履歴からマッピング |
PROTOCOL |
event.idm.read_only_udm.network.ip_protocol |
変更履歴からマッピング |
address_data.HOST |
event.idm.read_only_udm.principal.ip |
変更履歴からマッピング |
address_data.HOST |
event.idm.read_only_udm.principal.asset.ip |
変更履歴からマッピング |
SID |
event.idm.read_only_udm.target.resource.attribute.labels |
変更履歴からマッピング |
USER |
event.idm.read_only_udm.target.user.userid |
変更履歴からマッピング |
connect_data.HOST |
event.idm.read_only_udm.target.hostname |
変更履歴からマッピング |
connect_data.HOST |
event.idm.read_only_udm.target.asset.hostname |
変更履歴からマッピング |
PROGRAM |
event.idm.read_only_udm.target.resource.name |
変更履歴からマッピング |
action_details |
event.idm.read_only_udm.security_result.action_details |
変更履歴からマッピング |
src_port |
principal.port |
変更履歴からマッピング |
user_name |
principal.user.user_display_name |
変更履歴からマッピング |
database_name |
target.resource.name |
変更履歴からマッピング |
owner |
principal.user.userid |
変更履歴からマッピング |
logGroup |
security_result.about.resource.name |
変更履歴からマッピング |
logStream |
security_result.about.resource.attribute.labels |
変更履歴からマッピング |
logevent.id |
metadata.product_log_id |
変更履歴からマッピング |
logevent.message |
security_result.description |
変更履歴からマッピング |
resource_name |
target.resource.name |
変更履歴からマッピング |
src_ip |
principal.ip |
変更履歴からマッピング |
tar_ip |
target.ip |
変更履歴からマッピング |
tar_host |
target.hostname |
変更履歴からマッピング |
subscriptionFilters |
security_result.about.resource.attribute.labels |
変更履歴からマッピング |
type |
additional.fields |
変更履歴からマッピング |
変更ログ
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。