監査セキュリティ設定
監査ログを使用して、認証失敗、拒否された接続、データアクセスイベントなどのセキュリティ関連のイベントを記録できます。さらに、ネイティブおよび組み込みユーザー、ロール、ロールマッピング、およびAPIキーの作成、更新、削除など、APIを介したセキュリティ構成の変更も記録されます。
監査ログは特定のサブスクリプションレベルでのみ利用可能です。詳細については、https://www.elastic.co/subscriptionsを参照してください。
設定されている場合、監査設定はクラスター内のすべてのノードで設定する必要があります。xpack.security.audit.enabled
のような静的設定は、各ノードのelasticsearch.yml
で構成する必要があります。動的監査設定については、クラスター更新設定APIを使用して、すべてのノードで設定が同じであることを確認してください。
一般的な監査設定
xpack.security.audit.enabled
- (静的) ノードで監査を有効にするには、
true
に設定します。デフォルト値はfalse
です。これにより、監査イベントが各ノードの<clustername>_audit.json
という専用ファイルに記録されます。
有効にした場合、この設定はクラスター内のすべてのノードのelasticsearch.yml
で構成する必要があります。
監査イベント設定
記録されるイベントとその他の情報は、次の設定を使用して制御できます:
xpack.security.audit.logfile.events.include
(動的) 監査出力に印刷するイベントの種類を指定します。さらに、
_all
を使用してすべてのイベントを徹底的に監査できますが、これは通常推奨されません。なぜなら、非常に冗長になるからです。デフォルトのリスト値には、access_denied, access_granted, anonymous_access_denied, authentication_failed, connection_denied, tampered_request, run_as_denied, run_as_granted, security_config_change
が含まれています。xpack.security.audit.logfile.events.exclude
(動的) 指定されたイベントの種類を含むリストから除外します。これは、
events.include
設定が特別な値_all
を含む場合に便利です。デフォルトは空のリストです。xpack.security.audit.logfile.events.emit_request_body
- (動的) 特定の種類の監査イベントの属性として、RESTリクエストからの完全なリクエストボディを含めるかどうかを指定します。この設定は検索クエリを監査するために使用できます。
デフォルト値はfalse
であり、リクエストボディは印刷されません。
リクエストボディを監査イベントに含めると、機密データが平文で監査される可能性があることに注意してください。すべてのセキュリティAPI(ユーザーのパスワードを変更するAPIなど)は、監査時に資格情報がフィルタリングされます。
ローカルノード情報設定
xpack.security.audit.logfile.emit_node_name
(動的) 各監査イベントにフィールドとしてnode nameを含めるかどうかを指定します。デフォルト値は
false
です。xpack.security.audit.logfile.emit_node_host_address
(動的) 各監査イベントにフィールドとしてノードのIPアドレスを含めるかどうかを指定します。デフォルト値は
false
です。xpack.security.audit.logfile.emit_node_host_name
(動的) 各監査イベントにフィールドとしてノードのホスト名を含めるかどうかを指定します。デフォルト値は
false
です。xpack.security.audit.logfile.emit_node_id
- (動的) 各監査イベントにフィールドとしてノードIDを含めるかどうかを指定します。node nameは、管理者が設定ファイルで設定を変更した場合に値が変わる可能性がありますが、ノードIDはクラスターの再起動を通じて持続し、管理者は変更できません。デフォルト値は
true
です。
監査ログファイルイベント無視ポリシー
次の設定は、ログファイルに印刷される監査イベントを制御する無視ポリシーに影響します。同じポリシー名を持つすべての設定は、単一のポリシーを形成します。イベントが任意のポリシーのすべての条件に一致する場合、それは無視され、印刷されません。ほとんどの監査イベントは無視ポリシーの対象となります。唯一の例外は、security_config_change
タイプのイベントであり、これは除外されない限りフィルタリングできません。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.users
(動的) ユーザー名またはワイルドカードのリスト。指定されたポリシーは、これらの値に一致するユーザーの監査イベントを印刷しません。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.realms
(動的) 認証レルム名またはワイルドカードのリスト。指定されたポリシーは、これらのレルム内のユーザーの監査イベントを印刷しません。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.actions
(動的) アクション名またはワイルドカードのリスト。アクション名は監査イベントの
action
フィールドにあります。指定されたポリシーは、これらの値に一致するアクションの監査イベントを印刷しません。xpack.security.audit.logfile.events.ignore_filters.<policy_name>.roles
(動的) ロール名またはワイルドカードのリスト。指定されたポリシーは、これらのロールを持つユーザーの監査イベントを印刷しません。ユーザーが複数のロールを持っている場合、その中に含まれていないロールがある場合、ポリシーはこのイベントをカバーしません。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.indices
- (動的) インデックス名またはワイルドカードのリスト。指定されたポリシーは、イベント内のすべてのインデックスがこれらの値に一致する場合、監査イベントを印刷しません。イベントが複数のインデックスに関するもので、その中に含まれていないインデックスがある場合、ポリシーはこのイベントをカバーしません。