213.7. パスワードなどの機密情報のマスク

Camel 2.19 以降で利用可能

logMask フラグを true に設定することで、ログのセキュリティーマスキングを有効にできます。このオプションはログ EIP にも影響することに注意してください。

CamelContext レベルで Java DSL でマスクを有効にするには、以下を行います。

camelContext.setLogMask(true);

XML では次のようになります。

<camelContext logMask="true">

エンドポイントレベルでオン/オフにすることもできます。エンドポイントレベルで Java DSL のマスクを有効にするには、ログエンドポイントの URI に logMask=true オプションを追加します。

from("direct:start").to("log:foo?logMask=true");

XML では次のようになります。

<route>
  <from uri="direct:foo"/>
  <to uri="log:foo?logMask=true"/>
</route>

デフォルトでは、org.apache.camel.processor.DefaultMaskingFormatter がマスキングに使用されます。カスタムマスキングフォーマッタを使用する場合は、CamelCustomLogMask という名前でレジストリーに配置します。マスキングフォーマッタは org.apache.camel.spi.MaskingFormatter を実装する必要があることに注意してください。