Skip to main content

エンタープライズの監査ログ API を使う

REST API を使って、エンタープライズ イベントをプログラムで取得できます。

この機能を使用できるユーザー

Enterprise owners and site administrators can use the audit log API.

Audit log API を使用する

監査ログは、REST API を使って操作できます。

API 応答のタイムスタンプと日付フィールドは UTC エポック ミリ秒単位で計測されます。

知的財産が確実にセキュアに保たれるようにし、エンタープライズのコンプライアンスを維持するために、監査ログ REST API を使って監査ログのデータのコピーを保持し、モニタリングできます: - 組織またはリポジトリの設定へのアクセス

  • アクセス許可の変更
  • 組織、リポジトリ、またはチームの追加または削除されたユーザー
  • 管理者に昇格されるユーザー
  • GitHub App のアクセス許可の変更
  • の複製、フェッチ、プッシュなどの Git イベント (有効にする必要があります。「エンタープライズの監査ログの構成」を参照)

監査ログには、Enterprise に影響するアクティビティによってトリガーされるイベントの一覧が表示されます。 GitHub Enterprise Server の監査ログは、エンタープライズ所有者が別の保持期間を構成していない限り、無期限に保持されます。 詳細については、「エンタープライズの監査ログの構成」を参照してください

既定では、過去 3 か月のイベントのみが表示されます。 古いイベントを表示するには、created パラメーターを使って日付範囲を指定します。 詳しくは、「検索構文を理解する」を参照してください。

監査ログ REST API の詳細については、「GitHub Enterprise の管理」と「組織」を参照してください。

例 1: 特定の日付を対象としたエンタープライズ内のすべてのイベント (ページ分割あり)

ページベースの改ページ位置の自動修正を使用できます。 改ページ位置の自動修正について詳しくは、「REST API 内での改ページ位置の自動修正の使用」をご覧ください。

次のクエリは、avocado-corp エンタープライズで 2022 年 1 月 1 日に作成された監査ログ イベントを検索し、ページネーションを使用して 1 ページあたり最大 100 件の項目で最初のページを返します。 改ページ位置の自動修正について詳しくは、「REST API 内での改ページ位置の自動修正の使用」をご覧ください。

curl -H "Authorization: Bearer TOKEN" \
--request GET \
"https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100"

例 2: 特定の日付とアクターを対象としたエンタープライズにおける pull request のイベント

createdactor のように複数の検索語句を指定するには、整形された URL の中で + 記号または ASCII 文字コード %20 で区切ります。

次のクエリは、イベントが avocado-corp エンタープライズで 2022 年 1 月 1 日以降に発生し、アクションが octocat ユーザーによって実行された pull request の監査ログ イベントを検索します。

curl -H "Authorization: Bearer TOKEN" \
--request GET \
"https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat"