JSON の秘密項目の伏せ字

ログやサポートに貼る前に、JSON の秘密らしい項目を伏せ字にする。

JSON を貼り付けると、password・token・secret・api_key・connectionString など秘密情報らしい項目名の値を *** などに置き換えた JSON を作ります。どの項目を伏せたかをパスつきで一覧にします。入力はブラウザの中だけで処理し、送信しません。

ツールを使う 入力例と結果

JSON を貼り付けて秘密らしい項目を伏せ字にする

入力した内容は送信されません。貼り付けた文字や選んだファイルは、お使いのブラウザの中だけで処理します。本サイトのサーバーや第三者へ送信・保存しません(通信を禁止する設定でページを配信しています)。

結果

エラー 0 件・警告 0 件・情報 2 件

指摘(エラー・警告・情報)

  • 情報 $.password 項目名「password」の値を *** に置き換えました。
  • 情報 出力全体 判定は項目名の推定だけで、値の中身は見ていません。項目名が一般的でない秘密(例: key1)や、秘密を含む長い文字列の値は伏せられません。共有する前に出力を目で確かめてください。
伏せ字にした項目1 件
調べた項目名3 個
語を含むが伏せなかった項目0 件

伏せ字にした JSON

{
  "user": "taro",
  "password": "***",
  "remember": true
}

初期表示は入力例「ログイン要求の password」の結果です。入力を変えるとその場で処理し直します。判定の根拠は仕様と根拠にまとめています。

ご利用にあたって

  • このツールの判定は項目名の推定です。出力に秘密が残っていないか、共有の前に必ず目で確かめてください。
  • 大きな JSON はお使いの端末の性能によって処理に時間がかかることがあります。

使い方

  1. 伏せ字にしたい JSON をテキスト欄に貼り付けるか、JSON ファイルを選びます。
  2. 一覧にない項目名の値も伏せたいときは、「追加で伏せる項目名」に書きます。置き換える文字も選べます。
  3. 出力の JSON と、どの項目(パス)を伏せたかの指摘を確かめます。伏せた項目の数は要約に出ます。
  4. 共有する前に、出力を目で最後まで確かめます。項目名からの推定なので、秘密が残っていないかは人の確認が必要です。

入力例と結果

代表的な入力・境界の入力・壊れた入力の例です。例ごとに入力・出力・指摘と、その結果になる理由(検算)を載せています。

入力例と結果の一覧
入力例結果
ログイン要求の passwordエラー 0 件・警告 0 件・情報 2 件
トークン応答の access_token と token_typeエラー 0 件・警告 0 件・情報 4 件
入れ子と配列の中の接続文字列・API キーエラー 0 件・警告 0 件・情報 4 件
追加で指定した項目名と [REDACTED]エラー 0 件・警告 0 件・情報 2 件
秘密らしい項目名がないときエラー 0 件・警告 1 件・情報 1 件
末尾のカンマで読めない JSONエラー 1 件・警告 0 件・情報 0 件

このツールでできないこと(制約)

よくある質問

これで情報漏えいを防げますか?

防げるとは言えません。項目名からの推定なので、名前が一般的でない秘密や、文章の中に混ざった秘密は残ります。共有の前に、出力を目で確かめてください。秘密を含む情報は、そもそも貼らない運用が最も安全です。

token_type や expires_in が伏せられないのはなぜですか?

token_type の値は Bearer のような種類で、expires_in は有効秒数であり、どちらも秘密そのものではないためです。語を含んでいても、type・count・length・期限を表す名前で終わるものは伏せず、情報として示します。

貼り付けた JSON はどこかに送られますか?

送られません。伏せ字にする処理はお使いのブラウザの中だけで行い、ページは通信を禁止する設定(CSP の connect-src)で配信しています。共用の端末では、使い終わったらページを閉じてください。