監査ログ
i1n組織のあらゆる変更を記録する追記専用レコード — キーごとの翻訳差分、チームおよび請求イベント、AIエージェントの属性、ワンクリックCSVエクスポート。エンタープライズプランで利用可能です。
すべての変更を完全なコンテキストで
i1nの監査ログは、組織全体のあらゆる変更を記録します。これは、大まかな「翻訳ファイルが更新されました」という行ではなく、キーごと、言語ごとの構造化されたイベントとして記録されます。ダッシュボードユーザーが14:32 UTCにerrors.insufficient_fundsのスペイン語(es_mx)翻訳を変更すると、ログには変更前の正確な値、変更後の正確な値、アクターのID、タイムスタンプ、IPアドレス、および変更を生成したリクエストのユーザーエージェントがキャプチャされます。
プラットフォームの全領域を網羅しています:翻訳の作成、編集、削除。ネームスペースの作成、名前変更、削除。プロジェクト設定およびブランドボイスの変更。チームの招待、役割の変更、削除。APIキーの作成、ローテーション、スコープ変更、削除。請求プランの変更、サブスクリプションイベント、BYOKのアクティベーション。
i1nプッシュなどのバルク操作では、単一の概要ではなく、変更されたキーと言語のペアごとに1つのイベントが生成され、メタデータに共通のバッチ識別子が含まれます。4つの言語にわたる200のキーを更新するプッシュでは、それぞれが独自の差分を持つ800のエントリが生成されます。したがって、監査担当者は「4月17日14時32分に何が変更されたか」を正確な文字列まで回答できます。
監査対象の各テーブルにアタッチされたPostgreSQLトリガーによってイベントが発行されます。ログをバイパスするアプリケーションレベルの書き込みパスはなく、成功したすべてのミューテーションは同じデータベーストランザクション内で監査行を生成します。対応する監査行なしでコミットされた変更は、構造上不可能です。
人間、マシン、AIエージェントの区別
各監査エントリは、5つのアクタータイプのいずれかに関連付けられます。userはダッシュボードの変更用、cliは直接コマンドライン操作用、mcpはi1n MCPサーバーを介したAIエージェントによる変更用、webhookは請求プロバイダーなどの外部システムからのイベント用、systemは保持期間の削除などのプラットフォーム内部ジョブ用です。
ダッシュボードのユーザー属性は暗号化されています。アクター識別子は、認証済みユーザーのアカウントIDであり、組織メンバーリストから検証済みのメールアドレスと名前とともに表示されます。ログを確認する管理者は、不透明なUUIDではなく、実際の人間としての身元を確認できます。
CLIおよびMCPの属性は、使用中のAPIキーに暗号学的に紐付けられ、キーのプレフィックスがフォレンジック相関のために記録されます。開発者のgit構成から派生したヒント(メールアドレスとフルネーム)もキャプチャされますが、ダッシュボードでは明示的に「未検証」としてラベル付けされます。この暗号学的アイデンティティと自己申告されたメタデータの正直な分離は、コンプライアンスレビュー担当者が成熟した監査システムに期待するものです。
AIエージェントのオブザーバビリティ(監視可能性)は、我々の知る限り、i1n独自の機能です。Claude Code、Cursor、またはi1n MCPサーバーに接続されている他のクライアントによって行われたすべての翻訳変更は、actor_type = 'mcp'としてタグ付けされます。組織は監査ログをフィルタリングして、「AIエージェントが人間レビュアーよりも最後に変更した翻訳はどれか」という質問に答えることができます。これは、他のどのローカライゼーションプラットフォームでも明確な答えが得られない質問です。
AIエージェントがローカライゼーションワークフローのより多くの部分を担うようになるにつれて、それらをファーストクラスのアクターとして監査する能力が調達要件になりつつあります。アクタータイプのフィルターは、ダッシュボードではワンクリック、CSVエクスポートでは1つのクエリパラメータです。
SOC 2、GDPR、およびFintechレビュー向けに構築
監査ログはデータベースレベルで追記専用です。トリガーが行を発行し、クライアントにINSERTパスは公開されず、テーブルに対するUPDATEまたはDELETEポリシーもありません。組織のメンバーは自身の履歴を編集できません。i1n運用スタッフもエントリを編集または削除することはできません — テーブルはアプリケーションレイヤーではなく、スキーマレイヤーで保護されています。
アクティビティログのSOC 2統制ベースラインに準拠し、保持期間は365日です。365日を超える記録は、監査エントリ自体を生成するスケジュールジョブによって削除されます。これにより、すべての削除が追跡可能になります。特定の規制レビューのために保持期間の延長が必要な組織は、契約レベルで延長をリクエストできます。
ログには、コンプライアンスレビュー担当者が通常要求するデータポイントが表示されます。誰が、何を、いつ、どこで(IPアドレス)、どのように(ユーザーエージェント)、何が変更されたか(変更前後の値、すべて)。GDPR第30条の記録保持義務の対象となる組織や、ユーザー向けコンテンツのトレーサビリティを要求するフィンテック規制当局にとって、このエクスポートは一次証拠として十分です。
i1nは現在、プラットフォームレベルでSOC 2タイプIIレポートを発行していません。監査ログは、お客様自身のSOC 2、GDPR、またはフィンテックコンプライアンスプログラムをサポートする基盤となるコントロールです。組織的なコントロールを置き換えるものではありませんが、コンプライアンスレビューで最も一般的な障害、つまりコンテンツ変更に関する監査可能な追跡がないという問題を解消します。
ログを確認できるユーザー、ログに含まれるユーザー
監査ログへの読み取りアクセスは、組織のオーナーと管理者に制限されています。編集者と閲覧者は、ダッシュボードで監査ログタブを表示できず、API経由でクエリすることもできません。この分離は、クライアント側の非表示ではなく、PostgreSQLの行レベルセキュリティによって強制されます。特権のないロールからログを読み取るパスはありません。
エディターおよびビューアーは、監査ログの対象となります。プラットフォーム上で行われるすべての操作(翻訳編集、AI翻訳リクエスト、メンバーレベルの操作など)は、そのユーザーのIDとともに記録され、管理者チームに表示されます。監査対象となるユーザーは、自身を監査から除外することはできません。
オーナーおよび管理者は、履歴エントリを編集できません。「誰が読み取れるか」という質問と「誰が変更できるか」という質問は、意図的に異なる回答になっています。読み取りは管理者レベルですが、変更は誰にもできません。これにより、監査担当者が内部アクセス制御をレビューする際に適用する職務分掌の期待が満たされます。
APIアクセスはダッシュボードのモデルを反映します。監査ログは、ダッシュボードを制御するのと同じ行レベルのセキュリティポリシーを通じて公開されるため、ログのクエリに使用されるサービスアカウントまたは統合トークンは、自動的に同じ制限を継承します。
エクスポート、アクティベーション、および価格設定
監査ログデータは、ダッシュボードからワンクリック操作でCSVとしてエクスポートできます。エクスポートは、選択した任意の期間を対象とし、アクティブなフィルター(アクタータイプ、イベントタイプ、プロジェクト、検索語)を尊重するため、レビュー担当者は履歴全体ではなく、絞り込まれた範囲を受け取ることができます。CSVは、タイムスタンプ、組織、プロジェクト、アクターID、アクタータイプ、APIキープレフィックス、イベントタイプ、エンティティ、変更前の値、変更後の値、IPアドレス、ユーザーエージェント、メタデータなど、完全な忠実度を保持します。
すべてのCSVエクスポートは、それ自体でaudit_log.exportedタイプの監査エントリを生成し、誰がエクスポートを実行したか、およびどのフィルターが適用されたかを記録します。これにより、コンプライアンスレビュー担当者が問い合わせる「証拠の連鎖」ループが閉じられます。証拠の取得行為自体が証拠の一部となるのです。
監査ログは、すべてのエンタープライズ組織で自動的に有効になります。設定手順、オプトイン切り替え、セットアップは不要です。ローンチパートナーである belo を含む既存のエンタープライズ顧客は、機能が出荷された瞬間からログが入力されており、組織に接続されているすべてのダッシュボード、CLI、および MCP クライアントからのアクティビティをキャプチャしています。
ProまたはBusinessプランの組織は、監査ログにアクセスできません。Enterpriseにアップグレードすると、ログがすぐに有効になり、アップグレードのタイムスタンプ以降のイベントのキャプチャが開始されます。アップグレード前の履歴保持は提供されません。組織のEnterprise価格については、i1nチームにお問い合わせください。
created_at,actor_type,actor_email,event_type,entity_key,lang,before_value,after_value
2026-06-02T14:32:11Z,user,[email protected],wording.value_changed,errors.insufficient_funds,es_mx,"Fondos insuficientes","Saldo insuficiente"
2026-06-02T14:28:45Z,mcp,[email protected],wording.value_changed,onboarding.welcome,pt_br,"Bem-vindo","Bem-vindo de volta"
2026-06-02T14:15:02Z,cli,[email protected],wording.created,checkout.confirm_label,en_us,,"Confirm purchase"
2026-06-02T13:58:30Z,user,[email protected],member.role_changed,Camila Sainz,,"\"editor\"","\"admin\""