About authentication to GitHub

You can securely access your account's resources by authenticating to GitHub AE, using different credentials depending on where you authenticate.

In this article

About authentication to GitHub

To keep your account secure, you must authenticate before you can access resources on GitHub AE. When you authenticate to GitHub AE, you supply or confirm credentials that are unique to you to prove that you are exactly who you declare to be.

You can access your resources in GitHub AE in a variety of ways: in the browser, via GitHub Desktop or another desktop application, with the API, or via the command line. Each way of accessing GitHub AE supports different modes of authentication.

  • Your identity provider (IdP)
  • Personal access token
  • SSH key

Authenticating in your browser

You can authenticate to GitHub AE in your browser using your IdP. For more information, see "About authentication with SAML single sign-on."

Authenticating with GitHub Desktop

You can authenticate with GitHub Desktop using your browser. For more information, see "Authenticating to GitHub."

Authenticating with the API

You can authenticate with the API in different ways.

  • Personal access tokens
    • In limited situations, such as testing, you can use a personal access token to access the API. Using a personal access token enables you to revoke access at any time. For more information, see "Creating a personal access token."
  • Web application flow
    • For OAuth Apps in production, you should authenticate using the web application flow. For more information, see "Authorizing OAuth Apps."
  • GitHub Apps

Authenticating with the command line

You can access repositories on GitHub AE from the command line in two ways, HTTPS and SSH, and both have a different way of authenticating. The method of authenticating is determined based on whether you choose an HTTPS or SSH remote URL when you clone the repository. For more information about which way to access, see "About remote repositories."

  • You can work with all repositories on GitHub AE over HTTPS, even if you are behind a firewall or proxy. Every time you use Git to authenticate with GitHub AE, you'll be prompted to enter your credentials to authenticate with GitHub AE, unless you cache them with a credential helper. When Git prompts you for your password, enter your personal access token (PAT) instead. For more information, see "Creating a personal access token."

  • You can work with all repositories on GitHub AE over SSH, although firewalls and proxys might refuse to allow SSH connections. Using SSH requires you to generate an SSH public/private keypair on your local machine and add the public key to your GitHub AE account. Every time you use Git to authenticate with GitHub AE, you'll be prompted to enter your SSH key passphrase, unless you've stored the key. For more information, see "Generating a new SSH key and adding it to the ssh-agent."

Did this doc help you?Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Or, learn how to contribute.