操作履歴・監査証跡(Audit Log)
bizhiwayは重要なすべての操作を監査ログに記録します — 誰が、いつ、どのデータに対して何をしたか。内部監査・法令遵守・インシデント調査に使用されます。監査レコードは物理削除されません。
履歴の2層構造
Section titled “履歴の2層構造”flowchart LR
SYS["J2システム"] --> BUSI["業務履歴\n(Business History)\n承認・納品・\nステータス変更..."]
SYS --> OPS["操作ログ\n(Operation Log)\nログイン・設定変更・\n管理者操作..."]
各業務フローの重要なマイルストーンで自動的に記録されます。
| イベント | 記録される情報 |
|---|---|
| 購買依頼の作成 | ユーザー・組織・日時・依頼内容 |
| 承認 / 差戻し | 承認者・判断・理由・タイムスタンプ |
| PO作成 | 作成者・サプライヤー・金額 |
| サプライヤーがPO受諾 | サプライヤー・受諾日・納品予定日 |
| 検収 | 検収担当者・結果(合格/不合格)・数量 |
| 支払 | 処理者・金額・日付 |
サプライヤー管理
Section titled “サプライヤー管理”| イベント | 記録される情報 |
|---|---|
| 招待作成 | Provider・サプライヤー宛メール・日時 |
| サプライヤー登録完了 | タイムスタンプ・完了した手順 |
| 反社確認結果 | 確認日・結果・実施者 |
| ステータス変更 | 実施者・変更前後のステータス・理由 |
| 有効化 / 停止 | Provider・タイムスタンプ・理由 |
マスタデータ
Section titled “マスタデータ”| イベント | 記録される情報 |
|---|---|
| 組織の作成・更新 | 実施者・変更フィールド・変更前後の値 |
| ユーザーの作成・無効化 | 実施者・対象アカウント |
| 承認ルートの変更 | Admin・変更前後のルート |
| BuyerSwitchの変更 | Admin・変更されたフラグ |
LogMessage — 監査ログ閲覧画面
Section titled “LogMessage — 監査ログ閲覧画面”ProviderはLogMessageモジュールで全監査ログを閲覧できます。
flowchart LR
PROV(["Provider Admin"]) --> LOG_UI["LogMessage\nモジュール"]
LOG_UI --> FILTER["絞り込み:\n- 期間\n- 操作種別\n- ユーザー\n- 会社・組織"]
FILTER --> VIEW["詳細を確認\n各操作の詳細情報"]
VIEW --> EXPORT["Excelエクスポート\n監査レポート作成"]
URL: /eProcurement/LogMessage(Providerポータル)
監査レコードの内容
Section titled “監査レコードの内容”| フィールド | 説明 |
|---|---|
timestamp | 操作の正確な日時 |
user_code | 操作を実行したユーザー |
user_name | ユーザー名 |
company_code | ユーザーの所属会社 |
organization_code | ユーザーの所属組織 |
action_type | 操作種別(CREATE, UPDATE, DELETE, APPROVE…) |
target_type | 操作対象の種別(ORDER, USER, SUPPLIER…) |
target_code | 操作対象のコード |
before_value | 変更前の値(JSON形式) |
after_value | 変更後の値(JSON形式) |
ip_address | 操作者のIPアドレス |
screen_code | 操作が行われた画面・エンドポイント |
分散トレーシング(Distributed Tracing)
Section titled “分散トレーシング(Distributed Tracing)”J2はMicrometer + OpenTelemetryでマイクロサービス間のリクエストをトレースします。
flowchart LR
FE["フロントエンド\nリクエスト"] --> GW["service-gateway\nTrace ID: abc123"]
GW --> BUYER_ORDER["service-buyer-order\nTrace ID: abc123"]
BUYER_ORDER --> MAIL["service-mail\nTrace ID: abc123"]
BUYER_ORDER --> NOTIF["service-notification\nTrace ID: abc123"]
TRACE["分散トレーシング\n(OpenTelemetry)\n同一TraceIDで\n全ログを紐付け"]
インシデント調査時は
traceIdを使って、1リクエストに関連するすべてのログを横断的に確認できます。
ビジネスルール
Section titled “ビジネスルール”- 監査ログは物理削除不可: 元レコードが削除されても、監査ログは永久に保存されます。
- Providerのみが全件閲覧可能: Buyer Adminは自社グループのログのみ閲覧可。自分自身のログは自分では閲覧できません。
- Immutableな追記のみ: 作成後の監査レコードは変更できません — appendのみ。
- 変更前後の値を保存: UPDATE操作では変更前(before)と変更後(after)の両方を記録し、変更追跡を可能にします。
- 画面コード: 各画面に固有のコードがあり、操作がどの画面で行われたかを特定できます。
画面・URL
Section titled “画面・URL”| 画面 | Portal | URL (Staging) |
|---|---|---|
| LogMessage — 監査ログ閲覧 | Provider | /eProcurement/LogMessage |
| サプライヤー操作履歴 | Provider | https://bizhiway.staging.jienie.com/management/detail/{code} |
| 承認履歴 | Buyer | 各業務の詳細画面内 |