監査ログをフェッチした後、Pandas、Amazon Redshift、Google BigQuery、または Microsoft Fabric などのツールで分析できます。一部の監査ログ分析ツールは JSON をサポートしていません。分析前に JSON 形式の監査ログを変換するためのガイドラインと要件については、分析ツールのドキュメントを参照してください。
ログの形式の詳細については、監査ログのスキーマ と action を参照してください。
監査ログの保持
以下の推奨事項は、組織のガバナンスおよびコンプライアンスの義務を満たすために監査ログを保持するのに役立ちます。- 監査ログを特定の期間保持する必要がある場合、W&B では、ストレージバケットまたは Audit Logging API を使用して、定期的にログを長期保存に転送することを推奨します。
- Health Insurance Portability and Accountability Act of 1996 (HIPAA) の対象となる場合、必須の保持期間が終了する前に内部または外部の行為者が削除または変更できない環境で、監査ログを最低 6 年間保持する必要があります。HIPAA 準拠の 専用クラウド インスタンスで BYOB を使用する場合、管理対象ストレージ (長期保持ストレージを含む) に対してガードレールを設定する必要があります。
監査ログのスキーマ
このスキーマを使用して、各監査ログエントリで返されるフィールドを解釈します。次の表は、監査ログエントリに含まれる可能性のあるすべてのキーをアルファベット順に示しています。action や状況によっては、個々のログエントリに含まれるのは、これらのフィールドの一部のみである場合があります。Personally identifiable information (PII)
Personally identifiable information (PII) (メールアドレスや project、チーム、report の名前など) は、API エンドポイント のオプションでのみ利用可能です:- セルフマネージド および 専用クラウド では、組織管理者が監査ログを取得する際に PII を除外 できます。
- Multi-tenant Cloud では、API エンドポイント は PII を含む監査ログの関連フィールドを常に返します。これは設定できません。
始める前に
監査ログを取得する前に、ご利用のデプロイメントタイプについて次の前提条件を満たしていることを確認してください。-
監査ログを取得できるのは組織レベルの管理者です。
403エラーが返される場合は、ご自身またはサービスアカウントに適切な権限があることを確認してください。 -
Multi-tenant Cloud: 複数の Multi-tenant Cloud 組織のメンバーである場合は、Default API organization を設定する必要があります。この設定によって、監査ログ API の呼び出しのルーティング先が決まります。設定していない場合は、次のエラーが返されます。
デフォルトの API 組織を指定するには、次の手順を実行します。
- プロフィール画像をクリックし、User Settings をクリックします。
- Default API organization で組織を選択します。
監査ログを取得する
W&B Audit Logging API を使用して監査ログを取得します。エンドポイント、クエリパラメーター、応答の形式は、デプロイメントタイプによって異なります。- Multi-tenant Cloud
- 専用クラウドおよびセルフマネージド
Multi-tenant Cloud の場合は、このタブを使用します。Multi-tenant の監査ログは Enterprise プランでのみ利用できます。Audit Logging API のエンドポイントは次のとおりです。以下のクエリパラメーターがサポートされます:応答は次の例のようになります:次のページを取得するには、解決済みの同じ日付範囲でリクエストを繰り返します。1: Multi-tenant Cloud では、次の対象については監査ログが収集されません。
startDate: 日付範囲の最初の UTC カレンダー日。YYYY-MM-DD形式を使用します。startDateを省略した場合、範囲は今日の UTC 午前 0 時から、またはnumDaysを設定した場合は今日のnumDays日前から開始します。numDays:0から7までの整数。W&B はstartDateから次のnumDays日間のログを取得します。numDaysを省略するか0に設定した場合、W&B は 1 日分のログを取得します。limit: 返される監査ログのエントリの最大数。正の整数を最大1,000,000まで使用します。デフォルトは1,000,000です。cursor: 前の応答のnext_cursorフィールドから取得した不透明なカーソル。解決済みの同じ日付範囲でカーソルを再利用します。
audit_logs: 監査ログのエントリの配列。各エントリには 監査ログのスキーマ で説明されているフィールドが含まれます。range_start_time: 解決済みの日付範囲の開始時刻 (UTC) 。range_end_time: 解決済みの日付範囲の終了時刻 (排他的、UTC) 。count: この応答で返された監査ログのエントリの数。next_cursor: 次の結果ページ用の不透明なカーソル。このフィールドがnullの場合、選択した日付範囲にこれ以上の結果はありません。
[BASE64-USERNAME-API-KEY]:[USERNAME]:[API-KEY]形式の base64 エンコード文字列。[NEXT-CURSOR]: 前の応答のnext_cursorの値。
cursor を前の応答の next_cursor の値に設定します。next_cursor が null になるまで続けます。- Open または Public の project。
report:readaction。- 特定の組織に紐付いていない
Useraction。
Basic 認証を使用する
監査ログ API へのリクエストは、毎回認証する必要があります。APIキーを使用した Basic 認証で監査ログ API にアクセスするには、HTTP リクエストのAuthorization ヘッダーに、文字列 Basic、スペース、[USERNAME]:[API-KEY] 形式の文字列を base64 エンコードしたもの、の順に続けた値を設定します。つまり、ユーザー名と APIキーを実際の値に置き換えて : 文字で区切り、その結果を base64 エンコードします。たとえば、demo:p@55w0rd として認可する場合は、ヘッダーを Authorization: Basic ZGVtbzpwQDU1dzByZA== に設定します。
action
各監査ログエントリには、次のいずれかの action が記録されます。ログエントリ内のaction フィールドを解釈する際は、このリファレンスを参照してください。次の表は、W&B が記録できる action をアルファベット順に示しています。