How to Setup SMTP and IMAP email accounts via Oauth 2.0 Authentication on ServiceNow using MS O365

Vishal Jawalka1
Tera Expert

Follow the Below:

1. Install Plugin - Email - OAUTH support for IMAP and SMTP

2. Contact the O365 Admin and have him perform the below :

a. register Oauth Authentication.

b Create Certificates and Permission on the Mailbox to generate Application ID, Client secret ID and Client ID and Value ( all these will be provided by the admin ).

c. Create a API scopes on MS graph

3. Configure Oauth entity(application Registry) on ServiceNow

map details shared :

Client ID == Application ID

Client Secret == Value

Authorization URL: https://login.microsoftonline.com/[Azure Tenant ID]/oauth2/v2.0/authorize
Token URL: https://login.microsoftonline.com/[Azure Tenant ID]/oauth2/v2.0/token
Redirect URL: {Instance_URL}/oauth_redirect.do

VishalJawalka1_0-1665651628513.png


4. Create Oauth Entity Profile Scopes as below and map the O auth Entity.

VishalJawalka1_1-1665651679663.png

 

a. 
OAuth scope: "https://outlook.office.com/IMAP.AccessAsUser.All"

b. 
OAuth scope: "https://outlook.office.com/SMTP.Send"

c. 
OAuth scope: "offline access"

5. This should create Oauth Entity Profile, make sure Oauth Entity profiles also have the above scope mapped.

VishalJawalka1_2-1665651731201.png

 

6. Create Email accounts Selection type as SMTP <> user connection security as STARTTLS (this is for email sending )

VishalJawalka1_3-1665651907803.png

 

7. Create email accounts Selection type as IMAP <> connection security as SSL/TLS ( this is for receiving )

VishalJawalka1_4-1665652001067.png

 

8. Before clicking on Authorize Email account access, please open a browser in incognito mode and then apply. This should open a MS SSO window where you enter credentials of the mailbox you are trying to authorize

note : Failing to do so or if your authentication passes without an MS SSO window, please understand that your account has been validated instead of the mailbox.

9. once your mailbox account is validated with MS, your tokens will be refreshed.

10. in case of any errors please grant permissions to mailbox, validate email diagnostics and check if sender and reader jobs are properly running.

note:

for SMTP : once configured, you will have to use your mailbox when authorizing the access, better to use incognito mode. This will allow the you to enter the mailbox credentials and create authentication

 

for IMAP: please follow the above, and also check if the mailbox has IMAP scope set up, get the O365 admin to validate and enable the IMAP scope, this should fix receiving issues as the Email reader will start reading emails from your Mailbox.


We do have a KB article : KB0816072 for reference, however it does not give the details on how to set up correctly.

 

28 REPLIES 28

Community Alums
Not applicable

Did you try with the url outlook.office365.com instead of smtp.office365.com ?

Hi @Community Alums, thank you for the reply, yes we have tried that but still get the error. 
Any other ideas on what it could be?

I take a look here and we have a SMTP working with OAuth.

server: smtp.office365.com

Coonection security: STARTTLS

Port: 587

 

Did you mark the enable debug and check the logs?

 

 

I have double checked again and everything is set up the same, with 

- Server: smtp.office365.com

- Connection security: STARTTLS

- Port: 587

- Debugging enabled

 

I hope you dont mind, I have sent you a personal message too, where I have provided more info - if you are happy to take a look and provide your thoughts and support that would be much appreciated.

 

was on vacation sure we can take a look.