Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Atualizar tokens de acesso do usuário para servidor

Para aplicar a rotação regular do token e reduzir o impacto de um token comprometido, você pode configurar seu aplicativo GitHub para usar tokens de acesso do usuário expirados.

Neste artigo

Did this doc help you?

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

Ou, learn how to contribute.

Observação: Os tokens de usuário com data de vencimento atualmente fazem parte do beta com data de vencimento do token de usuário para servidor e estão sujeitos a alterações. Para optar por participar do recurso beta do token de usuário para servidor com expiração, consulte "Ativar os recursos beta para aplicativos". Para obter mais informações, consulte "Tokens com data de vencimento de acesso de usuário para servidor para aplicativos GitHub".

Sobre os tokens de acesso do usuário expirados

Para aplicar a rotação regular do token e reduzir o impacto de um token comprometido, você pode configurar seu aplicativo GitHub para usar tokens de acesso do usuário expirados. Para obter mais informações sobre como fazer solicitações de usuário para servidor, consulte "Identificando e autorizando usuários para aplicativos GitHub".

Os tokens de usuário expiram após 8 horas. Ao receber um novo token de acesso do usuário para servidor, a resposta também conterá um token de atualização, que pode ser trocado por um novo token de usuário e token de atualização. Os tokens de atualização são válidos por 6 meses.

Renovar um token de usuário com um token de atualização

Para renovar um token de acesso do usuário para servidor, você pode trocar o refresh_token por um novo token de acesso e por refresh_token.

POST https://github.com/login/oauth/access_token

Esta solicitação de retorno de chamada enviará um novo token de acesso e um novo token de atualização. Essa solicitação de retorno de chamada é semelhante à solicitação do OAuth que usaria para trocar um código temporário por um token de acesso. Para obter mais informações, consulte "Identificando e autorizando usuários para aplicativos GitHub" e "Princípios básicos da autenticação".

Parâmetros

NomeTipoDescrição
refresh_tokenstringObrigatório. O token gerado quando o proprietário do aplicativo GitHub habilita tokens expirados e emite um novo token de acesso do usuário.
grant_typestringObrigatório. O valor deve ser refresh_token (exigido pela especificação do OAuth).
client_idstringObrigatório. O ID do cliente para o seu aplicativo GitHub.
client_secretstringObrigatório. O segredo do cliente para o seu aplicativo GitHub.

Resposta

{
  "access_token": "e72e16c7e42f292c6912e7710c838347ae178b4a",
  "expires_in": "28800",
  "refresh_token": "r1.c1b4a2e77838347a7e420ce178f2e7c6912e1692",
  "refresh_token_expires_in": "15811200",
  "scope": "",
  "token_type": "bearer"
}

Configurar tokens de usuário expirados para um aplicativo GitHub existente

Você pode habilitar ou desabilitar a expiração de tokens de autorização usuário para servidor nas suas configurações do aplicativo GitHub.

  1. No canto superior direito de qualquer página, clique na sua foto de perfil e, em seguida, clique em Configurações.
    Ícone Settings (Configurações) na barra de usuário
  2. Na barra lateral esquerda, clique em Developer settings (Configurações do desenvolvedor).
    Seção de configurações do desenvolvedor
  3. Na barra lateral esquerda, clique em Aplicativos GitHub.
    Seção de aplicativos do GitHub
  4. Clique em Editar próximo à sua escolha aplicativo GitHub.
    Configurações para edição de um aplicativo GitHub
  5. Na barra lateral esquerda, clique em Recursos do Beta.
    Opção do menu de recursos do Beta
  6. Ao lado de "Expiração do token do usuário para o servidor", clique em Participar ou Não participar. Esta configuração pode levar alguns segundos para ser aplicada.

Não participar dos tokens expirados para novos aplicativos do GitHub

Quando você cria um novo aplicativo GitHub, por padrão, seu aplicativo usará os tokens de acesso expirados do usuário para servidor.

Se você desejar que o seu aplicativo use tokens de acesso do usuário para servidor que não expiram, você pode desmarcar a opção "Expirar tokens de autorização do usuário" na página de configurações do aplicativo.

Opção para expirar os tokens dos usuários durante a configuração dos aplicativos GitHub

Os aplicativo GitHubs existentes que usam tokens de autorização de usuário para servidor são afetados apenas por este novo fluxo quando o proprietário do aplicativo habilita expirar tokens de usuário para seu aplicativo.

Habilitar a expiração de tokens de usuário para aplicativo GitHubs existentes exige o envio de usuários através do fluxo do OAuth para reemitir tokens de usuário que expirarão em 8 horas e fazer uma solicitação com o token de atualização para obter um novo token de acesso e token de atualização. Para obter mais informações, consulte "Identificar e autorizar usuários para aplicativos GitHub".

Did this doc help you?

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

Ou, learn how to contribute.