
Usando Gmail SMTP OAUTH
Os servidores IMAP e SMTP do Gmail foram estendidos para oferecer suporte à autorização por meio do protocolo OAuth 2.0. Usando o protocolo OAUTH, o usuário pode fazer autenticação pelo Gmail Web OAuth em vez de inserir usuário e senha diretamente no aplicativo. Dessa forma é mais seguro, mas um pouco complexo.
Acessar o painel de API e Serviços do Google Cloud
https://console.cloud.google.com/apis
Crie seu projeto em Google Developers Console
Para usar o Gmail OAUTH em seu aplicativo, você deve criar um projeto em Google Developers Console primeiro.
Crie seu projeto em https://console.developers.google.com/projectcreate.
Selecione seu projeto -> APIs & Services -> Dashboard -> Credentials;
Credentials -> Create Credentials -> OAuth client ID -> Aplicação Web ou Desktop. Isso depende da sua aplicação.
No caso do ti9-email-api, ele é uma aplicação Web, então:
No campo Tipo de aplicativo, selecione Aplicativo da Web
No campo URIs de redirecionamento autorizados, adicione um endereço para receber as solicitações do Google/OAuth. Este endereço deve ser um host válido e de acesso externo.
Insira um nome para seu aplicativo, insira seu URL ASP/ASP.NET atual em URIs de redirecionamento autorizados, por exemplo: http://localhost/gmailoauth/default.aspx. (O aplicativo de desktop não requer esta etapa)
Clique em "Criar", você obterá seu ID e secret do cliente:
Habilite a API do Gmail em "Biblioteca" -> "Gmail", clique em "API do Gmail" e ative-a
- Você deve definir informações detalhadas para o seu projeto em "Tela de consentimento do OAuth" -> "Editar aplicativo".
Por fim, adicione os escopos "https://mail.google.com/" e "../auth/gmail.send" em "Tela de consentimento do OAuth" -> "Editar aplicativo" -> "Escopos para API do Google".
Se você usa a API RESTFul do Gmail para enviar e-mails, use apenas o escopo "../auth/gmail.send" para evitar que seu aplicativo seja limitado.
Observações de escopo
O Gmail oferece suporte a SMTP + OAUTH, mas o escopo da API (https://mail.google.com/) é uma API restrita que solicita acesso total à conta do Gmail. A API restrita é limitada antes que seu projeto seja autenticado pelo Google.
É recomendado usar o escopo da API menos restrito (https://www.googleapis.com/auth/gmail.send) para enviar e-mail através do servidor Gmail.