En v2 Github Admin Training
En v2 Github Admin Training
Administration
Workshop
Explain how security access features work (SSO, SCIM, IP allow lists, etc.)
Platforms
Permission flow
Enterprise administration
Settings walkthrough
GitHub organizations
Overview
Settings walkthrough
Agenda: Part 2
GitHub repositories
Overview
Repository administration
Settings walkthrough
Additional topics
GitHub Actions
GitHub Marketplace
GitHub Enterprise
Overview
Platforms
Permissions flow
Enterprise administration
Platforms
Connect
GitHub Enterprise
Cloud + EMUs
Self-hosted on customer’s network
Git LFS
Project sponsorship
GitHub Enterprise
Overview
Platforms
Permissions flow
Enterprise administration
Permissions Flow
Permissions Flow - multiple
orgs
Repository Visibility
Read Read-only access to Code and Actions. Can submit and comment on
issues, pull requests, and discussions
Triage Read-only permissions with the additional ability to manage issues, pull
requests, discussions, assignments, and labels
Write Gives write access to all parts of a repository project with the exception
of the repository settings
Admin Has full administrative access to all features, settings and configurations
of the repository project
GitHub Enterprise
Overview
Platforms
Permissions flow
Enterprise administration
Enterprise Settings
Walkthrough
Share Screen
GitHub Organizations
Overview
Structure and
ownership
Administration and
settings
Everything exists within GitHub (Enterprise)
Users belong to individuals with their own
namespace
Organizations have their own namespaces
Organizations can own repositories
Users can own repositories
Users can be members of organizations
Users can be members of organizations
And the org content can be protected by SSO
Teams exist within organizations
to apply permissions and group repositories
together
and facilitate communication
@blue/java @purple/java
@blue/2FA @purple/js
How can these users participate in Java
discussions?
@blue/java @purple/java
@blue/2FA @purple/js
Enterprise Best
Practices
Organizations Teams
Repositories
Packages
People
Teams
Organization
information
Reasons to use teams
Onboarding
Collaboration Innersource and Security
offboarding
Managing Nested Teams
Projects
Insights
Insights - Activity Overview
Use the API and dashboards (Grafana, ELK) to visualize more metrics
https://github.com/alltheavo
Security
Organization Settings
Walkthrough
Share Screen
GitHub Repositories
Overview
Navigation
Administration
Branch protections and
CODEOWNERS
https://github.com/githubuniverseworkshops/w
orkshop-automate-your-workflow
Nav bar
Metadata,
releases,
Files
packages,
contributors
README
Repository
settings
Repository Settings
Walkthrough
Share Screen
Additional Topics
API overview
Authentication
methods
GitHub
Integration
Webhooks s
Repository
Organization
Enterprise
GitHub Apps
Repository
Organization
Core Loop Overview GitHub API
POST /api
Webhooks
PUT /api
Repository
DELETE /api
Third-party systems
Organization Jenkins, TeamCity, JIRA
Requests
Enterprise Events Web server
Node.js, Ruby, Python, Java GraphQL API (v4)
GitHub Apps
POST /endpoint
Serverless functions
Repository Azure, AWS, GCP
POST /graphql
{ “query”: “query {}” }
Organization
POST /graphql
{ “query”: “mutation {}” }
GitHub Actions Events Requests
Workflows
.github/workflows/*.yml
Repository
Additional Topics
API overview
Authentication
methods
Serverless functions
Azure, AWS, GCP
POST /graphql
{ “query”: “query {}” }
gho_
POST /graphql
{ “query”: “mutation {}” }
ghu_
GITHUB_TOKEN
Workflows
.github/workflows/*.yml ghp_ ghs_ ghs_
Authentication User or organization can register up to 100
Methods GitHub Apps
OAuth Apps
GitHub Apps can be installed in a personal
account or an organization
Deploy Keys
Up to 15k requests/hour (enterprise)
Machine Users
Permission changes require approval by the
organization where they are installed
Authentication
Methods
User or organization can own up to 100
OAuth Apps
GitHub Apps
OAuth Apps
Useful for scripting or cURL requests
Deploy Keys
Up to 5k requests/hour
Machine Users
Removed automatically after one year of no
usage
Authentication
Methods
Anyone with access to the repository and
server can deploy the project
GitHub Apps
Access Act as
everything the app?
?
No
Yes
No
Yes
GitHub
App Access
Simple? everything
No ?
No
Yes
Personal Yes
OAuth
Access
App
Token
Additional Topics
API overview
Authentication
methods
No per-minute charges
API overview
Authentication
methods