OAuth2 Email Proxy

Modified on Mon, 20 Apr at 12:22 AM

What Is It?

Email OAuth2 Proxy is a tool that acts like a middleman between your email client (Synergetic, Synweb, devices, etc.) and your email provider (like Gmail, Office365, etc.).

It adds OAuth 2.0 support to email clients that don’t support it natively. This is important because many providers (like Google and Microsoft) are disabling basic password logins and requiring OAuth 2.0.

You can investigate the windows executable project here: Email OAuth 2.0 Proxy

Important Note:

This tool is not an official Synergetic-supported service.
It is provided as a self‑service option, and you are free to implement it if it suits your environment and requirements.


Why Would You Use It?

  • Synergetic doesn’t support OAuth 2.0 natively.

  • You have a script or device (like a scanner or printer) that sends email but can’t do OAuth.

  • Secure and compliant with modern authentication standards.


How It Works

  1. The proxy runs on your Server.

  2. Your email client or device connects to the proxy like it would to a normal mail server.

  3. The proxy authenticates with your provider using using OAuth 2.0 on your behalf.


How to Set It Up

  1. Download and Install the Packaged Application

  • Installed on your server (typically the SQL Server) to provide proxy service, also replacing IIS SMTP Proxy if in use.

  • Link to Project provided above

 

  1. Configure for Your Environment

  • Adjust the emailproxy.config file according to your required specifications

To be included:

  • Your preferred email account(s).

  • OAuth 2.0 credentials

  • Client ID (The Registration APP ID)

  • Client Secret.

  • Client Tenant ID

  • Set ports (e.g.,1587 for SMTP).

  1. Initial run of the Proxy

  • Run the proxy executable to launch the GUI.

Required for Initial Authentication.

 

  1. Authorize Your Account

  • The first time you connect, a notification window will pop up in the GUI.

  • You then Initiate the authorisation process.

  • Log in and approve access.

  • The proxy stores the token and refreshes it automatically.

  • Information inside the config file is then encrypted.

 

  1. Automate Proxy

  • Using PowerShell script provided by Synergetic we create a Scheduled Task that executes on System Startup with highest privileges.

  • Enables proxy to always be running with the System.

 

  1. Configure Your Email Client

  • Set the mail server details to that of the proxy’s IP or domain name and port (e.g., 1587).

  • Disable encryption on the client side - the proxy handles secure connections to the mail server).

  • Set username/password.

    • Once the sender is authorised, the issued credentials must always be used in conjunction with that authorised sender.


Before setup, the client must register an OAuth2 application with their email provider to enable authentication:

  •  You need to register an OAuth app with your provider (e.g., Google, Microsoft) to get a client ID and secret.


OAuth App Registration (Microsoft 365):

Item

Description

Client ID

From Azure App Registration

Client Secret

Created in Certificates & Secrets

Tenant ID

From Azure AD Overview - Added to permission and token URLs

Permissions

SMTP.Send, Mail.Send, offline_access – (Microsoft Graph)

Admin Consent

Must be granted in Azure Portal

App ID URI

https://localhost

 

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article