セキュリティ
セキュリティとデータの流れ
情報システム部門の方向けの説明です。MX Stage は PC の中だけで動き、AI は Maximo に書き込めません。書き込みは、人が作業画面で差分を確かめて [Maximo に反映] を押したときだけです。MX Stage のクラウドはなく、Maximo のデータが TSUNAGI に届くことはありません。
1. 構成とデータの流れ
AI アシスタントClaude Desktop・ChatGPT デスクトップ・IBM Bob など、貴社が契約・承認したもの
利用者の PC(MX Stage)橋渡し: PC の中の Node.js のプロセス 1 つ(127.0.0.1 でだけ待ち受け)
作業画面: ブラウザのタブ(Chrome / Edge)。シート・差分・承認のボタン
作業画面: ブラウザのタブ(Chrome / Edge)。シート・差分・承認のボタン
貴社の MaximoJSON API(
/maximo/api)に HTTPS で接続。Maximo の API キーで認証| 通信先 | 何が流れるか |
|---|---|
| 貴社の Maximo | 読み込み(GET)と、人が承認した変更の書き込み。PC から Maximo へ直接(橋渡しが中継)。Maximo 側の CORS の設定は要りません。 |
| AI アシスタント | AI が呼んだツールの結果(件数・集計・AI が読んだ行の値)。この部分は AI の提供元に送られ、貴社と AI の提供元との契約に従います。多数の変更(規則・突き合わせ)は作業画面の中で実行するので、その行のデータは AI を通りません。 |
| GitHub・npm(任意) | 自動の更新をオンにしたときだけ、1 日 1 回、GitHub に最新の版の番号を問い合わせます(既定はオフ)。更新を入れるときは、新しい版を GitHub から、部品を npm のレジストリから取ります。貴社の情報は送りません。 |
| デモのデータ(任意) | 設定の「デモ」で [データを落としてつなぐ] を押したときだけ、TSUNAGI が Cloudflare で配信する架空のデータ(約 10 MB)を 1 回落とします。何も送りません。 |
| TSUNAGI | 何も送りません。利用状況の送信(テレメトリ)もありません。ライセンスキーは PC の中で署名を確かめ、当方に問い合わせません。 |
2. 認証情報の扱い
- Maximo の API キーは作業画面の設定にだけ入れます。AI のツールはキーを受け取らず、会話に貼られても使いません。
- 「この PC に保存」を選んだ場合: 橋渡しが AES-256-GCM で暗号化し、その鍵を Windows のデータ保護(DPAPI。その Windows ユーザーだけが開ける)で守ります。保存したキーは作業画面(ブラウザ)にも渡しません。
- 保存しない場合: 作業画面のタブのメモリ(Web Worker)にだけ置き、Maximo への呼び出しのたびに橋渡しへ渡します。ディスクには書かず、30 分操作がなければロックします。
- おすすめ: MX Stage 用の Maximo ユーザーを作り、必要なオブジェクト構造だけを許可したセキュリティグループで API キーを発行してください。Maximo 側の権限と監査がそのまま効きます。
3. 書き込みの統制
- AI には書き込む手段がない: AI のツールは「反映の依頼」までで、反映の実行は作業画面のボタンからしか呼べない作りです。
- 人の確認: 件数と差分を見て [Maximo に反映] を押し、確認します。MX Stage は最初の 1 件だけ書いて読み直し、結果を人が見てから残りを送ります。
- 競合の検知: 送る直前にレコードを読み直し、読み込んだ後にほかの人が変えていれば、そのレコードは送らずに飛ばして一覧で知らせます。エラーや結果を確かめられないときは、そこで止まります。
- 新しいレコード: 作業画面で足したレコードは、同じキーのレコードが無いことを確かめてから作ります。Maximo の自動採番は使わず、番号を入れて作ります。
- 二重書き込みの防止: 1 件ごとに
transactionidを付けます。自動の再送はしません。結果が分からないものは「要確認」として残します。 - 上限と追加の確認: 1 回の反映は 200 レコードまで。子の行の削除(1 レコード 10 行・合計 50 行を超えるもの)と、空への変更は、追加の確認が要ります。最上位のレコードの削除はできません。
- 元に戻す: 反映の前なら、まとまりごとに取り消せます。反映した後に自動で元に戻す機能はありません。差分レポートに変更前の値が残ります。
4. 証跡
| 差分レポート(Excel) | 反映の前に保存します。1 セル 1 行で、レコードのキー・列・変更前・変更後・作者(AI か人か)・根拠・時刻。概要のシートに接続先・環境・オブジェクト構造・依頼メモ・件数・作業の履歴。Maximo のデータを含むので、貴社の規程で扱ってください。 見本(架空のデータ)をダウンロード |
|---|---|
| 書き込みログ(CSV) | 反映した後に保存します(反映の後の差分レポートにも、その回の分が入ります)。レコードのキー・トランザクション ID・HTTP の結果・Maximo の理由コード・結果(属性値は含みません)。 |
| Maximo 側 | MX Stage 用のユーザーで書き込まれるので、Maximo の変更履歴・監査でも追えます。 |
5. 動作環境と制約
- Windows 10 / 11、Chrome または Edge。Node.js 22.6 以降(導入の手順で入れられます)。macOS・Linux は未検証です。
- IBM Maximo / Maximo Application Suite(Manage)で、JSON API(
/maximo/api)と API キーが使えること。ログイン認証(MAXAUTH)・LDAP だけの環境には、今は対応していません。 - PC から Maximo への HTTPS の接続だけが要ります。
6. ソースコード
ソースコードは GitHub で公開しています(Business Source License 1.1。各版は公開の 4 年後に Apache License 2.0)。偽の Maximo を相手にした約 1,170 件の自動試験を流しています。貴社でのコードの確認を歓迎します。
導入の進め方のおすすめ: まずテスト環境(無償)で、読み込み → AI での修正 → 差分レポート → 反映までを予行し、差分レポートと書き込みログを確かめてください。