Amazon OpenSearch Service の監査ログを有効にしたいと考えています。
簡単な説明
監査ログの有効化は 2 つのステップで行われます。まず、Amazon CloudWatch Logs に監査ログを公開するようにドメインを設定します。次に、OpenSearch ダッシュボードで監査ログを有効化して設定します。
詳細については、「Amazon OpenSearch Service における監査ログのモニタリング」を参照してください。
解決策
**注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、最新の AWS CLI バージョンを使用しているかどうかを確認してください。
監査ログを有効にし、アクセスポリシーを作成する
1. OpenSearch Service コンソールを開きます。
2. ナビゲーションペインで [ドメイン] を選択し、お使いのドメインを選択します。
3. [ログ] タブを選択し、[監査ログ] を選択し、[有効化] を選択します。
4. CloudWatch ロググループを作成するか、既存のロググループを選択します。
5. 次のようなアクセスポリシーを作成します:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "es.amazonaws.com"
},
"Action": [
"logs:PutLogEvents",
"logs:CreateLogStream"
],
"Resource": "cw_log_group_arn"
}
]
}
6. [有効化] を選択します。
OpenSearch ダッシュボードの監査ログを有効にする
1. OpenSearch ダッシュボードを開き、ナビゲーションペインから [セキュリティ] を選択します。
2. [監査ログ] を選択します。
3. **[監査ログの有効化]**を選択します。
構成例については、「監査ログの例」を参照してください。
監査ログエラーのトラブルシューティング
高度なセキュリティオプションを設定していません
監査ログを有効化する際に、ドメインできめ細かなアクセス制御が有効になっていない場合、次のエラーが発生します:
"UpdateDomainConfig: {"message":"audit log publishing cannot be enabled as you do not have advanced security options configured."}"
このエラーを解決するには、きめ細かなアクセス制御を有効化してください。
リソース制限を超えました
AWS リージョンごとの CloudWatch Logs リソースポリシーの最大数に達すると、次のエラーが発生します:
"PutResourcePolicy: {"__type":"LimitExceededException","message":"Resource limit exceeded."}"
1 つのリージョン、1 つのアカウントにつき、最大 10 の CloudWatch Logs リソースポリシーを持つことができます。このクォータは変更できません。詳細については、「CloudWatch Logs のクォータ」を参照してください。
複数のドメインのログを有効にする場合、複数のロググループを含むポリシーを再利用することができます。
以下の AWS CLI コマンドを実行して、リージョンごとのアカウントのリソースポリシーを確認してください:
aws logs describe-resource-policies --region <region-name>
注: region-name を該当するリージョンに置き換えます。
複数のロググループをカバーするためにリソースポリシーを更新するには、ワイルドカード文字「*」を追加します。また、すべてのロググループに対して異なるリソースポリシーから複数のステートメントを設定し、古いポリシーを削除することもできます。例えば、ロググループ名が /aws/OpenSearchService/domains/ で始まる場合、/aws/OpenSearchService/domains/* に適用されるリソースポリシーを作成できます。
以下のリソースポリシーの例では、/aws/OpenSearchService/domains/* で始まるすべてのロググループに対して単一のリソースポリシーを使用することができます:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "es.amazonaws.com"
},
"Action": [
"logs:PutLogEvents",
"logs:CreateLogStream"
],
"Resource": "arn:aws:logs:us-east-1:<account id>:log-group:/aws/OpenSearchService/domains/*:*"
}
]
}
監査ログを有効化するときに、この更新されたポリシーを選択できるようになりました。
CloudWatch Logs ロググループのアクセスポリシーが十分な権限を付与していません
監査ログ公開を有効にしようとすると、次のエラーが表示されることがあります:
「CloudWatch Logs ロググループの指定されたリソースアクセスポリシーは、Amazon OpenSearch Service がログストリームを作成するための十分な権限を付与していません。リソースアクセスポリシーを確認してください。」
このエラーを解決するには、ポリシーのリソース要素に正しいロググループの ARN が含まれていることを確認してください。
関連情報
OpenSearch Service クラスターのきめ細かなアクセス制御に関する問題への詳細トラブルシューティング方法を教えてください。
Amazon OpenSearch Service のトラブルシューティング