GitHub Advanced Security
(1 day)
Course Description
GitHub Advanced Security (GHAS) plays a crucial role in enhancing the security posture of software development projects on GitHub. It provides a comprehensive set of tools and features designed to identify and address security vulnerabilities throughout the development lifecycle. By integrating security directly into the development process with GHAS, your team can build more secure and reliable software. The course will explore how to utilize GHAS to maximize security impact and understand GHAS and its role in the security ecosystem.Learning Objectives
-
Understand and configure GitHub Advanced Security features.
-
Implement Dependabot for automated dependency updates.
-
Set up and manage secret scanning to protect sensitive information.
-
Configure code scanning using CodeQL for vulnerability detection.
-
Analyze and interpret CodeQL scan results.
-
Administer security policies and manage sensitive data within GitHub
Who Should Attend
This course is intended for students who want to understand and implement advanced security practices with the help of GitHub Advanced Security (GHAS). They will learn how to significantly enhance software development processes and create a more resilient and secure development ecosystem using developer-first solutions to unlock the ability to keep code, supply chain, and secrets secure before you push to production. They will learn how GHAS gives security teams visibility into the cross-organizational security posture and supply chain and unparalleled access to curated security intelligence from millions of developers and security researchers around the world.
Prerequisites
- A GitHub account
- Basic understanding of GitHub fundamentals
Course Outline
Module 1: Introduction to GitHub Advanced Security
Define GHAS and the importance of its integral featuresHow to utilize GHAS to get the most impact
Understand GHAS and its role in the security ecosystem
Module 2: Configure Dependabot security updates on your GitHub repo
Manage your dependencies on GitHubDependabot alerts
Dependabot security updates
Manage Dependabot notifications and reports
Dependency review
Exercise - Configure Dependabot security updates
Module 3: Configure and use secret scanning in your GitHub repository
What is secret scanning?Configure secret scanning
Use secret scanning
Module 4: Configure code scanning on GitHub
What is code scanning?Enable code scanning with third party tools
Configure code scanning
Configure code scanning exercise
Module 5: Identify security vulnerabilities in your codebase by using CodeQL
Prepare a database for CodeQL
Run CodeQL in a database
Understand CodeQL results
Troubleshoot CodeQL results
Module 6: Code scanning with GitHub CodeQL
What is CodeQL?
How does CodeQL analyze code?
What is QL?
Code scanning and CodeQL
Customize your code scanning workflow with CodeQL - Part 1
Exercise - Reference a CodeQL query
Customize your code scanning workflow with CodeQL - Part 2
Use the CodeQL CLI
Customize languages and builds for code scanning
Exercise - Configure a CodeQL language matrix
Module 7: GitHub administration for GitHub Advanced Security
What is GitHub Advanced Security?
Enable GitHub Advanced Security
Manage access to GitHub Advanced Security
Manage the GitHub Advanced Security features and alerts
Module 8: Manage sensitive data and security policies within GitHub
Setting security policies
Create and manage repository rulesets
Reporting and logging
Exercise