GitHub Enterprise Cloud with data residency(GHEC DR)向けに、secret scanning の public monitoring が public preview になった。自 enterprise が所有しない公開リポジトリ上のコミットや issue・pull request コメント、gist などを横断し、公開された credential をリアルタイムで検知する。従来のリポジトリ内 secret scanning を github.com 全体の公開面へ広げる位置づけ。

#データレジデンシーでの帰属

GHEC DR では enterprise membership による帰属は使えない。データレジデンシー環境は github.com と厳密なテナント分離を保ち、enterprise のメンバー名簿は境界を越えて共有されない。

帰属は検証済みドメイン一致のみ。

  • コミット作者のメールが enterprise が検証済みのドメインと一致すると、その secret は enterprise に帰属する
  • 個人アカウントでも、検証済みドメインのメールでコミットしていれば対象になりうる
  • メンバーが個人メールだけで公開リポジトリに push した場合、DR enterprise 側では帰属されない

一致したアラートは暗号化され、指定した地理に留まった enterprise ダッシュボードへ直接配信される。

#利用条件と有効化

対象は GHEC DR の GitHub Enterprise Cloud 顧客。GitHub Advanced Security または GitHub Secret Protection の有効ライセンスが必要。public monitoring 自体に追加料金はない。

enterprise owner または enterprise security manager が enterprise の Security 設定から機能を有効にする。有効化後、enterprise レベルのセキュリティ概要と Public monitoring 専用ページにアラートが表示される。

DR 環境で帰属を機能させるには、事前に enterprise または organization でドメイン検証を済ませ、開発者が公開コミットに検証済みドメインのメールを使う運用が前提になる。

#プログラム連携

public monitoring のアラートは REST API と enterprise webhook secret_scanning_public_monitoring_alert で扱える。一覧 API の attribution クエリは DR では実質 verified_domain のみが意味を持つ。

#参考文献