メインコンテンツへスキップ
W&B 監査ログを使用すると、組織内のユーザーアクティビティをトラッキングし、エンタープライズのガバナンス要件に準拠できます。監査ログは JSON 形式で利用できます。監査ログスキーマを参照してください。 監査ログへのアクセス方法は、W&B プラットフォームのデプロイタイプによって異なります。
W&B Platform Deployment typeAudit logs access mechanism
専用クラウド
  • インスタンスレベルの BYOB: 10 分ごとにインスタンスレベルのバケット (BYOB) に Sync されます。APIを使用して取得することもできます。
  • デフォルトのインスタンスレベル ストレージ: APIを使用した場合のみ利用できます。
Multi-tenant CloudEnterprise プランでのみ利用できます。APIを使用した場合のみ利用できます。
セルフマネージド10 分ごとにインスタンスレベルのバケットに Sync されます。APIを使用して取得することもできます。
監査ログを取得した後は、PandasAmazon RedshiftGoogle BigQueryMicrosoft Fabric などのツールを使用して分析できます。一部の監査ログ分析ツールは JSON をサポートしていません。分析前に JSON 形式の監査ログを変換するためのガイドラインや要件については、使用する分析ツールのドキュメントを参照してください。 ログ形式の詳細については、監査ログスキーマアクションを参照してください。

監査ログの保持

  • 監査ログを一定期間保持する必要がある場合、W&B では、storage buckets または Audit Logging API を使用して、ログを長期ストレージに定期的に転送することを推奨します。
  • 1996年医療保険の携行性と責任に関する法律 (HIPAA) の適用対象である場合、監査ログは、法令で義務付けられた保持期間が終了するまで、社内外のいかなる関係者も削除または変更できない環境で、少なくとも 6 年間保持する必要があります。BYOB を使用する HIPAA 準拠の専用クラウドインスタンスでは、長期保持用ストレージを含む管理対象ストレージに対するガードレールを設定する必要があります。

監査ログスキーマ

この表は、監査ログのエントリに含まれる可能性があるすべてのキーを、アルファベット順に示しています。アクションや状況によっては、個々のログエントリに含まれるのは、これらのフィールドの一部だけの場合があります。
KeyDefinition
actionイベントのアクション
actor_email該当する場合、アクションを開始したユーザーのメールアドレス。
actor_ipアクションを開始したユーザーの IP アドレス。
actor_user_id該当する場合、アクションを実行したログイン中のユーザーの ID。
artifact_asset該当する場合、アクションに関連付けられた artifact ID。
artifact_digest該当する場合、アクションに関連付けられた artifact digest。
artifact_qualified_name該当する場合、アクションに関連付けられた artifact の完全修飾名。
artifact_sequence_asset該当する場合、アクションに関連付けられた artifact sequence ID。
cli_version該当する場合、アクションを開始した Python SDK のバージョン。
entity_asset該当する場合、アクションに関連付けられた entity または チーム ID。
entity_name該当する場合、アクションに関連付けられた entity または チーム 名。
project_asset該当する場合、アクションに関連付けられたプロジェクト。
project_name該当する場合、アクションに関連付けられたプロジェクト名。
report_asset該当する場合、アクションに関連付けられたレポート ID。
report_name該当する場合、アクションに関連付けられたレポート名。
response_code該当する場合、アクションに対する HTTP レスポンスコード。
timestampRFC3339 format 形式のイベント発生時刻。たとえば、2023-01-23T12:34:56Z は 2023 年 1 月 23 日 12:34:56 UTC を表します。
user_asset該当する場合、アクションを実行したユーザーではなく、そのアクションの影響を受けるユーザーの asset。
user_email該当する場合、アクションを実行したユーザーのメールアドレスではなく、そのアクションの影響を受けるユーザーのメールアドレス。

個人を特定できる情報 (PII)

メールアドレスや プロジェクト、Teams、Reports の名前などの個人を特定できる情報 (PII) は、API endpoint オプションを使用する場合にのみ利用できます。

始める前に

  1. 組織レベルの管理者は監査ログを取得できます。403 エラーが返される場合は、ご自身またはサービスアカウントに十分な権限があることを確認してください。
  2. Multi-tenant Cloud: 複数の Multi-tenant Cloud 組織に所属している場合、監査ログ API 呼び出しの送信先を決定する Default API organization必ず 設定する必要があります。設定しないと、次のエラーが表示されます。
    user is associated with multiple organizations but no valid org ID found in user info
    
    デフォルトの API 組織を指定するには、次の手順を実行します。
    1. プロフィール画像をクリックし、User Settings をクリックします。
    2. Default API organization で、組織を選択します。
    これは、1 つの Multi-tenant Cloud 組織にしか所属できないサービスアカウントには適用されません。

監査ログを取得する

監査ログを取得するには、次の手順に従います。
  1. ご利用のインスタンスに対応する正しい API endpoint を確認します。 以下の手順では、<API-endpoint> を実際の API endpoint に置き換えてください。
  2. (任意) エンドポイントに追加するクエリパラメーターを作成します。以下の手順では、<parameters> をその結果の文字列に置き換えてください。
  • anonymize: URL に anonymize=true パラメーターが含まれている場合は、PII を削除します。含まれていない場合は、PII も含まれます。監査ログ取得時に PII を除外する を参照してください。Multi-tenant Cloud では、PII を含むすべてのフィールドが含まれるため、サポートされていません。
  • numdaysstartDate を組み合わせて、取得するログの日付範囲を設定します。各パラメーターは任意で、相互に影響します。
    • どちらのパラメーターも含まれない場合は、当日のログのみが取得されます。
    • numDays: startDate からさかのぼって何日分のログを取得するかを示す整数です。省略した場合、または 0 に設定した場合は、startDate のログのみが取得されます。Multi-tenant Cloud では、numDays にそれより大きい値を設定しても、取得できる監査ログは最大 7 日分です。
    • startDate: Multi-tenant Cloud でのみサポートされます。取得対象の最新ログの日付を startDate=YYYY-MM-DD 形式で指定します。省略した場合、または明示的に当日の日付を指定した場合は、当日から numDays 分のログが取得されます。
  1. <API-endpoint>?<parameters> の形式で完全修飾エンドポイント URL を作成します。
  2. Web ブラウザーまたは PostmanHTTPie、cURL などのツールを使用して、完全修飾 API endpoint に HTTP GET リクエストを送信します。
API レスポンスには、改行区切りの JSON オブジェクトが含まれます。これらのオブジェクトには、監査ログがインスタンスレベルの bucket に同期される場合と同様に、スキーマ に記載されたフィールドが含まれます。その場合、監査ログは bucket 内の /wandb-audit-logs ディレクトリーに保存されます。

基本認証を使用する

APIキーを使用して基本認証で 監査ログ API にアクセスするには、HTTP リクエストの Authorization ヘッダーに、文字列 Basic、半角スペース 1 つ、続けて username:API-KEY 形式の文字列をbase64エンコードした値を設定します。つまり、usernameAPI-KEY: で区切った実際の値に置き換え、その結果をbase64エンコードします。たとえば、demo:p@55w0rd として認証する場合、ヘッダーは Authorization: Basic ZGVtbzpwQDU1dzByZA== になります。

監査ログ取得時に PII を除外する

セルフマネージド専用クラウド では、W&B の組織またはインスタンス管理者は、監査ログの取得時に PII を除外できます。Multi-tenant Cloud では、API endpoint は常に PII を含む監査ログの関連フィールドを返します。これは設定できません。 PII を除外するには、URL パラメーター anonymize=true を指定します。たとえば、W&B インスタンスの URL が https://mycompany.wandb.io で、過去 1 週間のユーザーアクティビティに関する監査ログを取得し、PII を除外したい場合は、次のような API endpoint を使用します。
https://mycompany.wandb.io/admin/audit_logs?anonymize=true&<additional-parameters>.

アクション

この表では、W&B が記録できるアクションをアルファベット順に示します。
ActionDefinition
artifact:createアーティファクトが作成されます。
artifact:delete アーティファクトが削除されます。
artifact:readアーティファクトが閲覧されます。
project:deleteプロジェクトが削除されます。
project:readプロジェクトが閲覧されます。
report:readレポートが閲覧されます。 1
run:delete_manyrun の一括削除が実行されます。
run:deleterun が削除されます。
run:stoprun が停止されます。
run:undelete_manyrun がゴミ箱から一括で復元されます。
run:update_manyrun が一括で更新されます。
run:updaterun が更新されます。
sweep:create_agentsweep agent が作成されます。
team:create_service_accountチーム用のサービスアカウントが作成されます。
team:createチームが作成されます。
team:deleteチームが削除されます。
team:invite_userユーザーがチームに招待されます。
team:uninviteユーザーまたはサービスアカウントのチームへの招待が取り消されます。
user:create_api_keyユーザーまたはサービスアカウントのAPIキーが作成されます。 1
user:createユーザーが作成されます。 1
user:deactivateユーザーが無効化されます。 1
user:delete_api_keyユーザーまたはサービスアカウントのAPIキーが削除されます。 1
user:initiate_loginユーザーがログインを開始します。 1
user:loginユーザーがログインします。 1
user:logoutユーザーがログアウトします。 1
user:permanently_deleteユーザーが完全に削除されます。 1
user:reactivateユーザーが再度有効化されます。 1
user:readユーザープロフィールが閲覧されます。 1
user:updateユーザーが更新されます。 1
1: Multi-tenant Cloud では、次の対象については 監査ログ は収集されません。
  • Open または Public のプロジェクト。
  • report:read アクション。
  • 特定の組織に紐付いていない User アクション。