監査ロギングをログバック・ログ・ファイル用に構成

DataStax Enterpriseで監査ロギングを構成する手順

監査ロギングを有効にし、「DataStax Enterpriseでのデータ監査の有効化」の説明に従って、ロガーをSLF4JAuditWriterに出力するように設定した場合は、logback.xmlのオプションを設定してロガーを構成できます。DataStax Enterpriseは、監査ログをlogback.xml構成ファイルで定義されているディレクトリーに配置します。ログ・ファイルが構成されたサイズしきい値に達すると、ロールオーバーされ、ログ・ファイル名が変更されます。ファイル名には、maxBackupIndexプロパティで決められた数値のサフィックスが付きます。

logback.xmlファイルの場所は、インストールのタイプによって異なります。
Installer-Servicesおよびパッケージ・インストール /etc/dse/cassandra/conf/logback.xml
Installer-No Servicesおよびtarボール・インストール install_location/resources/cassandra/conf/logback.xml

監査はファイル・システム内のテキスト・ファイルを使用して構成されるため、ファイルはOSレベルのセキュリティ違反の脅威にさらされます。この問題に対処するには、DataStax Enterpriseのumask設定を変更し、監査ファイルで権限をデフォルトで600に変更します。他のツールを使用してデータを確認する場合は、この設定を変更すると読み取り問題が発生する可能性があることに注意してください。あるいは、監査ファイルをVormetricなどOSレベルの暗号化されたファイル・システムに格納することもできます。

データ監査の構成 

ログに記録する監査イベントのカテゴリーだけでなく、特定のキースペースに対する操作を監査ログから省略するかどうかも構成できます。

監査ロガーはINFOレベルでログに記録するため、DataAuditロガーはlogback.xmlのINFO(またはそれより下の)レベルで構成する必要があります。ロガーをWARNなどの高いレベルに設定すると、ログ・イベントが記録されるのを防ぐことはできますが、データ監査は完全には無効になりません。通常の処理のためのオーバーヘッドが発生します。

手順

  1. テキスト・エディターでlogback.xmlファイルを開きます。
  2. データ監査を構成するには:
    デフォルト設定を受け入れるか、次のプロパティを変更します。
    <!--audit log-->  
    <appender name="SLF4JAuditWriterAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>${cassandra.logdir}/audit/audit.log</file> <!-- logfile location -->
    <encoder>
    <pattern>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n</pattern> <!-- the layout pattern used to format log entries -->
    <immediateFlush>true</immediateFlush> 
    </encoder>
    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
    <fileNamePattern>${cassandra.logdir}/audit/audit.log.%i.zip</fileNamePattern>
    <minIndex>1</minIndex>
    <maxIndex>5</maxIndex> <!-- max number of archived logs that are kept -->
    </rollingPolicy>
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
    <maxFileSize>200MB</maxFileSize> <!-- The size of the logfile that triggers a switch to a new logfile, and the current one archived -->
    </triggeringPolicy>
    </appender>
    <logger name="SLF4JAuditWriter" level="INFO" additivity="false">
    <appender-ref ref="SLF4JAuditWriterAppender"/>
    </logger>
  3. ノードを再起動し、ログ内の変更内容を確認します。