GitHub Enterprise Cloud で public monitoring を有効にした enterprise 向け。エンタープライズセキュリティダッシュボードから公開リークの attributed findings を triage し、プログラムからは REST と enterprise webhook でインシデント応答パイプラインへ取り込める。enterprise owner または enterprise security manager が対象。

#Alert management

  • Dismissed または Fixed でアラートを閉じ、任意コメントを残す。状況が変われば再オープン可能
  • アラートに対する操作と状態変更の activity timeline を参照可能
  • 一覧は repository、committer、secret type、帰属方法(membership または verified domain)、state(open / closed)で絞り込み・並べ替え可能
  • アラートを閉じても露出した credential の失効や公開リポジトリからの削除は行われない

#Always-on validity checks

対応 secret type について token validity を継続的に判定。アラート上の表示は Active / Inactive / Unknown。REST の validity クエリおよびレスポンス列挙値は active / inactive / unknown。

#REST API

呼び出し主体は enterprise owner または enterprise security manager。enterprise で public monitoring が有効であること。OAuth アプリトークンと classic PAT は repo または security_events スコープが必要。

  • GET /enterprises/{enterprise}/secret-scanning/public-monitoring-alerts — 一覧。デフォルトは新しい順。repository、secret_author、secret_type、attribution(member_activity / verified_domain)、validity でフィルタ可能
  • GET /enterprises/{enterprise}/secret-scanning/public-monitoring-alerts/{alert_number} — 単一アラート
  • PATCH /enterprises/{enterprise}/secret-scanning/public-monitoring-alerts/{alert_number} — state(open / resolved)、resolution(dismissed / fixed)、任意の resolution_comment(280 文字以内)で更新

一覧・詳細レスポンスには secret type、帰属、露出 location などのメタデータを含む。

#Enterprise webhooks

enterprise スコープで secret_scanning_public_monitoring_alert を購読。利用可能レベルは business。action は created(enterprise に帰属した secret の新規検知)、dismissed、reopened、validated(enterprise アラート側の validity 変更。payload の validity はソースリポジトリのアラートではない)。

#利用条件

public monitoring は GitHub Enterprise Cloud(データレジデンシー付きを含む)で public preview。GitHub Advanced Security または GitHub Secret Protection ライセンスに追加料金なしで含まれる。

#参考文献