Skip to main content

Sobre a autenticação no GitHub

Você pode acessar com segurança os recursos da sua conta efetuando a autenticação no GitHub e usando credenciais diferentes dependendo de onde você efetua a autenticação.

Sobre a autenticação no GitHub

Para manter sua conta segura, você deve efetuar a autenticação antes de acessar certos recursos no GitHub. Ao efetuar a autenticação no GitHub, você fornece ou confirma credenciais que são exclusivas que provam quem você declara ser.

Você pode acessar seus recursos no GitHub de várias formas: no navegador, por meio do GitHub Desktop ou outro aplicativo da área de trabalho, com a API ou por meio da linha de comando. Cada forma de acessar o GitHub é compatível com diferentes modos de autenticação.

  • Seu provedor de identidade (IdP)
  • Nome de usuário e senha (ou logon social) com autenticação de dois fatores ou uma chave de acesso (apenas GitHub Free e GitHub Enterprise Cloud)
  • Personal access token
  • Chave SSH

Efetuar a autenticação no seu navegador

Você pode efetuar a autenticação no GitHub no seu navegador de diferentes formas.

Se você precisar usar várias contas em sua instância do GitHub Enterprise Server, como uma conta pessoal e uma conta de serviço, poderá alternar rapidamente entre suas contas sem precisar sempre se autenticar novamente. Para saber mais, confira Como alternar entre contas.

  • Somente nome de usuário e senha

    • Você criará uma senha ao criar sua conta no GitHub. Recomendamos que você use um gerenciador de senhas para gerar uma senha aleatória e única. Para obter mais informações, confira Criar uma senha forte.
  • 2FA (autenticação de dois fatores) (recomendado)

  • Chave de acesso

    • Você pode adicionar uma chave de acesso à sua conta para habilitar um logon seguro e sem senha. Chaves de acesso atendem aos requisitos de senha e 2FA, então você pode concluir sua entrada em uma única etapa. Confira Sobre chaves de acesso.
  • Autenticação externa

    • O administrador do site pode configurar o sua instância do GitHub Enterprise Server para usar uma autenticação externa em vez de um nome de usuário e uma senha. Para saber mais, confira Sobre o gerenciamento de identidades e acesso.

Cookies de sessão

O GitHub usa cookies para fornecer serviços e aumentar a segurança.

  • O gist.HOSTNAME e domínio base para a sua instância usam cookies separados.
  • O GitHub normalmente marca uma sessão de usuário para exclusão após duas semanas de inatividade.
  • O GitHub não exclui imediatamente uma sessão quando você sai. Periodicamente, o GitHub exclui automaticamente as sessões expiradas.

Efetuar a autenticação com GitHub Desktop

Você pode efetuar a autenticação com o GitHub Desktop usando seu navegador. Para saber mais, confira Autenticar para o GitHub no GitHub Desktop.

Efetuar a autenticação com a API

Você pode efetuar a autenticação com a API de diferentes formas. Para saber mais, confira Autenticação na API REST.

Autenticação na API com um personal access token

Se quiser usar a API REST do GitHub para uso pessoal, crie um personal access token. Se possível, o GitHub recomenda que você use um fine-grained personal access tokens em vez de um personal access token (classic). Para obter mais informações sobre como criar um personal access token, confira Gerenciar seus tokens de acesso pessoal.

Autenticação na API com um aplicativo

Se você quiser usar a API em nome de uma organização ou de outro usuário, a GitHub recomenda que você use um GitHub App. Para saber mais, confira Sobre a autenticação com um GitHub App.

Você também pode criar um token OAuth com um OAuth app para acessar a API REST. No entanto, o GitHub recomenda que você use um GitHub App. Os GitHub Apps permitem mais controle sobre o acesso e a permissão que o aplicativo tem.

Autenticação na API em um fluxo de trabalho do GitHub Actions

Se você quiser usar a API em um fluxo de trabalho de GitHub Actions, a GitHub recomenda que você se autentique com o GITHUB_TOKEN interno, em vez de criar um token. Você pode conceder permissões à GITHUB_TOKEN com a chave permissions.

Observe que GITHUB_TOKEN só pode acessar recursos no repositório que contém o fluxo de trabalho. Se você precisar fazer alterações em recursos fora do repositório de fluxo de trabalho, precisará usar um personal access token ou GitHub App.

Para saber mais, confira Usar GITHUB_TOKEN para autenticação em fluxos de trabalho.

Efetuando a autenticação com a linha de comando

Você pode acessar repositórios no GitHub pela linha de comando de duas maneiras, HTTPS e SSH. Ambos têm uma maneira diferente de efetuar a autenticação. O método de autenticação é determinado com base na escolha de uma URL remota de HTTPS ou SSH quando você clonar o repositório. Para obter mais informações sobre as formas de acesso, confira Sobre repositórios remote.

HTTPS

Você pode trabalhar com todos os repositórios no GitHub por HTTPS, mesmo que você esteja atrás de um firewall ou proxy.

Se você fizer a autenticação com a GitHub CLI, poderá fazer a autenticação com um personal access token ou por meio do navegador da Web. Para obter mais informações sobre como se autenticar com a GitHub CLI, confira gh auth login.

Se você fizer a autenticação sem a GitHub CLI, você pode usar métodos de autenticação cuja disponibilidade depende de seu IdP.

A tabela descreve os métodos de autenticação disponíveis com base no IdP configurado para a instância. IdPs diferentes podem impor restrições específicas ou habilitar determinados recursos, como desabilitar a autenticação de senha. Para ver mais detalhes, confira Gerenciamento de identidade e de acesso.

IdPMétodos de autenticação disponíveisMais informações
SAMLPersonal access tokenAutenticação de senha desabilitada
LDAPPersonal access token ou nome de usuário/senhaA autenticação de senha pode ser desabilitada pelo administrador do site
Autenticação internaPersonal access token ou nome de usuário/senhaA autenticação de senha não pode ser desabilitada

SSH

Você pode trabalhar com todos os repositórios no GitHub por meio de SSH, embora os firewalls e proxys possam se recusar a permitir conexões de SSH.

Se você efetuar a autenticação com GitHub CLI, a CLI encontrará chaves públicas SSH no seu computador e solicitará que você selecione uma para upload. Se a GitHub CLI não encontrar uma chave pública SSH para o upload, ela poderá gerar um novo par de chaves pública/privada SSH e carregar a chave pública na sua conta em sua instância do GitHub Enterprise Server. Em seguida, você poderá fazer a autenticação com um personal access token ou por meio do navegador da Web. Para obter mais informações sobre como se autenticar com a GitHub CLI, confira gh auth login.

Se você fizer a autenticação sem a GitHub CLI, precisará gerar um par de chaves pública/privada SSH no computador local e adicionar a chave pública à sua conta do sua instância do GitHub Enterprise Server. Para saber mais, confira Gerando uma nova chave SSH e adicionando-a ao agente SSH. Sempre que você usar o Git para se autenticar no GitHub, precisará inserir sua frase secreta de chave SSH, a menos que tenha armazenado a chave.

Formatos de token de GitHub

GitHub emite tokens que começam com um prefixo para indicar o tipo do token.

Tipo de tokenPrefixoMais informações
Personal access token (classic)ghp_Gerenciar seus tokens de acesso pessoal
Fine-grained personal access tokengithub_pat_Gerenciar seus tokens de acesso pessoal
token de acesso OAuthgho_Autorizar aplicativos OAuth
Token de acesso de usuário para um GitHub Appghu_Autenticação com um aplicativo GitHub em nome de um usuário
Token de acesso de instalação para um GitHub Appghs_Como autenticar como uma instalação de Aplicativo GitHub
Atualizar token para um GitHub Appghr_Atualizar tokens de acesso do usuário