こんにちは、セキュリティシフトレフトを体感したアーキテクトのやまぱんです 😊
補足コメントや質問、いいね、拡散、ぜひお願いします 🥺!
間違っていたら 優しく 教えてください!
GH-500 (GitHub Advanced Security) に受かりたい!
Secret Scanning や CodeQL を体系的に学びたい
DevSecOps を実践的に理解したい
GitHub のセキュリティ機能をマスターしたい
という方の参考になれば嬉しいです 🚀
本記事で取り上げる「GH-500 : GitHub Advanced Security Certification」は、GitHub が提供する認定資格の 1 つです。GitHub 関連の認定資格には他にも以下のようなものがあります (2026/01 時点)。
その他の GitHub 関連資格
-
GH-900 : GitHub Foundations (取得済 ✅)
GitHub の基礎知識を体系的に学べる認定資格。初心者向け。
GitHub Foundations (GH-900) 合格体験記と学習のコツ 🚀 -
GH-200 : GitHub Actions Certification (取得済 ✅)
CI/CD や自動化ワークフローの設計・運用に関する知識を問う資格。DevOps 志向の方におすすめ。
GitHub Actions (GH-200) 合格体験記と学習のコツ 🚀 -
GH-300 : GitHub Copilot Certification (取得済 ✅)
GitHub Copilot の機能とプロンプトエンジニアリングの実践的な知識を問う資格。AI を活用した開発ワークフローの最適化を学びたい開発者向け。
GitHub Copilot (GH-300) 合格体験記と学習のコツ 🚀 -
GH-100 : GitHub Administration Certification
GitHub Enterprise の管理・運用、組織設定、権限管理などを扱う資格。管理者・リーダー層向け。 -
GH-500 : GitHub Advanced Security Certification (今回取得! 🎉)
今回紹介する資格! セキュリティ機能 (Code scanning、Dependabot、Secret scanning など) の活用方法を学ぶ資格。セキュリティ担当者向け。
各資格の詳細や最新情報は MS Learn の GitHub 認定資格ページ や GitHub Docs の認定資格ページ を参照してください。
TL;DR
- GitHub Advanced Security 認定資格 (GH-500) に合格しました! (800 点 / 合格ライン 700 点) 🎉
- 試験対策は約 8 時間しかできなかったけど、以前に DevSecOps を感じるリポジトリ を作って検証していたのが大きかった!
- Dependabot / Secret Scanning / CodeQL の 実践経験 があると、かなり有利です。
背景
GitHub のセキュリティ機能を体系的に学びたくて、GH-500 を受験しました。
実は試験対策として使える時間があまり取れなくて、Udemy の問題集を Part 3 まで 3 周しただけ(約 8 時間)でした 😅
ただ、以前に DevSecOps を体感するためのデモリポジトリ を作って動かしていたので、その経験が試験にめちゃくちゃ活きました!
このリポジトリでは以下のセキュリティ機能を実際に使っていたので、試験の内容がすんなり理解できました:
- CodeQL (SAST)
- Trivy (コンテナ・IaC スキャン)
- Secret Scanning (Gitleaks + GitGuardian)
- Dependabot (SCA)
試験概要
Exam GH-500: GitHub Advanced Security は、GHAS (GitHub Advanced Security) の機能、設定、ベストプラクティスを問う試験です。
試験予約ページは下記です。
試験の基本情報
- 試験時間: 120 分
- 問題数: 約 60 問
- 試験形式: 選択問題 (単一選択、複数選択)、シナリオ問題
- 合格点: 700 点 (1000 点満点)
- 受験料: 99 USD
- 受験方法: オンライン監督付き試験またはテストセンター
- 有効期限: 2 年間 (取得後 2 年間有効)
- レベル: 中級 (Intermediate)
出題範囲 (Skills Measured)
公式の Study Guide に基づく出題範囲の日本語訳です。
| ドメイン | 内容 | 配点 |
|---|---|---|
| ドメイン 1 | GHAS のセキュリティ機能と性能について説明する | 15% |
| ドメイン 2 | シークレットスキャンを構成して使用する | 15% |
| ドメイン 3 | Dependabot と依存関係レビューを構成して使用する | 35% ← 最重要! |
| ドメイン 4 | CodeQL でコードスキャンを構成して使用する | 25% |
| ドメイン 5 | GHAS のベストプラクティス、結果、是正措置を講じる方法について説明する | 10% |
ドメイン 3 (Dependabot) が 35% と最大の配点 なので、ここを重点的に学習するのがポイントです!
ref: Study guide for GH-500 - MS Learn
各ドメインの詳細
ドメイン 1: GHAS のセキュリティ機能 (15%)
- GHAS の各機能 (Secret Scanning, Code Scanning, Dependabot) の違いと役割
- Security Overview の機能とメリット
- オープンソースプロジェクトで自動的に利用できる機能と GHEC/GHES との違い
ドメイン 2: シークレットスキャン (15%)
- シークレットスキャンと Push Protection の設定方法
- 有効性チェック (Validity Checks) の仕組み
- カスタムパターンの作成、ファイル除外設定
- アラートの受信者設定
ドメイン 3: Dependabot と依存関係レビュー (35%)
- 依存関係グラフ (Dependency Graph) の仕組み
- SBOM (Software Bill of Materials) とは何か
- Dependabot アラート / セキュリティアップデート / バージョンアップデートの違い
- Dependency Review の GitHub Actions ワークフロー作成
- ライセンスチェックやカスタム重大度しきい値の設定
- Dependabot ルールの作成 (低重大度アラートの自動却下など)
ドメイン 4: CodeQL でのコードスキャン (25%)
- CodeQL の仕組みとワークフロー設定
- トリガーイベントの設定 (PR 時、スケジュール実行)
- SARIF ファイルのアップロード
- サードパーティツールとの連携
- コンパイル言語とインタプリタ言語での違い
ドメイン 5: ベストプラクティス (10%)
- CVE / CWE を使ったアラートの説明と修正方法
- アラートの却下・クローズの判断プロセス
- CodeQL クエリスイートの種類
- Repository Rulesets での強制設定
結果
合格!! 🎉
スコアは 800 点 でした!(合格ライン 700 点)
セクションごとの成績 (理解度)
グラフの棒が長いほど理解度が高いことを示しています。
| ドメイン | 理解度 |
|---|---|
| GHAS のセキュリティ機能と性能について説明する | ■■■■■■■■□□ |
| シークレットスキャンを構成して使用する | ■■■■■■■■■□ |
| Dependabot と依存関係レビューを構成して使用する | ■■■■■■■■□□ |
| CodeQL でコードスキャンを構成して使用する | ■■■■■■■■□□ |
| GHAS のベストプラクティス、結果、是正措置を講じる方法 | ■■■■■■■■■■ |
ドメイン 5 (ベストプラクティス) が満点 だったのは、実際にリポジトリでセキュリティアラートを受けて対処した経験が活きたからだと思います!
全体的にどのドメインも高い理解度でしたが、昔に DevSecOps を実践していたおかげですね 💪
学習方法
使用した教材
1. 実践経験 (これが一番効いた!)
正直、試験対策よりも DevSecOps を体感するリポジトリを作って運用していた ことが一番大きかったです。
このリポジトリでは以下を実際に設定・運用していました:
- CodeQL による静的解析 (SAST)
- Trivy によるコンテナ・IaC スキャン
- Gitleaks + GitGuardian によるシークレット検出
- Dependabot による依存関係の脆弱性検出 (SCA)
- Azure Policy によるガバナンス自動化
特に「アラートが出たらどう対処するか」「どの設定をすればどんな効果があるか」を実体験していたので、試験のシナリオ問題がスムーズに解けました!
これから受ける方へ: 時間があればこういうリポジトリを自分で作ってみるのがおすすめです 💪 手を動かして覚えたことは、座学だけで覚えたことより圧倒的に定着しますよ!
2. Udemy 講座
試験直前の対策はこちらの Udemy 講座を使いました。
- Part 1 〜 Part 3 まで問題を 3 周
- 約 8 時間で一通り回した
- シンプルだけど必要十分で洗練されてて、本番も似たようなことが問われた
時間がなくて Part 1〜3 を 3 周しかできなかったけど、本当は 5 周くらいしたかった 😅
Dependabot の設定ファイル構文など、細かい部分で落とした問題がいくつかありました。
3. 公式ドキュメント
困ったときは公式ドキュメントを参照しました。
- GitHub Advanced Security の概要 - MS Learn
- Code security - GitHub Docs
- Study guide for GH-500 - MS Learn
試験のコツ
1. Dependabot を重点的に!
配点の 35% を占めるので、Dependabot 関連は徹底的に学習しましょう。
-
dependabot.ymlの書き方 - Dependabot アラート vs セキュリティアップデート vs バージョンアップデートの違い
- Dependency Review の GitHub Actions ワークフロー
2. 実際に触ってみる
座学だけより、実際にリポジトリで設定してみると理解が深まります。
- Secret Scanning を有効化してダミーの API キーをプッシュしてみる
- CodeQL ワークフローを作って、意図的に脆弱なコードを書いてアラートを出してみる
- Dependabot.yml を書いて、アップデート PR が自動で来るのを確認する
3. 設定ファイルの記述方法を覚える
試験では「この設定ファイルで何が起きるか」を問う問題が出ます。
-
dependabot.ymlの各パラメータ - CodeQL ワークフローのトリガー設定
- Secret Scanning の除外設定
受験した感想
試験対策に使えた時間は約 8 時間 でしたが、以前に DevSecOps を感じるリポジトリを作っていたおかげで合格できました!
「座学 + 実践」の両輪が大事だと改めて感じましたね 💪
これから受験する方は、ぜひ実際にリポジトリでセキュリティ機能を設定してみてください。アラートが出たときの対処法まで体験しておくと、試験がかなり楽になりますよ!
まとめ
- GH-500 (GitHub Advanced Security) に合格しました! (800 点)
- 試験対策は Udemy 3 周 (約 8 時間) だったけど、DevSecOps の実践経験 が効いた
- Dependabot が 35% を占めるので重点的に学習しよう
- 座学だけでなく、実際にリポジトリで設定・運用 してみるのがおすすめ
次は GH-100 (GitHub Administration) を狙おうかなと思っています 🚀
これを取れば GitHub 認定資格 全冠 です!! 🏆
参考
- GitHub Advanced Security - MS Learn
- Study guide for GH-500 - MS Learn
- GitHub Advanced Security の概要 - MS Learn Training
- Code security - GitHub Docs
- azure-devsecops-demo リポジトリ
