注記
重要: このコネクタを使用するには、GitHub Enterprise アカウントが必要です。GitHub 個人用アカウントまたは組織アカウントはサポートされていません。
GitHub 監査ログのソース設定
と GitHub の統合
Amazon Telemetry パイプラインを使用すると、GitHub Enterprise Cloud から監査ログを収集できます。GitHub Enterprise は、最新の開発の複雑なワークフロー用に設計されたエンタープライズグレードのソフトウェア開発プラットフォームです。GitHub Enterprise Cloud は、GitHub Enterprise のクラウドベースのソリューションであり、GitHub のサーバーでホストされています。
GitHub による認証
監査ログを読み込むには、パイプラインが GitHub アカウントで認証される必要があります。エンタープライズスコープ
個人用アクセストークンとして認証するトークンを生成します。
GitHub アカウントの認証情報を使用して GitHub
にサインインします。 このエンドポイントを使用するには、認証されたユーザーがエンタープライズ管理者である必要があります。
GitHub の [Personal access tokens (classic)] ページを開き、[Generate new token (classic)] を見つけ、GitHub の手順に従って、スコープが
read:audit_logで有効期限のないトークンを生成します。この新しいトークンを、AWS Secrets Manager のキー
personal_access_tokenの下にあるシークレットに保存します。
GitHub アプリとして認証するプライベートキーを生成します。
GitHub アカウントの認証情報を使用して GitHub
にサインインします。 GitHub アプリに「管理」組織のアクセス許可
(読み込み) が付与されていることを確認します。 「GitHub Apps の秘密キーの管理
」の手順に従って、プライベートキーを生成します。 このプライベートキーを AWS Secrets Manager のキー
private_keyの下にあるシークレットに保存し、GitHub アプリ名をキーapp_idの下に保存します。
CloudWatch パイプラインの設定
GitHub Enterprise Cloud から監査ログを読み込むようにパイプラインを設定するときは、データソースとして GitHub Audit Logs を選択します。統合のスコープに基づいてソースタイプをエンタープライズまたは組織として選択し、選択したスコープに従ってエンタープライズ名や組織名などの必要な情報を入力します。パイプラインを作成すると、選択した CloudWatch Logs ロググループでデータを使用できます。
サポートされているオープンサイバーセキュリティスキーマフレームワークイベントクラス
この統合では、OCSF スキーマバージョン v1.5.0 と、アカウント変更 (3001)、API アクティビティ(6003)、およびエンティティ管理 (3004) にマッピングする GitHub アクション
アカウント変更には、次のアクションが含まれます。
org.enable_two_factor_requirement
org.disable_two_factor_requirement
two_factor_authentication.add_factor
two_factor_authentication.enabled
two_factor_authentication.disabled
two_factor_authentication.remove_factor
org.disable_saml
org.enable_saml
personal_access_token.access_restriction_disabled
personal_access_token.access_restriction_enabled
personal_access_token.expiration_limit_set
personal_access_token.expiration_limit_unset
API アクティビティには、次のアクションが含まれます。
repository_secret_scanning_custom_pa....create
repository_secret_scanning_custom_pa....update
repository_secret_scanning_custom_pa....delete
repository_secret_scanning_custom_pa....publish
repository_secret_scanning_custom_p....enabled
repository_secret_scanning_custom_p....disabled
repository_secret_scanning_non_provi....enabled
repository_secret_scanning_non_provi....disabled
repository_secret_scanning_generic_s....enabled
repository_secret_scanning_generic_s....disabled
business_secret_scanning_custom_pattern.create
business_secret_scanning_custom_pattern.update
business_secret_scanning_custom_pattern.delete
business_secret_scanning_custom_pattern.publish
business_secret_scanning_custom_patt....enabled
business_secret_scanning_custom_patt....disabled
business_secret_scanning_generic_secrets.enabled
business_secret_scanning_generic_secrets.disabled
business_secret_scanning_non_provide....enabled
business_secret_scanning_non_provide....disabled
org_secret_scanning_non_provider_patt....enabled
org_secret_scanning_non_provider_patt....disabled
org_secret_scanning_generic_secrets.enabled
org_secret_scanning_generic_secrets.disabled
org_secret_scanning_custom_pattern.create
org_secret_scanning_custom_pattern.update
org_secret_scanning_custom_pattern.delete
org_secret_scanning_custom_pattern.publish
エンティティ管理には、次のアクションが含まれます。
oauth_application.destroy
oauth_application.generate_client_secret
oauth_application.remove_client_secret
oauth_application.revoke_all_tokens
oauth_application.revoke_tokens
oauth_application.transfer
personal_access_token.auto_approve_grant_requests_enabled
personal_access_token.auto_approve_grant_requests_disabled
ip_allow_list.disable
ip_allow_list.enable_for_installed_apps
ip_allow_list.disable_for_installed_apps
ip_allow_list_entry.create
ip_allow_list_entry.update
ip_allow_list_entry.destroy
repository_secret_scanning.disable
repository_secret_scanning_automatic....disabled
repository_secret_scanning_push_prot....disable
repository_secret_scanning_push_prot....enable
oauth_application.create
oauth_application.reset_secret
auto_approve_personal_access_token_req....enabled
auto_approve_personal_access_token_req....disabled
ip_allow_list.enable
ip_allow_list.disable_user_level_enforcement
ip_allow_list.enable_user_level_enforcement
repository_secret_scanning.enable
repository_secret_scanning_automatic....enabled
repository_secret_scanning_push_prot....enable
repository_secret_scanning_push_prot....add
repository_secret_scanning_push_prot....remove
repository_secret_scanning_push_prot....disable
secret_scanning.enable
secret_scanning.disable
secret_scanning_new_repos.enable
org_secret_scanning_automatic_validi....enabled
org_secret_scanning_automatic_validi....disabled
org_secret_scanning_push_protection_b....add
org_secret_scanning_push_protection_b....remove
org_secret_scanning_push_protection_b....disable
org_secret_scanning_push_protection_b....enable
business_secret_scanning_automatic_va....enabled
business_secret_scanning_automatic_va....disabled
business_secret_scanning_push_protection.enable
business_secret_scanning_push_protection.disable
business_secret_scanning_push_protection.enabled_for_new_repos
business_secret_scanning_push_protection.disabled_for_new_repos
business_secret_scanning_push_prote....enable
business_secret_scanning_push_prote....update
business_secret_scanning_push_prote....disable