Ir para conteúdo
  • Cadastre-se

Recommended Posts

Postado

Bom dia , 

Usuários do componente ACBrMail que tentam configurar o envio de e-mails via Microsoft 365 com autenticação OAuth2, podem se deparar com a inexistência dessas configurações na versão mais recente do componente.A análise do código-fonte e as discussões em fóruns oficiais do projeto ACBr indicam que, no momento, a configuração do OAuth2 para o ACBrMail não é realizada através de propriedades diretas no componente TACBrMail. Em discussões recentes nos fóruns do Projeto ACBr, foi mencionado que a criação de uma tarefa interna (#TK-6042) para análise e implementação de um suporte mais integrado ao OAuth2 no ACBrMail está em andamento. Gostaria de saber se está em andamento ou se eu posso implementar no código , para isso preciso de orientações de como proceder , mas estou disposto a ajudar e já tenho toda a documentação necessária para a implementação. Aguardo um parecer dos amigos mantenedor teste fonte .

 

  • Consultores
Postado

Olha  só uma sugestão. eu comecei mas não finalizei.
fiz uma especie de adapter para o ACBrMail. assim eu não modifiquei em nada ele. 

e só uso uma unit para trabalhar com ele e OAuth2 isso para todas os servidores de e-mail e não só esse. mas parei no meio e ainda não voltei terminar

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado
Em 01/09/2025 at 13:47, daniel_mirassol disse:

Marcio, boa tarde !
Baixei seus fontes , como você faz para passar os parâmetros para o AcbrMail ? 

Atráves do uses ou outro forma ....

Bom dia @daniel_mirassol perdão pela demora...

Vc pode fazer em duas etapas:

1ª: Primeiro vc autentica no OAuth para gerar o acess token

procedure xxxxx.OnTokenGerado(const pAcessToken, pRefreshToken: string; const pDataExpiracao: TDateTime);
begin
	// aqui vc consegue pegar os tokens gerados apos fazer login na conta do gmail
    // vc deve salvar esses tokens para serem usados depois
end;


var
   config: TConfigOAuth;
   fOAuth2: TOAuth2;
begin
  config.ClientID := '< seu client id >';
  config.ClientSecret := '< seu client secret >';
  config.OnGenerateToken := OnTokenGerado;

  fOAuth2 := TGMailOAuth.Create(pConfig);
  fOAuth2.Authenticate; // aqui vai pedir pra fazer login na conta do gmail
end;

 

2ª: Com o token gerado agora vc alimenta o componente do ACBrMail

function RefreshTokenOAuth: string;
var
  config: TConfigOAuth;
  fOAuth2: TOAuth2;
begin
  config.ClientID := '< seu client id >'
  config.ClientSecret := '< seu client secret >';
  config.AccessToken := '< access token gerado anteriormente >';
  config.RefreshToken := '< refresh token gerado anteriormente >';

  fOAuth2 := TGMailOAuth.Create(pConfig);
  fOAuth2.RefreshNewToken;
  Result := fOAuth2.getAccessToken;
end;


var
  fACBrEmail: TACBrMail;
begin
  fACBrEmail := TACBrMail.Create(nil);
  ...
  ...
  fACBrEmail.Username := 'xxxx';
  fACBrEmail.Password := RefreshTokenOAuth;

 

  • Curtir 2
Postado (editado)
Em 29/08/2025 at 14:29, Juliomar Marchetti disse:

Olha  só uma sugestão. eu comecei mas não finalizei.
fiz uma especie de adapter para o ACBrMail. assim eu não modifiquei em nada ele. 

e só uso uma unit para trabalhar com ele e OAuth2 isso para todas os servidores de e-mail e não só esse. mas parei no meio e ainda não voltei terminar

aproveitei essa dica e implementei no acbrmail no teste a funcionalidade ficou perfeito, autentica, pega o refleshtoken valida e envia sem nem uma mudança no componente. 

image.thumb.png.58cca7436ef1cd07b11e213ac8c982c5.pngimage.thumb.png.0c54faf4b491503c0face070d7cb7335.png

 

Editado por nislei me
  • Curtir 3
  • 2 meses depois ...
  • Consultores
Postado
4 minutos atrás, Wendel Nogueira disse:

o Exemplo utilizando o OAuth2 estará disponível qdo?

Que exemplo? tu diz o colega postar aqui o que ele fez?

  • Curtir 1

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • 5 meses depois ...
Postado
Em 19/11/2025 at 11:57, Juliomar Marchetti disse:

Que exemplo? tu diz o colega postar aqui o que ele fez?

Bom dia Juliomar, a respeito do oAuth, recebi recentemente este comunicado da microsoft:

https://techcommunity.microsoft.com/blog/exchange/updated-exchange-online-smtp-auth-basic-authentication-deprecation-timeline/4489835

indicando que será desativada a autenticação básica logo, creio que seria importante que fosse agregado no ACBRMail o suporte para OAUTH.

Em 11/09/2025 at 10:02, nislei me disse:

aproveitei essa dica e implementei no acbrmail no teste a funcionalidade ficou perfeito, autentica, pega o refleshtoken valida e envia sem nem uma mudança no componente. 

image.thumb.png.58cca7436ef1cd07b11e213ac8c982c5.pngimage.thumb.png.0c54faf4b491503c0face070d7cb7335.png

 

 nislei me voce chegou a compartilhar a solução com a comunidade?

 

  • Membros Pro
Postado

Aqui também esperamos que o projeto consiga logo implementar essa nova funcionalidade no componente/Monitor e DLL porque é de  grande importância já que se aproxima o bloqueio do envio por  senha de app!!

  • Consultores
Postado
4 horas atrás, neto233 disse:

@nislei me Bom dia, está disponível em algum lugar essa solução que implementou no ACBrMail - Demo ?

na mensagem acima https://www.projetoacbr.com.br/forum/topic/85271-configuração-do-acbrmail-com-oauth2-permissão-para-atualizar/?&_rid=19#findComment-553198

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.