ログやパイプライン向けのPIIマスキングをRustで。

メールアドレスや電話番号を安全・高速にマスクし、最小限の依存でログやデータ処理に組み込めます。

alternate_email

メールマスキング

ドメインと先頭1文字を保持: alice@example.com -> a****@example.com.

public

グローバル電話番号対応

書式と末尾4桁を保持: +1 (800) 123-4567 -> +1 (***) ***-4567.

construction

カスタム&軽量

マスク文字の変更が可能で、依存はregexのみです。

インストールと基本利用

cargo add mask-pii(またはCargo.tomlに mask-pii = "0.1.0" を追加)して、Builderパターンで必要なマスキングを有効化します。

インストール

cargo add mask-pii

使い方

main.rs
use mask_pii::Masker;

fn main() {
  // マスカーを設定
  let masker = Masker::new()
    .mask_emails()
    .mask_phones()
    .with_mask_char('#');

  let input = "Contact: alice@example.com or 090-1234-5678.";
  let output = masker.process(input);

  println!("{}", output);
  // 出力: "Contact: a####@example.com or 090-####-5678."
}
info
重要な注意

デフォルトでは、 Masker::new() はマスキングを行いません。必要なフィルタを明示的に有効化してください。