
Requisitos oAuth
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.
Console Google
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:
Acessar o Google Cloud Console
Navegue para Google Cloud Console.
Se ainda não estiver logado, faça login com sua Conta Google.
Criar um Novo Projeto
- No painel do Google Cloud Console, clique no ícone de seleção de projetos no topo da página.
- Clique em Novo Projeto.
- Nomeie o projeto (por exemplo, "OAuth Project").
- Clique em Criar.
Habilitar a API Necessária
- No menu lateral, vá até API e Serviços > Biblioteca.
- Busque pela API que sua aplicação precisa usar (por exemplo, Google Drive API ou Gmail API).
- Clique na API correspondente e, na página da API, clique em Ativar.
Configurar a Tela de Consentimento OAuth
No menu lateral, clique em API e Serviços > Tela de consentimento OAuth.
Escolha entre os tipos de usuários:
- Interno: Apenas disponível para usuários do Google Workspace dentro da sua organização.
- Externo: Disponível para qualquer pessoa com uma Conta Google.
Complete os detalhes necessários:Clique em Salvar e Continuar após preencher todos os campos.
- Nome da Aplicação.
- E-mail de Suporte.
- Domínios Autorizados (URLs da sua aplicação que vão interagir com o OAuth).
- Escopos OAuth: Selecione os escopos que você deseja solicitar dos usuários. Isso define quais permissões você está pedindo (exemplo: acesso ao Gmail).
Criar Credenciais 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:
- Aplicativo Web: Se a sua aplicação for uma aplicação web.
- Outros: Se for um serviço ou aplicação desktop.
- Se for Aplicativo Web, forneça o(s) URI(s) de redirecionamento autorizados:
- O URI de redirecionamento é o URL onde o Google redirecionará o usuário após a autenticação (por exemplo,
https://minha-aplicacao.com/oauth2callback
).
- O URI de redirecionamento é o URL onde o Google redirecionará o usuário após a autenticação (por exemplo,
- Clique em Criar.
Obter o ID do Cliente e Chave Secreta
- 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.
Gerar e Configurar o Token de Acesso
- 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.
Usar o Token de Acesso
- 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.
Criar uma Conta de Serviço
- Se você precisa de uma conta de serviço para atuar em nome de usuários dentro de um domínio Google Workspace, siga estes passos adicionais:
- Vá para API e Serviços > Credenciais e clique em Criar Credenciais > Conta de Serviço.
- Nomeie a conta e conclua o processo de criação.
- Ative a delegação em toda a organização (Domain-wide Delegation) se necessário, para que a conta de serviço possa atuar em nome de usuários dentro da organização.
- Gere a chave privada (formato JSON ou p12) e a use no seu código para autenticação.
Portal Azure
No ecossistema Microsoft, OAuth é amplamente utilizado para integrar e autorizar o acesso a serviços como Microsoft 365, Azure, Outlook, entre outros.
Criar aplicativo no Azure AD
- Vá ao portal do Azure.
- Navegue até “Azure Active Directory” > “Registros de aplicativo” e clique em “Novo registro”.
- Nomeie o aplicativo, escolha “Contas neste diretório” e clique em “Registrar”.
Configurar permissões
- Vá em “Permissões de API” e adicione permissões para enviar e-mails via Exchange Online, como
Mail.Send
oufull_access_as_app
para acesso completo.
Gerar ID de cliente e segredo do cliente
- No aplicativo criado, vá até “Certificados e Segredos” e clique em “Novo segredo do cliente”.
- Salve o valor gerado (este é o segredo do cliente).
- O ID do aplicativo pode ser encontrado na página de “Visão Geral”.
Obter consentimento do administrador
- Se o seu aplicativo for usado em uma organização, você precisará do consentimento do administrador do Office 365.
- Isso pode ser feito através de um link especial de consentimento que o administrador deve aprovar.
Utilizar OAuth no código
- No seu código, use o ID do cliente, segredo, e outros dados da API para gerar o token de acesso necessário para autenticação e envio de e-mails via Office 365 API.