How to generate GitHub OAuth2 Credentials

GitHub credentials clientID clientSecret

Imagine that we have a task to set OAuth2 to our application in order to increase security. To make that happen, we need a provider to provide us with secret keys. Those are the clientID and the clientSecret keys. GitHub provides us with the necessary source.

Here is a little piece of Passport.js code optimized for GitHub OAuth2 authentication:

// Set up Passport.js for GitHub OAuth2 authentication
passport.use(new GitHubStrategy({
  clientID: 'YOUR_GITHUB_CLIENT_ID',  // Replace with your GitHub Client ID      
  clientSecret: 'YOUR_GITHUB_CLIENT_SECRET',  // Replace with your GitHub   Client Secret  
  callbackURL: 'https://localhost:4000/auth/github/callback',  // GitHub callback URL
}, (accessToken, refreshToken, profile, done) => {
  // Store user profile and token in the session or database
  return done(null, { accessToken, profile });
}));

Here are the steps we need to take to get these credentials:

  1. Go to GitHub Developer Settings.
  2. Create a new OAuth application or use an existing one.
  3. Fill in the details for the OAuth application:
  • Application Name: Give your app a name.
  • Homepage URL: Use https://localhost:4000 (or your production URL if applicable).
  • Authorization callback URL: Use https://localhost:4000/auth/github/callback.

After creating the OAuth app, you’ll receive your Client ID and Client Secret. Replace the YOUR_GITHUB_CLIENT_ID and YOUR_GITHUB_CLIENT_SECRET in the code with these values.

Scroll to Top