Audit log にアクセスする
メモ
Webhook は、特定のユース ケースの監査ログまたは API ポーリングの代替策として適している場合があります。 Webhook は、リポジトリ、Organization、または Enterprise で特定のイベントが発生したときに GitHub がサーバーに通知する方法です。 Enterprise、Organization、またはリポジトリで特定のイベントが発生したときに学習してログを記録するだけの場合、API や監査ログの検索と比較して、Webhook がより効率的である可能性があります。 「Webhook ドキュメント」をご覧ください。
監査ログには、過去 180 日以内に Organization に影響を及ぼすアクティビティによってトリガーされたイベントがリストされます。 Organization の Audit log にアクセスできるのはオーナーのみです。
既定では、過去 3 か月のイベントのみが表示されます。 古いイベントを表示するには、created パラメーターを使って日付範囲を指定します。 「検索構文を理解する」をご覧ください。
- GitHub の右上隅にあるプロフィール画像をクリックしてから、[ Your organizations] をクリックします。1. 組織の隣の [設定] をクリックします。1. サイドバーの [Archive] セクションで、[ Logs] をクリックしてから、[Audit log] をクリックします。
Audit log を検索する
監査ログ検索
実行されたアクションに基づく検索
特定のイベントを検索するには、クエリで action 修飾子を使用します。 監査ログに一覧表示されているアクションは、さまざまなカテゴリにグループ化されます。 各カテゴリの全イベントの一覧については、「Organization の監査ログ イベント」を参照してください。
| カテゴリ名 | 説明 |
|---|---|
account | 組織アカウントに関連するすべてのアクティビティを含みます。 |
advisory_credit | GitHub Advisory Database のセキュリティ アドバイザリのコントリビューターのクレジットに関連するすべてのアクティビティが対象です。 詳しくは、「リポジトリ セキュリティ アドバイザリについて」をご覧ください。 |
auto_approve_personal_access_token_requests | fine-grained personal access token に対する組織の承認ポリシーに関連するアクティビティを含みます。 詳しくは、「組織の個人用アクセス トークン ポリシーを設定する」をご覧ください。 |
billing | 組織の請求関連に関するすべてのアクティビティが含まれています。 |
business | Enterprise のビジネス設定に関連するアクティビティを含みます。 |
code-scanning | 組織のコードスキャンアラートに関連する全ての活動が含まれています。 |
codespaces | 組織のCodespacesに関連するすべてのアクティビティが含まれています。 |
copilot | GitHub Copilot ビジネス または GitHub Copilot Enterprise サブスクリプションに関連するすべてのアクティビティが含まれています。 |
dependabot_alerts | 既存のリポジトリの Dependabot alerts に対する Organization レベルの設定アクティビティが含まれます。 詳しくは、「Dependabot アラートについて」をご覧ください。 |
dependabot_alerts_new_repos | Organization 内に作成された新しいリポジトリ内の Dependabot alerts に対する Organization レベルの構成アクティビティが含まれます。 |
dependabot_security_updates | 既存のリポジトリのDependabot security updates用 Organization レベルの構成アクティビティが含まれます。 詳しくは、「Dependabot セキュリティの更新の構成」をご覧ください。 |
dependabot_security_updates_new_repos | Organization 内に作成された新しいリポジトリ内の Dependabot security updates の Organization レベルの構成アクティビティが含まれます。 |
dependency_graph | リポジトリの依存関係グラフ用組織レベルの構成アクティビティが含まれます。 詳しくは、「依存関係グラフについて」をご覧ください。 |
dependency_graph_new_repos | Organization 内に作成された新しいリポジトリの Organization レベルの構成アクティビティが含まれます。 |
discussion_post | チーム ページに投稿されたディスカッションに関連するすべてのアクティビティが含まれます。 |
discussion_post_reply | チーム ページに投稿されたディスカッションへの返答に関連するすべてのアクティビティが含まれます。 |
enterprise | Enterprise 設定に関連するアクティビティが含まれます。 |
hook | webhookに関連するすべてのアクティビティを含みます。 |
integration_installation | アカウント内にインストールされた統合に関連するアクティビティが含まれます。 |
integration_installation_request | Organization 内で使用するインテグレーションをオーナーが承認するよう求める、Organization メンバーからのリクエストに関連するすべてのアクティビティが含まれます。 |
| これらのステップを実行してください: | |
issue | 問題の削除に関連するアクティビティは含まれています。 |
marketplace_agreement_signature | GitHub Marketplace 開発者同意書への署名に関連するすべてのアクティビティが含まれています。 |
marketplace_listing | GitHub Marketplace のアプリの一覧表示に関連するすべてのアクティビティが含まれます。 |
members_can_create_pages | 組織内のリポジトリにある GitHub Pages サイトの公開管理に関連するすべてのアクティビティが含まれます。 詳しくは、「Organization の GitHub Pages サイトの公開を管理する」をご覧ください。 |
org | 組織メンバーシップに関連する活動が含まれます。 |
| これらのステップを実行してください: | |
org_secret_scanning_automatic_validity_checks | secret scanning の自動有効性チェックの有効化と無効化に関連する組織レベルのアクティビティは含まれています。 詳しくは、「組織のセキュリティおよび分析設定を管理する」をご覧ください。 |
org_secret_scanning_custom_pattern | secret scanning カスタム パターンに関連する Organization レベルのアクティビティが含まれます。 詳しくは、「シークレット スキャンのカスタム パターンの定義」をご覧ください。 |
organization_default_label | Organization のリポジトリのデフォルト ラベルに関連するすべてのアクティビティが対象です。 |
oauth_application | OAuth apps に関連するすべてのアクティビティが含まれます。 |
packages | GitHub Packages に関連するすべてのアクティビティが含まれます。 |
payment_method | GitHubに対する組織の支払い方法に関連するすべてのアクティビティが含まれます。 |
personal_access_token | 組織内のfine-grained personal access tokenに関連するアクティビティを含んでいます。 詳しくは、「個人用アクセス トークンを管理する」をご覧ください。 |
profile_picture | 組織のプロフィール画像に関連するすべてのアクティビティが含まれます。 |
project | projects に関連するすべてのアクティビティが含まれます。 |
protected_branch | 保護されたブランチに関連するすべてのアクティビティが対象です。 |
repo | 貴社が所有するリポジトリに関連するアクティビティを含みます。 |
repository_advisory | GitHub Advisory Database のセキュリティ アドバイザリに関連するリポジトリレベルのアクティビティが含まれます。 詳しくは、「リポジトリ セキュリティ アドバイザリについて」をご覧ください。 |
repository_content_analysis | プライベート リポジトリのデータ使用の有効化または無効化に関連するすべてのアクティビティが含まれます。 詳しくは、「リポジトリのセキュリティと分析設定を管理する」をご覧ください。 |
repository_dependency_graph | プライベート リポジトリの依存関係グラフの有効化または無効化に関連するリポジトリレベルのアクティビティが含まれます。 詳しくは、「依存関係グラフについて」をご覧ください。 |
repository_secret_scanning_automatic_validity_checks | secret scanning の自動有効性チェックの有効化と無効化に関連するリポジトリ レベルのアクティビティが含まれています。 詳しくは、「リポジトリのシークレット スキャンの有効化」をご覧ください。 |
repository_secret_scanning_custom_pattern | secret scanning カスタムパターンに関連するリポジトリレベルのアクティビティが含まれます。 詳しくは、「シークレット スキャンのカスタム パターンの定義」をご覧ください。 |
repository_secret_scanning_custom_pattern_push_protection | secret scanning のカスタム パターンのプッシュ保護に関連するリポジトリ レベルのアクティビティを含んでいます。 詳しくは、「シークレット スキャンのカスタム パターンの定義」をご覧ください。 |
repository_secret_scanning_push_protection | secret scanningプッシュ保護に関連するリポジトリレベルのアクティビティが含まれます。 詳しくは、「プッシュ保護について」をご覧ください。 |
repository_vulnerability_alert |
[Dependabot alerts](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts) に関連するすべてのアクティビティが含まれます。
| |
| repository_vulnerability_alerts | Dependabot alerts に対するリポジトリレベルの構成アクティビティが含まれます。
| |
| |
| |
| |
| restore_member | Organization のオーナーがメンバーを復帰させるときにトリガーされます。 詳しくは、「組織の以前のメンバーの復帰」をご覧ください。|
| sponsors| スポンサー ボタンに関連するすべてのイベントは含まれています (「リポジトリにスポンサーボタンを表示する」を参照してください)
| |
| team | 組織内のチームに関連するすべてのアクティビティが含まれます。
| workflows | GitHub Actions ワークフローに関連するアクティビティが含まれます。
次の用語を使用すれば、特定の一連の行動を検索できます。 次に例を示します。
-
`action:team` は、チーム カテゴリ内でグループ化されたすべてのイベントを検索します。 -
`-action:hook` は、Webhook カテゴリのすべてのイベントを除外します。
各カテゴリには、フィルタできる一連の関連アクションがあります。 次に例を示します。
-
`action:team.create` は、チームが作成されたすべてのイベントを検索します。 -
`-action:hook.events_changed` は、Webhook 上のイベントが変更されたすべてのイベントを除外します。
アクション時間に基づく検索
`created` 修飾子を使用して、発生した日時に基づいて監査ログ内のイベントをフィルター処理します。 日付の書式設定は、[ISO8601](http://en.wikipedia.org/wiki/ISO_8601) 標準の `YYYY-MM-DD` (年-月-日) に従う必要があります。日付の後にオプションの時刻情報 `THH:MM:SS+00:00` を追加して、時間、分、秒で検索することもできます。 これは、`T` の後に `HH:MM:SS` (時-分-秒)、UTC オフセット (`+00:00`) が続きます。
日付に対して検索を行う場合、結果をさらにフィルタリングするためにより大きい、より小さい、範囲の修飾子を利用できます。 詳しくは、「検索構文を理解する」をご覧ください。
次に例を示します。
-
`created:2014-07-08` は、2014 年 7 月 8 日に発生したすべてのイベントを検索します。 -
`created:>=2014-07-08` は、2014 年 7 月 8 日またはそれ以降に発生したすべてのイベントを検索します。 -
`created:<=2014-07-08` は、2014 年 7 月 8 日またはそれより前に発生したすべてのイベントを検索します。 -
`created:2014-07-01..2014-07-31` は、2014 年 7 月の月に発生したすべてのイベントを検索します。
メモ
監査ログには、過去 180 日間のデータが含まれています。
場所に基づく検索
修飾子 country を使用すると、発信元の国に基づいて監査ログ内のイベントをフィルター処理できます。 国の 2 文字のショートコードまたはフル ネームを使用できます。 名前に空白がある国は引用符で囲む必要があることに注意してください。 次に例を示します。
-
`country:de` は、ドイツで発生したすべてのイベントを検索します。 -
`country:Mexico` は、メキシコで発生したすべてのイベントを検索します。 -
`country:"United States"`はアメリカ合衆国で発生したイベントをすべて検出します。
これらのステップを実行してください:
Audit log をエクスポートする
[エクスポート] ドロップダウン メニューを使うと、ログを JSON データまたはコンマ区切り値 (CSV) ファイルとしてエクスポートできます。
エクスポートの結果をフィルター処理するには、 [エクスポート] ドロップダウン メニューを使う前に、以下のサポートされている修飾子を 1 つ以上使って検索してください。
| 修飾子 | 値の例 |
|---|---|
action | team.create |
actor | octocat |
user | codertocat |
org | octo-org |
repo | octo-org/documentation |
created | 2019-06-01 |
エクスポートされたログの出力ファイルには、以下のキーと値があります。
| Key | 値の例 |
|---|---|
action | team.create |
actor | octocat |
user | codertocat |
actor_location.country_code | US |
org | octo-org |
repo | octo-org/documentation |
created_at | 1429548104000 (タイムスタンプは Epoch からの経過時間をミリ秒で示します。) |
data.email | octocat@nowhere.com |
data.hook_id | 245 |
data.events | ["issues", "issue_comment", "pull_request", "pull_request_review_comment"] |
data.events_were | ["push", "pull_request", "issues"] |
data.target_login | octocat |
data.old_user | hubot |
data.team | octo-org/engineering |
Audit log API を使用する
GitHub Enterprise Cloud を使用する Organization は、GraphQL API と REST API を使用して監査ログを操作できます。 詳細については、GitHub Enterprise Cloud ドキュメントを参照してください。
参考資料
-
[AUTOTITLE](/organizations/keeping-your-organization-secure) -
[AUTOTITLE](/organizations/managing-membership-in-your-organization/exporting-member-information-for-your-organization)