GitHub の advisory に報告者から見えないコメント、REST API では返らない
脆弱性報告の advisory 上で、報告者に見せずにメンテナー同士で相談できる confidential コメント。見える人、取り消せない選択、API と audit log の扱い、使える条件を整理する。
脆弱性報告の advisory 上で、報告者に見せずにメンテナー同士で相談できる confidential コメント。見える人、取り消せない選択、API と audit log の扱い、使える条件を整理する。
GitHub のリポジトリセキュリティアドバイザリで、confidential コメントが使えるようになった(GitHub Changelog、2026年10月2日)。このコメントを読めるのはリポジトリに write 権限を持つ人だけで、報告者や write 権限のない招待コラボレーターには表示されず、通知も届かない。報告を受けたメンテナーが、報告者の目を気にせず advisory の上で相談できる。
使える範囲には条件がある。対象は private vulnerability reporting(PVR)を有効にした public リポジトリで、プランは GitHub Free、GitHub Pro、GitHub Team、GitHub Enterprise Cloud の4つ。投稿後に通常コメントへ切り替えることはできず、REST API はこのコメントを返さない。
Changelog によると、これまで advisory 上のコメントは報告者を含む全コラボレーターに見えていた。不正利用の疑い、調査の詳細、対応の段取りを話すには会話を別の場所へ移すしかなく、その分だけ advisory の履歴から抜け落ちていた。
今回の変更で、こうしたやり取りを advisory のタイムラインに残せる。confidential コメントはタイムライン上で明確に区別して表示される。報告者への返信とチーム内のメモが同じ advisory に並ぶので、後から経緯を追うときに別のチャットやメールを探し回らずに済む。
コメント欄の下にある「Confidential. Only maintainers will see this comment」を選んでから投稿する。操作はこれだけだ。
気をつけたいのは、投稿後に confidential と通常コメントを切り替えられない点だ。報告者に伝えるつもりの返答を confidential で書けば、報告者には届かない。逆に、報告者についての見立てや未確定の調査メモを通常コメントで出せば、その時点で報告者から見える。切り替えでは直せないので、投稿ボタンを押す前の確認が運用の要になる。チームで使い始めるなら、何を confidential に書くかを先に決めておくほうが事故は少ない。
閲覧の可否は、コメントが書かれた時点ではなく現在のリポジトリ権限に従う。write 権限を失った人は、以前読めた confidential コメントも読めなくなる。メンバーの異動や外部協力者の権限整理をすれば、その人は以後アクセスできない。
もう一つ、confidential コメントの閲覧は audit log に記録される。誰が内部の議論を見たかを後から確認できる。
| 項目 | confidential コメントの扱い |
|---|---|
| 閲覧できる人 | リポジトリに write 権限を持つ人だけ |
| 報告者・write 権限のない招待コラボレーター | 表示されず、通知も届かない |
| 権限を失った人 | 読めなくなる |
| タイムライン | 区別して表示される |
| 閲覧の記録 | audit log に残る |
| 通常コメントとの切り替え | 投稿後はできない |
| API | GraphQL API で取得でき、REST API では返らない |
出典:GitHub Changelog「Confidential comments on repository security advisories」(2026年10月2日)
confidential コメントは GraphQL API で取得でき、REST API では返らない。advisory のコメントを REST で集めて社内のチケットに転記したり、トリアージ用のツールに流したりしている場合、そこに confidential コメントは現れない。内部の議論まで外部ツールに取り込みたいなら、取得経路を GraphQL に寄せる必要がある。逆に、REST で集めた内容を広く共有している仕組みなら、confidential コメントが混ざらない挙動はそのまま残る。
GraphQL でどのフィールドを見れば confidential かどうかを判別できるかは、Changelog には書かれていない。
対象は PVR を有効にした public リポジトリに限られる。列挙されたプランは Free、Pro、Team、Enterprise Cloud で、GitHub Enterprise Server は含まれていない。自分のリポジトリで使えるかは、まず PVR が有効かどうかで決まる。
PVR まわりは10月1日にも変更が続いている。報告が必須項目つきのフォームになった件は非公開脆弱性報告のフォーム化、報告件数の制限は脆弱性報告の件数制限にまとめた。報告の受け付けから内部の相談までが advisory の中で完結する方向の変更が、同じ週にそろって出た形だ。