Em algumas ferramentas que o OAuth foi implementado são exigidos alguns pré-requisitos essenciais para seu funcionamento, são eles conta serviço , ID de serviço e o arquivo da chave privada(arquivo p12), para provedor Google, para provedores microsoft temos os seguintes requisitos: ID do cliente e segredo do cliente.
Os requisitos podem ser gerados pelo console Google quando o e-mail usado for um e-mail do provedor e também pelo portal da Azure quando o e-mail for microsoft.
No Google Cloud Console, o OAuth é configurado para autenticar e autorizar usuários ou sistemas em APIs do Google ou em serviços de terceiros. Aqui estão os passos principais para configurar o OAuth no Google Cloud Console:
Navegue para Google Cloud Console.
Se ainda não estiver logado, faça login com sua Conta Google.
No menu lateral, clique em API e Serviços > Tela de permissão OAuth.
Escolha entre os tipos de usuários:
Complete os detalhes necessários:Clique em Salvar e Continuar após preencher todos os campos.
Domínios Autorizados (URLs da sua aplicação que vão interagir com o OAuth).
No menu lateral, vá para API e Serviços > Credenciais.
Clique no botão Criar Credenciais e selecione ID do Cliente OAuth.
Escolha o tipo de aplicativo:
Se for Aplicativo Web, forneça o(s) URI(s) de redirecionamento autorizados:
Clique em Criar.
Após a criação das credenciais, você verá uma tela com o ID do Cliente e a Chave Secreta.
Copie essas credenciais ou faça o download delas para usar no código da sua aplicação.
Use o ID do Cliente e a Chave Secreta para redirecionar os usuários ao endpoint de autenticação do Google e obter o token de autorização.
Troque o token de autorização por um token de acesso. Esse token será usado para fazer requisições às APIs autorizadas.
No código da sua aplicação, use o token de acesso para fazer chamadas autenticadas à API ativada (por exemplo, Gmail API, Drive API, etc.).
O token de atualização também será gerado, permitindo que você obtenha novos tokens de acesso sem que o usuário precise autenticar novamente.
Para gerar os requisitos para o OAuth no provedor Microsoft (Azure Active Directory), você precisará configurar uma aplicação no Azure Portal e seguir alguns passos similares aos usados no Google Cloud Console. Aqui está o passo a passo:
O administrador deve abrir o link, revisar as permissões e, se concordar, conceder o consentimento.
Exemplos de URIs de redirecionamento:
Adicionar o URI de Redirecionamento
Salvar as Configurações
Para iniciar o fluxo OAuth, você precisará redirecionar o usuário para a URL de autorização da Microsoft:
Substitua {tenant_id}
pelo Directory ID que você copiou.
Parâmetros comuns:
client_id
: O ID da aplicação (Client ID).response_type
: Geralmente será code
para o código de autorização.redirect_uri
: O URI de redirecionamento configurado anteriormente.scope
: As permissões solicitadas, separadas por espaço (ex.: User.Read
).state
: Um valor opcional para proteger contra falsificação de solicitação.Após o usuário conceder permissão e ser redirecionado para o URI de redirecionamento com um código de autorização, você pode fazer uma requisição POST para o token endpoint:
Parâmetros da requisição POST:
client_id
: O ID da aplicação.grant_type
: authorization_code
.code
: O código de autorização recebido.redirect_uri
: O mesmo URI de redirecionamento usado na etapa anterior.client_secret
: A chave secreta da aplicação (gerada anteriormente).scope
: As permissões solicitadas (por exemplo, User.Read
).Com o token de acesso retornado, você poderá fazer requisições autenticadas às APIs da Microsoft, como a Microsoft Graph.
Exemplo de requisição para obter detalhes do usuário autenticado:
GET https://graph.microsoft.com/v1.0/me
Authorization: Bearer {access_token}
Se necessário, use o token de atualização para renovar o token de acesso sem pedir uma nova autenticação ao usuário.