Visão geral do OAuth 2.0

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Você pode construir ou autorizar aplicativos que usam APIs Open Cloud para acessar os recursos do Roblox. O Open Cloud fornece autenticação para esses aplicativos usando OAuth 2.0.

Como criador de jogos ou proprietário de grupo

Você pode usar com segurança ferramentas criadas por outras pessoas para melhorar sua produtividade criativa. A camada de autorização OAuth 2.0 permite que você conceda permissões a aplicativos de terceiros para acessar os jogos seus ou do seu grupo sem fornecer suas credenciais e informações pessoais. Você seleciona as permissões de acesso dos seus recursos Roblox específicos, e o Roblox gerencia o processo de autorização para você com o framework OAuth 2.0.

Como desenvolvedor de aplicativos

Você pode criar aplicativos para si mesmo e para outros na comunidade Roblox. O OAuth 2.0 define os papéis envolvidos no processo de autorização, o protocolo de como os papéis interagem entre si e os fluxos de autorização que você precisa seguir para desenvolver aplicativos seguros e compatíveis.

Papéis

O protocolo Open Cloud OAuth 2.0 tem os seguintes papéis. É útil entender os papéis específicos antes de aprender sobre como eles interagem uns com os outros nos fluxos de autorização.

  • Proprietário do recurso: Uma entidade capaz de conceder acesso a um recurso protegido. Por exemplo, um criador que permite que um aplicativo de terceiros acesse seus recursos Roblox através das APIs Web do Open Cloud.

  • Servidor de recursos: Um serviço do Roblox que hospeda recursos protegidos e responde a solicitações de um proprietário de recurso.

  • Cliente: Um aplicativo que acessa recursos protegidos em nome do proprietário do recurso (com a autorização do proprietário).

  • Servidor de autorização: O servidor do Roblox que autentica a identidade do proprietário do recurso e emite tokens de acesso para o cliente.

Tipos de concessão

Os fluxos de autorização, ou tipos de concessão, são os passos de ação que os papéis realizam durante o processo de autorização. O Roblox suporta o fluxo de código de autorização OAuth 2.0 e sua extensão Proof Key for Code Exchange (PKCE), com diferentes requisitos de implementação para aplicativos que são capazes ou incapazes de armazenar segredos de cliente.

Fluxo de código de autorização

Por meio do fluxo de código de autorização, um cliente troca um código de autorização por um token de acesso e um token de renovação para completar o processo de autorização nas seguintes etapas:

  1. O cliente envia uma solicitação de autorização para o servidor de autorização do Roblox.

  2. O servidor de autorização verifica a identidade do proprietário do recurso.

  3. O servidor de autorização recebe permissões para acessar recursos específicos do Roblox do proprietário do recurso.

  4. O servidor de autorização redireciona o proprietário do recurso de volta ao cliente com um código de autorização.

  5. O cliente solicita um token de acesso usando o código de autorização no endpoint de token.

  6. O cliente recebe uma resposta do endpoint de token contendo um token de acesso, um token ID e um token de renovação.

  7. O cliente recupera os recursos permitidos após obter o token de acesso.

A figura a seguir descreve as interações entre os papéis no fluxo de código de autorização que você lerá nas seções seguintes:

Fluxo de código de autorização com PKCE

A extensão PKCE do fluxo de código de autorização ajuda a reduzir o risco de vazamento do código de autorização e prevenir a falsificação de solicitação entre sites (CSRF), um ataque que engana os usuários a enviar solicitações web indesejadas. Este fluxo completa o processo de autorização nas seguintes etapas:

  1. O cliente gera uma chave única e aleatória chamada verificador de código para cada solicitação de autorização.

  2. O cliente executa um algoritmo de hash SHA-256 no verificador de código para gerar um desafio de código.

  3. Se o cliente:

    • É um cliente público, em vez de usar o segredo do cliente, ele passa o ID do cliente e o desafio de código na solicitação de autorização.

    • É um cliente confidencial, ele adiciona o desafio de código junto com o ID e o segredo do cliente na solicitação.

  4. O cliente envia uma solicitação de autorização para o servidor de autorização do Roblox.

  5. O servidor de autorização verifica a identidade do proprietário do recurso.

  6. O servidor de autorização recebe permissões para acessar recursos específicos do Roblox do proprietário do recurso.

  7. O servidor de autorização redireciona o proprietário do recurso de volta ao cliente com um código de autorização.

  8. O cliente inclui o código de autorização e o verificador de código original na solicitação de token para o endpoint de token.

  9. O servidor de autorização verifica o código de autorização e o verificador de código associado.

  10. O cliente recebe uma resposta do endpoint de token contendo um token de acesso, um token ID e um token de renovação.

  11. O cliente recupera os recursos permitidos após obter o token de acesso.

Suporte ao OpenID Connect

O Roblox usa OpenID Connect (OIDC) como uma camada de identidade em cima do protocolo OAuth 2.0 para autenticação para proteger informações sensíveis da conta. O OIDC permite que aplicativos verifiquem a identidade dos usuários e obtenham suas informações básicas de perfil público, como ID de usuário, nomes de usuário, nomes de exibição e links de perfil.

Registro e implementação

Para implementar um aplicativo web ou móvel que usa o fluxo de código de autorização, você precisa:

  1. Registrar seu aplicativo com o Roblox. Isso permite que você obtenha um ID e um segredo do cliente para registrar seu aplicativo no Roblox e fazer chamadas para seus endpoints.

  2. Implementar o fluxo de código de autorização. Para uma referência completa dos endpoints do OAuth 2.0 que você precisa chamar, consulte a referência de Autenticação.

  3. Passar pelo processo de revisão para obter mais cota de usuários.

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.